browser64
Messages postés112Date d'inscriptiondimanche 24 avril 2005StatutMembreDernière intervention 5 décembre 2010
-
8 déc. 2006 à 20:54
browser64
Messages postés112Date d'inscriptiondimanche 24 avril 2005StatutMembreDernière intervention 5 décembre 2010
-
9 déc. 2006 à 11:16
Bonjour,
Sur le code "voir ci-dessous" je souhaiterai que l'image que je télécharge "http://www.Mon entreprise/logos/Pictogramme.jpg" se mette dans le dossier "\ Liens Url" de mon Windows.
Peut t-on me corriger ce code ? Ou se trouve l'erreur ??
MERCI
Private Declare Function GetWindowsDirectory Lib "kernel32" Alias "GetWindowsDirectoryA" (ByVal lpBuffer As String, ByVal nSize As Long) As Long
Private Declare Function URLDownloadToFile Lib "urlmon" Alias "URLDownloadToFileA" (ByVal pCaller As Long, ByVal szURL As String, ByVal szFileName As String, ByVal dwReserved As Long, ByVal lpfnCB As Long) As Long
Private Sub Form_Load()
Const sUrl As String = "http://www.Mon entreprise/logos/Pictogramme.jpg"
Dim result As Long
Dim Buffer As String
Dim Size As Long
Size = GetWindowsDirectory(vbNullString, 0)
Buffer = String(Size, " ")
Size = GetWindowsDirectory(Buffer, Size)
Buffer = Left(Buffer, Size)
If LCase(App.Path) = Buffer Then
If App.PrevInstance = True Then End
End If
sDest = Buffer & Mid$(sUrl, 1 + InStrRev(sUrl, Buffer & "\ Liens Url\Logo.jpg"))
If URLDownloadToFile(0&, Buffer & sUrl, B, 0&, 0&) = 0 Then
End If
End Sub
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 9 déc. 2006 à 09:03
ben ca te parait pas évident ?
Tu dois bien te douter quand même que ton répertoire de destination n'est pas le bon, et du coup, que ton algorithme de récupèration du path de ton fichier de destination n'est pas bon...
Il suffit pas de copier coller un code pour que ca marche, il faut également le comprendre...
La fonction InStrRev permet de rechercher l'occurence d'une chaîne dans une autre à l'envers, du coup, ton :
Il va chercher Buffer & "\ Liens Url\Logo.jpg" dans ton sUrl, et il risque pas le trouver !
et du coup, ton sDest = Buffer & sUrl ! et non ton path windows + "\Liens Url\Logo.jpg" comme je pense que tu cherche à faire !
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 9 déc. 2006 à 09:52
C'est pourtant vraiment pas compliqué : tu lis la doc de InStrRev, et tu trouve la solution direct !
Bon allez, comme c'est le week-end et que je suis de bonne humeur, je te donne la solution, mais essaye au moins de comprendre ce qui ne marchait pas, et comprendre la solution que je te donne, sinon ca te servira à rien.
Private Declare Function GetWindowsDirectory Lib "kernel32" Alias "GetWindowsDirectoryA" (ByVal lpBuffer As String, ByVal nSize As Long) As Long
Private Declare Function URLDownloadToFile Lib "urlmon" Alias "URLDownloadToFileA" (ByVal pCaller As Long, ByVal szURL As String, ByVal szFileName As String, ByVal dwReserved As Long, ByVal lpfnCB As Long) As Long
Private Sub Form_Load()
Const sUrl As String = "http://www.Mon entreprise/logos/Pictogramme.jpg"
Dim result As Long
Dim Buffer As String
Dim Size As Long
browser64
Messages postés112Date d'inscriptiondimanche 24 avril 2005StatutMembreDernière intervention 5 décembre 2010 9 déc. 2006 à 10:56
Re :
J'ai parlé trop vite..........le code marche pas ca ne telecharge pas, j'ai mis sur le code "voir code-dessous" à titre d'exemple et pour essai le lien de telechargement suivant......http://www.vbfrance.com/gfx/logos/logovb.gif
Ou est l'erreur ?
MERCI
Private Declare Function GetWindowsDirectory Lib "kernel32" Alias "GetWindowsDirectoryA" (ByVal lpBuffer As String, ByVal nSize As Long) As Long
Private Declare Function URLDownloadToFile Lib "urlmon" Alias "URLDownloadToFileA" (ByVal pCaller As Long, ByVal szURL As String, ByVal szFileName As String, ByVal dwReserved As Long, ByVal lpfnCB As Long) As Long
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 9 déc. 2006 à 11:07
Tu vois bien que tu n'essaye pas de comprendre ce que je te mets, et que tu applique bêtement le code trouvé ici et là, ce n'est pas comme cà que tu apprendra !
browser64
Messages postés112Date d'inscriptiondimanche 24 avril 2005StatutMembreDernière intervention 5 décembre 2010 9 déc. 2006 à 11:16
Re :
Effectivement, je suis un Sith trop pressé maitre Sidious !
Oui, pour """Call URLDownloadToFile(0, sUrl, sdest, 0, 0)""" c'est logique !! on appelle l'api pour telecharger l'url et ca se loge dans le chemin de destination !
J'ai du prendre un mauvais coup de sabrolaser !