Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

TÉLÉCHARGEMENT DE FICHIER VIA ISXDL.DLL


Information sur la source

Catégorie :API Classé sous : isxdl, télécharger, téléchargement, internet, fichier Niveau : Débutant Date de création : 21/07/2006 Date de mise à jour : 21/07/2006 19:57:44 Vu / téléchargé: 9 213 / 1 414

Note :
9,75 / 10 - par 4 personnes
9,75 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (11)
Ajouter un commentaire et/ou une note


Description

Cliquez pour voir la capture en taille normale
Explication de fonctionnement de la DLL isxdl.dll qui permet de télécharger très simplement des fichiers sur le web. Cette DLL n'est pas de moi, elle vient du site www.istool.org. Avec www.innosetup.com (et istool), vous pourrez concevoir des install très simplement. Mais je n'ai pas mis une source pour dire ça.
Vous trouverez ci-dessous les API relatives à cette dll. Et elle est dans le zip avec une version française (que j'ai fais) car je n'arrive pas à utiliser la fonction "language"!

Il faut mettre ce code dans un module. Et la DLL dans windows, system32.
Note: Ici j'utilise la version française de la dll, si vous la voulez en anglais (j'en doute) remplacez simplement isxdl_fr.dll par isxdl.dll!!!!
 

Source

  • 'isxdl.dll : DLL permettant de télécharger des fichiers sur le web (ou réseau local?! => pas testé)
  • 'La DLL provient de ISTool , logiciel gratuit servant (avec Inno Setup, gratuit) à faire des programmes d'installation professionnels entièrement paramétrable
  • 'www.istool.org
  • 'www.innosetup.com
  • '
  • 'source déposée sur www.vbfrance.com par Tioneb
  • 'allez voir le tuto de Zlub pour voir comment fonctionne inno setup
  • 'http://www.vbfrance.com/tutorial.aspx?ID=238
  • '
  • '
  • 'télécharge directement un fichier, URL c'est ce qu'il DL et filename c'est le chemin complet où il faut le mettre
  • 'retourne 1 si fichier DL sinon 0
  • Public Declare Function isxdl_Download Lib "isxdl_fr.dll" (ByVal ihWnd As Long, ByVal strURL As String, ByVal strFilename As String) As Integer
  • 'ajoute un fichier dans la liste de ce qu'il faudra DL
  • Public Declare Function isxdl_AddFile Lib "isxdl_fr.dll" (ByVal strURL As String, ByVal strFilename As String)
  • 'comme ci-dessus mais en ajoutant la taille du fichier (faut qu'elle soit juste) => je trouve que ça sert à rien!
  • Public Declare Function isxdl_AddFileSize Lib "isxdl_fr.dll" (ByVal strURL As String, ByVal strFilename As String, ByVal lngSize As Long)
  • 'télécharge tous les fichiers de la liste actuelle
  • 'retourne 1 si tout les fichiers sont DL, sinon 0
  • Public Declare Function isxdl_DownloadFiles Lib "isxdl_fr.dll" (ByVal ihWnd As Long) As Integer
  • 'efface le contenu de la liste en cours
  • Public Declare Sub isxdl_ClearFiles Lib "isxdl_fr.dll" ()
  • 'teste si une connexion internet est présente; retourne 1 si oui, sinon 0
  • Public Declare Function isxdl_IsConnected Lib "isxdl_fr.dll" () As Integer
  • 'Paramètre les options
  • 'Avec pour options:
  • '
  • 'title = titre de la fenêtre
  • 'simple = fenêtre de téléchargement simple si valeur n'est pas vide (dans ce cas elle sera inscrite dans la fenêtre)
  • 'label = Texte de la première ligne (celle en gras)
  • 'description = celle qui est juste en dessous!
  • 'language = permet de spécifier un fichier de langage (marche pas chez moi)
  • 'resume = permet d'utiliser le "resume"! (marche pas chez moi)
  • 'smallwizardimage = permet de spécifier un fichier (chemin complet) image différent (vérifier si c'est à la bonne taille!)
  • '
  • 'retourne 1 si l'option est bien prise en compte, et 0 si l'option est inconnue ou si elle n'a pas pu être affectée
  • Public Declare Function isxdl_SetOption Lib "isxdl_fr.dll" (ByVal strOption As String, ByVal strValue As String) As Integer
  • 'retourne le véritable nom d'un téléchargement (utile quand le liens pour DL un fichier pointe vers une page qui lance le DL)
  • Public Declare Function isxdl_GetFileName Lib "isxdl_fr.dll" (ByVal strRL As String) As String
'isxdl.dll : DLL permettant de télécharger des fichiers sur le web (ou réseau local?! => pas testé)
'La DLL provient de ISTool , logiciel gratuit servant (avec Inno Setup, gratuit) à faire des programmes d'installation professionnels entièrement paramétrable
'www.istool.org
'www.innosetup.com
'
'source déposée sur www.vbfrance.com par Tioneb
'allez voir le tuto de Zlub pour voir comment fonctionne inno setup
'http://www.vbfrance.com/tutorial.aspx?ID=238
'
'
'télécharge directement un fichier, URL c'est ce qu'il DL et filename c'est le chemin complet où il faut le mettre
'retourne 1 si fichier DL sinon 0
Public Declare Function isxdl_Download Lib "isxdl_fr.dll" (ByVal ihWnd As Long, ByVal strURL As String, ByVal strFilename As String) As Integer

'ajoute un fichier dans la liste de ce qu'il faudra DL
Public Declare Function isxdl_AddFile Lib "isxdl_fr.dll" (ByVal strURL As String, ByVal strFilename As String)

'comme ci-dessus mais en ajoutant la taille du fichier (faut qu'elle soit juste) => je trouve que ça sert à rien!
Public Declare Function isxdl_AddFileSize Lib "isxdl_fr.dll" (ByVal strURL As String, ByVal strFilename As String, ByVal lngSize As Long)

'télécharge tous les fichiers de la liste actuelle
'retourne 1 si tout les fichiers sont DL, sinon 0
Public Declare Function isxdl_DownloadFiles Lib "isxdl_fr.dll" (ByVal ihWnd As Long) As Integer

'efface le contenu de la liste en cours
Public Declare Sub isxdl_ClearFiles Lib "isxdl_fr.dll" ()

'teste si une connexion internet est présente; retourne 1 si oui, sinon 0
Public Declare Function isxdl_IsConnected Lib "isxdl_fr.dll" () As Integer

'Paramètre les options
'Avec pour options:
'
'title = titre de la fenêtre
'simple = fenêtre de téléchargement simple si valeur n'est pas vide (dans ce cas elle sera inscrite dans la fenêtre)
'label = Texte de la première ligne (celle en gras)
'description = celle qui est juste en dessous!
'language = permet de spécifier un fichier de langage (marche pas chez moi)
'resume = permet d'utiliser le "resume"! (marche pas chez moi)
'smallwizardimage = permet de spécifier un fichier (chemin complet) image différent (vérifier si c'est à la bonne taille!)
'
'retourne 1 si l'option est bien prise en compte, et 0 si l'option est inconnue ou si elle n'a pas pu être affectée
Public Declare Function isxdl_SetOption Lib "isxdl_fr.dll" (ByVal strOption As String, ByVal strValue As String) As Integer

'retourne le véritable nom d'un téléchargement (utile quand le liens pour DL un fichier pointe vers une page qui lance le DL)
Public Declare Function isxdl_GetFileName Lib "isxdl_fr.dll" (ByVal strRL As String) As String

Conclusion

Dans mes tests, je n'ai pas réussi à faire fonctionner le "job liste" (télécharger plusieurs fichiers à la suite); j'ai une erreur: erreur d'appel de procédure et je ne vois pas d'où ça vient.

Si j'ai oublié quelque chose, dites le moi et laissez des commentaires


 

Fichier Zip

Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

Historique

21 juillet 2006 19:57:44 :
J'ai oublié de dire que j'ai joint quelques images de rechange. C'est celles fournies avec inno setup!

Commentaires et avis

signaler à un administrateur
Commentaire de IApplication le 21/07/2006 20:36:37

Est-ce que la fonction AddFileSize ne serait pas utile dans le cas où le serveur n'envoie pas la taille du fichier dans l'header ?
Internet Explorer, par exemple, affiche "Ouverture du fichier" à la place de "Téléchargement" (car il ne connait pas la taille du fichier).

Source très utile pour ceux qui voudraient finir l'installation de leur logiciels après son lancement.

signaler à un administrateur
Commentaire de Tioneb le 21/07/2006 22:17:24

Oui, tu dois avoir raison. Mais as-tu réussi à faire fonctionner le "addfile"? Si oui, comment?

signaler à un administrateur
Commentaire de DragonDo le 22/07/2006 22:11:20

J'ai trouvé une source (beaucoup plus ancienne que la tienne) sur http://www.vbdiamond.com/ViewSource.aspx?Type=VB&ID=128149. L'auteur semble utilise le resume et le addfile (je ne m'y suis pas encore penché). Je pense que ça peut nous éclaircir

Bonne prog

signaler à un administrateur
Commentaire de DragonDo le 22/07/2006 23:06:46

Pour télécharger plusieurs fichiers à la suite :
isxdl_AddFile url\Monfic1,path\monfic1
isxdl_AddFile url\Monfic2,path\monfic2
isxdl_AddFile url\Monfic3,path\monfic3
isxdl_AddFile url\Monfic4,path\monfic4
Puis
isxdl_DownloadFiles(me.hwnd)
---------------------------------------------------
En fait le resume fonctionne lorsque tu télécharges plusieurs fichiers à la suite. Si en cours de téléchargement tu lui dis d'arrêter, le fait de refaire un isxdl_DownloadFiles(me.hwnd) recharge le fichier sur lequel tu as stoppé ou sur le fichier suivant.
---------------------------------------------------
Dans tous les cas merci pour ta source. Même si j'ai essentiellement regardé et testé la classe de frigginjerk à l'adresse http://www.vbdiamond.com/ViewSource.aspx?Type=VB&ID=128149
---------------------------------------------------

Bonne prog @ tous

signaler à un administrateur
Commentaire de Tioneb le 23/07/2006 10:57:13

J'ai trouvé l'erreur avec l'API AddFile. Il faut ajouter à la fin de l'api "as long", ce qui donne:
Public Declare Function isxdl_AddFile Lib "isxdl_fr.dll" (ByVal strURL As String, ByVal strFilename As String) As Long
Et idem pour addfilesize. Par contre le résume je n'y arrive toujours pas. Mais bon, pour moi, le plus important c'est de pouvoir DL plusieurs fichiers à la suite.

@+

signaler à un administrateur
Commentaire de djpunk le 20/11/2006 15:11:04

Bizarre je n'arrive pas récupérer le nom de fichier d'une URL avec la fonction isxdl_GetFileName()

Quelqu'un peut m'aider?

signaler à un administrateur
Commentaire de akella le 24/03/2007 00:20:26

eisseit de remplacer la ligne par sa : Public Declare Function isxdl_GetFileName Lib "isxdl_fr.dll" (ByVal strURL As String) As String

je crois que il manquais le U de URL

signaler à un administrateur
Commentaire de DeepestNight le 08/05/2007 20:16:27

Merci beaucoup pour ce code. Il est vraiment partique & très utile.

signaler à un administrateur
Commentaire de TITOMBOSS le 30/05/2007 08:30:29

Genial et trés pratique, mais esce possible de déclarer cette dll dans vb2005 ?
10/10

signaler à un administrateur
Commentaire de Renfield le 30/05/2007 08:40:39 administrateur CS

oui, bien sur, en utilisant les bons types...

signaler à un administrateur
Commentaire de vbmarh le 21/09/2007 02:00:20

salut si vous essayer de nous livrer une source ca seras genial
sans source sur vbfr c pas l habitude chez nous aller merci en tout cas

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

Téléchargement de Fichier [ par Nowid50 ] Bonjour,Je suis en ce moment sur un petit programme qui met à jour un programme à partir de petits scripts simples. J'ai tout programmé, mais je ne tr téléchargement + plantage [ par Claiyah ] bonjourS.V.P j'ai une fonction qui sert à télécharger un fichier à partir d'un site, le fichier à télécharger est un peut volumineux,le téléchargement Téléchargement d'un zip... [ par Florian29 ] Salut!Voila j'aimerai télécharger un fichier zip (qui en fait contient les définitions de virus de PC-Cilin, donc je voudrai pouvoir le télécharger fr Téléchargement simple [ par PsykotropyK ] Bonjour, j'ai deux trois questions a poser car les tutoriaux que j'ai vu, soit je les comprends pas (lol) soit ils marchent pas (relol) Donc déj lenteur d'internet et d'ouverture de fichier du pc [ par michel592 ] bonjour ,actuellemnt j'ai un ordi sous xp,mais depuis 1semaine environ l'ouverture des pages internet et des fichiers de mon ordi sont long a s'ouvrir systeme de mise a jour [ par kenitecfab ] bonsoirj'aimerai concevoir un systeme de mise à jour (comme le windows update sous xp)language utilisé : vb6voila en faite , j'aimerai que le systeme Fenetre téléchargement [ par sebtralalaetph ] Bonjour à tous    Je souhaiterai dans une application faire apparaitre la fenetre de téléchargement de fichier qui me permettrai de p WebClient.DownloadFileAsync - Téléchargement simultanné d'un fichier de plusieurs postes [ par Simeoni ] Bonjour,Je souhaiterai savoir comment il serait possible de téléchargervia plusieurspostes, un fichier simultanément ? Merci pour votre aide. fichier télécharger [ par masimo23 ] Comment faire pour mettre le fichier télécharger : http://www.vbfrance.com/code.aspx?ID=38765 merci de me répondre au plus vite svp


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,515 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.