Urgent aide insertion d'un pdf

mohamedt21 Messages postés 11 Date d'inscription vendredi 6 mars 2009 Statut Membre Dernière intervention 13 août 2009 - 22 mars 2009 à 01:31
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 - 26 mars 2009 à 18:00
bonjour

svp j'aimerai bien savoir le code qui permet de stocker  un  PDF dans une base de donnée SQL serveur et de le afficher par la suite via une interface vb.net j'espere avoir la reponses le plus proche possible merci d'avance

15 réponses

cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
22 mars 2009 à 03:49
Re
Je t'ai déjà répondu.
On ne va pas te faire ton code.
Fais des essais toi même à partir des codes du site et reviens poser de vraies questions techniques

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

<hr />Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
22 mars 2009 à 07:57
utilises un BLOB
0
mohamedt21 Messages postés 11 Date d'inscription vendredi 6 mars 2009 Statut Membre Dernière intervention 13 août 2009
22 mars 2009 à 21:14
Bonjour

désoler le problème c'est que j'ai aucune aidée technique pour que je puisse essayer le code
t'as me dis que le principe c'est le meme que l'insertion d'image donc voila le code que j'ai essayé pour l'insertion d'image et a toi de me préciser les modifications à effectuer pour insérer un PDF

déclaration (code générale)
Dim conn AsNew SqlConnection("data source=.;initial catalog='application_evaluation';integrated security=yes")



Dim
cmd

As



New
SqlCommand




Dim
Idclient_

As



New
SqlParameter(

"@idclient"
, SqlDbType.Int)




Dim
Nom_

As



New
SqlParameter(

"@Nom"
, SqlDbType.VarChar, 30)




Dim
salaire_

As



New
SqlParameter(

"@salaire"
, SqlDbType.Float)




Dim
logo_

As



New
SqlParameter(

"@logo"
, SqlDbType.Image)




Dim
picture

As
Image




Dim
reader

As
SqlDataReader





Public



Const
maxvalue

As



Long
= 300000




Dim
row

As
DataRow




Dim
pos

As



Integer




------------------------------------------------------------------------------------------------
le code de l'ajout

Private

Sub Ajouter_Click(
ByVal sender
As System.Object,
ByVal e
As System.EventArgs)
Handles Ajouter.Click

Tryconn.Open()

cmd =

New SqlCommand(
"Ajout")cmd.Connection = conn

cmd.CommandType = CommandType.StoredProcedure

direction_parameters()
Idclient_.Value Me.Idclient.TextNom_.Value

Me.Nom.Textsalaire_.Value =

CType(
Me.Salaire.Text,
Double)

Dim h
As
New MemoryStream

Dim v()
As
Bytepicture =

Me.PictureBox1.BackgroundImagepicture.Save(h, Imaging.ImageFormat.Jpeg)

v = h.GetBuffer

logo_.Value = v

ajouter_parameters_commandes()

Dim i
As
Integeri = cmd.ExecuteNonQuery()

If i = 0
ThenMsgBox(

"ce client existe d‚j…")

ElseVider_Click(sender, e)

MsgBox(

"Ajout termin‚ avec succŠs")

End
Ifconn.Close()

cmd.Parameters.Clear()

cmd =

Nothing

Catch ex
As ExceptionMsgBox(ex.Message)

conn.Close()

cmd.Parameters.Clear()

cmd =

Nothing

End
Try

End
Sub
-----------------------------------------------------------------

Sub ajouter_parameters_commandes()cmd.Parameters.Add(Idclient_)

cmd.Parameters.Add(Nom_)

cmd.Parameters.Add(salaire_)

cmd.Parameters.Add(logo_)

End
Sub
-----------------------------------------------------------------
Sub direction_parameters()Idclient_.Direction = ParameterDirection.Input

Nom_.Direction = ParameterDirection.Input

salaire_.Direction = ParameterDirection.Input

logo_.Direction = ParameterDirection.Input

End
Sub

le changement que je veux c 'est a la place de l'image j'aimerai stocker un fichier PDF

merci et désoler pour le dérangement
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
22 mars 2009 à 23:19
t'as pas regardé les BLOB ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
mohamedt21 Messages postés 11 Date d'inscription vendredi 6 mars 2009 Statut Membre Dernière intervention 13 août 2009
22 mars 2009 à 23:29
non c'est quoi les BLOB ?
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
23 mars 2009 à 06:37
cool, je te file une piste, tu fouine pas plus loin...

c'est un type de champ pour stocker des données volumineuses

http://msdn.microsoft.com/fr-fr/library/ms131277.aspx

http://www.commentcamarche.net/forum/affich-52958-qu-est-ce-qu-un-blob-en-sql-ou-mysql

on peut d'ailleus y lire :

"L'appellation BLOB peut être différente d'un serveur à l'autre (par exemple sous Microsoft SQL Server, les champs BLOB sont de type BINARY ou IMAGE). "

traduction:
le code soumis par Jack colle tout a fait...

Dim logo_ As New SqlParameter( "@logo" , SqlDbType.Image)
Dim h AsNew MemoryStream
Dim v() AsByte
picture =

Me.PictureBox1.BackgroundImage
picture.Save(h, Imaging.ImageFormat.Jpeg)

v = h.GetBuffer

logo_.Value = v



te faut juste placer ton pdf dans un tableau de byte()


des exemples
http://msdn.microsoft.com/fr-fr/library/4f5s1we0(VS.80).aspx



tu t'es laissé abusé par le terme SqlDBType.Image
pourtant, la doc indique:
http://msdn.microsoft.com/fr-fr/library/system.data.sqldbtype(VS.80).aspx

Image Array de type Byte. Flux de données binaires de longueur variable comptant entre 0 et 2 31 -1 (ou 2 147 483 647) octets.



parfait, donc, pour y stocker ton fichier pdf.


pour un topic marqué urgent, je trouve que Jack et moi même t'avons donné toutes les pistes, rapidement.
le tout était que tu te mettes au boulot de ton coté, a approfondir la doc MSDN ; les technologies microsoft on cet avantage que tout la doc est dispo en ligne.
0
mohamedt21 Messages postés 11 Date d'inscription vendredi 6 mars 2009 Statut Membre Dernière intervention 13 août 2009
24 mars 2009 à 01:05
bonjour
merci pour les infos mais j'ai pas compris comment placer le pdf dans un tableau de byte() j'utilise un openfiledialog avec une zone de text dont j'affiche le filename du fichier
pouvez vous modifier cette partie

picture = Me.PictureBox1.BackgroundImage
picture.Save(h, Imaging.ImageFormat.Jpeg)

v = h.GetBuffer

logo_.Value = v

par le code valide pour mon exemple (pour que je puisse enregistrer le pdf a la place de l'image )

merci
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
24 mars 2009 à 06:38
http://msdn.microsoft.com/fr-fr/library/system.io.filestream.read.aspx






Renfield





Admin CodeS-SourceS

- MVP Visual Basic
0
mohamedt21 Messages postés 11 Date d'inscription vendredi 6 mars 2009 Statut Membre Dernière intervention 13 août 2009
25 mars 2009 à 00:15
salut

Svp j'aimerai savoir comment je peux afficher un fichier dés que je clique sur un lien ou bien un button dans m'application windows
j'ai essayé le code suivant mais il m'affiche un msg fichier introuvable

Dim processOpenPDF As New Process
processOpenPDF.StartInfo.FileName = "c:\rep.pdf"
processOpenPDF.Start()

                                                                   Merci
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
25 mars 2009 à 08:24
Process.Start "c:\rep.pdf"

ne suffit pas ?
0
mohamedt21 Messages postés 11 Date d'inscription vendredi 6 mars 2009 Statut Membre Dernière intervention 13 août 2009
25 mars 2009 à 17:09
si il suffit  lorsque j'affecte au process .start un chemain quelconque d'un fichier il l'affiche mais lorsque je copie un fichier vers un autre dossier ( System.IO.File.Copy(t2.Text,
"c:\image" & chem &
".pdf")
 ) j'affecte le nouveau chemain de fichier copie ou process.start apres un message fichier introuvable s'affiche !! donc ou est le probleme ?
                                         
                             Merci
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
25 mars 2009 à 21:22
quoi ???

quel code utilises tu ?

Renfield
Admin CodeS-SourceS- MVP Visual Basic
0
mohamedt21 Messages postés 11 Date d'inscription vendredi 6 mars 2009 Statut Membre Dernière intervention 13 août 2009
25 mars 2009 à 22:22
le but de m'application c'est que j'aimerai copie un fichier depuis son emplacement réel vers un dossier que je précise dans mon code le probleme c 'est que lorsque j'execute process.start("c:\neuveau dossier que j'ai précisé dans le code\nom de fichier.pdf") un message d'erreur fichier introuvable s'affiche sachant que le fichier copier s'existe dans le nouveau dossier et si j'affecte au process.srat un chemain quelconque vers un fichier non copier dans un autre emplacement le fichier s'ouvre sans probleme.

le code que j'ai utilisé pour copie un fichier le suivant

System.IO.File.Copy(t2.Text, "c:\image" & chem & ".pdf")

t2.text contient le chemain de fichier source extrait par OpenFileDialog.filename
 s'il y a d'autre maniere j'aimerai bien la savoir Merci
0
mohamedt21 Messages postés 11 Date d'inscription vendredi 6 mars 2009 Statut Membre Dernière intervention 13 août 2009
26 mars 2009 à 17:05
est ce qu'il y a d'autres utilitaires pour ouvrire un fichier pdf par exemple que process.start() ??????
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
26 mars 2009 à 18:00
pourquoi ?

System.IO.File.Copy(t2.Text, "c:\image" & chem & ".pdf")

Process.Start("c:\image" & chem & ".pdf")

devrait fonctionner...

Renfield
Admin CodeS-SourceS- MVP Visual Basic
0
Rejoignez-nous