TTMan
Messages postés104Date d'inscriptionlundi 17 décembre 2001StatutMembreDernière intervention12 février 2007
-
20 août 2003 à 17:45
ozar
Messages postés24Date d'inscriptionmardi 3 octobre 2000StatutMembreDernière intervention15 mai 2009
-
15 mai 2009 à 09:50
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
ozar
Messages postés24Date d'inscriptionmardi 3 octobre 2000StatutMembreDernière intervention15 mai 2009 15 mai 2009 à 09:46
En effet, j'avais omis la partie déclarative de la méthode connect qui est la suivante :
Public Function Connect(ByVal sServerName As String, _
ByVal sUserName As String, _
ByVal sPassWord As String, _
Optional ByVal bOpenPassive As Boolean = False) As Long
Concernant la méthode getFile, le flag INTERNET_FLAG_RESYNCHRONIZE n'était pas correcte puisqu'il s'agit de la gestion des attributs du fichier, c'est pourquoi il vaut mieux utiliser le flag FILE_ATTRIBUTE_NORMAL.
Voilà c'est tout, merci beaucoup pour cette DLL vraiment très pratique (à utiliser sans modération ^^)
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 14 mai 2009 à 18:05
Salut et merci de partagé.
Ta première modif doit faire partie d'une amélioration globale personnelle du projet permettant d'offrir le choix du mode PASSV (avec bOpenPassive) qui n'existait pas dans la source.
La seconde permet de s'affranchir de la mémoire tampon, oui.
ozar
Messages postés24Date d'inscriptionmardi 3 octobre 2000StatutMembreDernière intervention15 mai 2009 14 mai 2009 à 16:37
Bonjour,
J'ai corrigé quelques erreurs concernant deux méthodes :
Connect => connexion par défaut en mode actif (permet ou non au client de gérer le port de connexion)
GetFile => supression d'un flag et oblige l'API à retélécharger le fichier si déjà présent dans le cache)
Voici le code modifié :
'Connect To Server
If hOpen <> 0 Then
iFlags = INTERNET_FLAG_EXISTING_CONNECT Or IIf(bOpenPassive, INTERNET_FLAG_PASSIVE, 0)
cs_Dalton
Messages postés10Date d'inscriptionlundi 6 mai 2002StatutMembreDernière intervention13 novembre 2007 23 nov. 2005 à 11:09
Félicitation Jack, cette source est super. Jusqu'a nprésent j'utilisais l'objet Inet qui me posait de gros problème à la fermeture (très longue attente avant fermeture total du programme sur mon portable.), avec ta source, plus de problème, la fermeture est immédiate. Et de plus source très bien expliqué. Je te mets 10!
sarl_adc
Messages postés141Date d'inscriptionlundi 3 novembre 2003StatutMembreDernière intervention20 octobre 2005 17 août 2005 à 17:20
Merci pour ta source.
J'ai récupéré que quelques petits bouts pour mes besoins mais le tout a l'air pas mal.
Par contre niveau interface de ton client FTP, y'a quelques automatisations que tu pourrais faire facilement si tu devais t'en servir, du genre éviter de rentrer le nom des répertoires à la main lorsque tu navigues sur le serveur, etc...
Ca mérite quand même une super note :-)
thuillez
Messages postés32Date d'inscriptionmardi 20 juillet 2004StatutMembreDernière intervention24 août 2008 24 avril 2005 à 11:19
Oui mais je n'arrive pas a lire "TemplateFTP.vbg".
J'ai visual studio (donc visual basic) entreprise architect 7.0.
Mais vu que la *.dll est compilee je peut la lire c'est pourquoi je demandais ca.
@+
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 24 avril 2005 à 00:18
Devine poursoui j'ai fais un Zip !
thuillez
Messages postés32Date d'inscriptionmardi 20 juillet 2004StatutMembreDernière intervention24 août 2008 23 avril 2005 à 17:33
je n'y comprend pas grand chose mais est ce que quelqu'un a un petit exemple (ouvrir le serveur, lister les fichiers et pouvoir en ajouter)
Merci !
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 4 avril 2005 à 19:13
Salut NeoMetaller
D'apès ce que j'ai pu trouvé sur cette erreur, il smble que cela vienne d'une incompatibilité de langue.
Est ce que ton Excel (ou autre) est un US ?
Car dans ce cas, la DLL compilée ici en FR peut poser problème.
Deux solutions :
- Recompiler la DLL avec ton VB6 US
- Utiliser les classes/modules de la DLL directement dans ton VBA : Voir réponse à Mercury ci-dessus + dans l'éditeur de macro de VBA, dans la fenêtre qui liste les feuilles : Click-droit Insertion Module puis Module de Classe
à cette instruction, VBA plante et me met une erreur 50002 sans plus !!
une idée ??
azehaf
Messages postés1Date d'inscriptionsamedi 15 novembre 2003StatutMembreDernière intervention 3 mars 2005 3 mars 2005 à 13:18
Excellent rien a dire!
Nightcourrier
Messages postés118Date d'inscriptiondimanche 12 octobre 2003StatutMembreDernière intervention28 mars 2008 19 janv. 2005 à 21:22
Super cette source !,
Ya p-e des gens d'entre vous qui pourraient me répondre j'essais de me connecter à une base de données qui est sur un serveur savez vous comment je pourrais efectuer cela ?
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 15 nov. 2003 à 16:52
>>aminert2100 : le projet de démo est là pour te répondre. Il utilise la DLL comme une DLL externe
>>Mercury : Oui, il suffit d'intégrer à ton projet la classe et le module et de dimensionner un objet Dim MonFTP as new clsTemplateFTP
cs_Mercury
Messages postés329Date d'inscriptionjeudi 3 janvier 2002StatutMembreDernière intervention 7 octobre 2005 8 sept. 2003 à 09:44
Vraiment top, ça marche impec ! 10/10
Par contre, est-il possible d'intégrer le contenu de la DLL (fichier .bas et .cls) dans un le projet exemple. J'aimerai me passer de la dll en intégrant les fonctions directement dans mon prog ? Si oui, comment ? J'ai essayé, mais j'ai des erreurs de déclarations, de type ... :-(
Merci d'avance de ta réponse.
aminert2100
Messages postés82Date d'inscriptiondimanche 15 juin 2003StatutMembreDernière intervention 8 mai 2008 7 sept. 2003 à 15:29
Merci , mais comment utiliser hConnectHandle dans u projet externe
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 28 août 2003 à 19:53
Salut Aminert2100 (quel pseudo)
hConnectHandle est une valeur de type Long qui est renvoyé par des fonctions pour s'identifier. Chaque objet (dans Windows) à un Handle.
Pour cette application et ma démo, tu verras que la variable "lConn" est utilisée à chaque fois que l'on fait appel à la DLL. C'est la valeur qu'a retourner la fonction Connect de la DLL = le fameux Handle.
Vala
aminert2100
Messages postés82Date d'inscriptiondimanche 15 juin 2003StatutMembreDernière intervention 8 mai 2008 26 août 2003 à 12:58
c koi hConnectHandle ?
TTMan
Messages postés104Date d'inscriptionlundi 17 décembre 2001StatutMembreDernière intervention12 février 2007 20 août 2003 à 17:45
Bien, c'est exactement ce que je cherchais!!! Merci!
15 mai 2009 à 09:50
http://knol.google.com/k/yann-riviere/ftp-active-and-passive-mode/6i5b6z50f82p/2#
15 mai 2009 à 09:46
Public Function Connect(ByVal sServerName As String, _
ByVal sUserName As String, _
ByVal sPassWord As String, _
Optional ByVal bOpenPassive As Boolean = False) As Long
Concernant la méthode getFile, le flag INTERNET_FLAG_RESYNCHRONIZE n'était pas correcte puisqu'il s'agit de la gestion des attributs du fichier, c'est pourquoi il vaut mieux utiliser le flag FILE_ATTRIBUTE_NORMAL.
Voilà c'est tout, merci beaucoup pour cette DLL vraiment très pratique (à utiliser sans modération ^^)
14 mai 2009 à 18:05
Ta première modif doit faire partie d'une amélioration globale personnelle du projet permettant d'offrir le choix du mode PASSV (avec bOpenPassive) qui n'existait pas dans la source.
La seconde permet de s'affranchir de la mémoire tampon, oui.
14 mai 2009 à 16:37
J'ai corrigé quelques erreurs concernant deux méthodes :
Connect => connexion par défaut en mode actif (permet ou non au client de gérer le port de connexion)
GetFile => supression d'un flag et oblige l'API à retélécharger le fichier si déjà présent dans le cache)
Voici le code modifié :
'Connect To Server
If hOpen <> 0 Then
iFlags = INTERNET_FLAG_EXISTING_CONNECT Or IIf(bOpenPassive, INTERNET_FLAG_PASSIVE, 0)
iConnHandle = InternetConnect(hOpen, _
sServerName, _
INTERNET_INVALID_PORT_NUMBER, _
sUserName, _
sPassWord, _
INTERNET_SERVICE_FTP, _
iFlags, &H0)
Dans la méthode GetFile :
bRet = FtpGetFile(hConnectHandle, _
sSourceFileWithPath, _
sDestFileWithPath, _
False, _
FILE_ATTRIBUTE_NORMAL, _
lTransferType Or INTERNET_FLAG_RELOAD, _
&H0)
23 nov. 2005 à 11:09
17 août 2005 à 17:20
J'ai récupéré que quelques petits bouts pour mes besoins mais le tout a l'air pas mal.
Par contre niveau interface de ton client FTP, y'a quelques automatisations que tu pourrais faire facilement si tu devais t'en servir, du genre éviter de rentrer le nom des répertoires à la main lorsque tu navigues sur le serveur, etc...
Ca mérite quand même une super note :-)
24 avril 2005 à 11:19
J'ai visual studio (donc visual basic) entreprise architect 7.0.
Mais vu que la *.dll est compilee je peut la lire c'est pourquoi je demandais ca.
@+
24 avril 2005 à 00:18
23 avril 2005 à 17:33
Merci !
4 avril 2005 à 19:13
D'apès ce que j'ai pu trouvé sur cette erreur, il smble que cela vienne d'une incompatibilité de langue.
Est ce que ton Excel (ou autre) est un US ?
Car dans ce cas, la DLL compilée ici en FR peut poser problème.
Deux solutions :
- Recompiler la DLL avec ton VB6 US
- Utiliser les classes/modules de la DLL directement dans ton VBA : Voir réponse à Mercury ci-dessus + dans l'éditeur de macro de VBA, dans la fenêtre qui liste les feuilles : Click-droit Insertion Module puis Module de Classe
4 avril 2005 à 17:14
à cette instruction, VBA plante et me met une erreur 50002 sans plus !!
une idée ??
3 mars 2005 à 13:18
19 janv. 2005 à 21:22
Ya p-e des gens d'entre vous qui pourraient me répondre j'essais de me connecter à une base de données qui est sur un serveur savez vous comment je pourrais efectuer cela ?
15 nov. 2003 à 16:52
>>Mercury : Oui, il suffit d'intégrer à ton projet la classe et le module et de dimensionner un objet Dim MonFTP as new clsTemplateFTP
8 sept. 2003 à 09:44
Par contre, est-il possible d'intégrer le contenu de la DLL (fichier .bas et .cls) dans un le projet exemple. J'aimerai me passer de la dll en intégrant les fonctions directement dans mon prog ? Si oui, comment ? J'ai essayé, mais j'ai des erreurs de déclarations, de type ... :-(
Merci d'avance de ta réponse.
7 sept. 2003 à 15:29
28 août 2003 à 19:53
hConnectHandle est une valeur de type Long qui est renvoyé par des fonctions pour s'identifier. Chaque objet (dans Windows) à un Handle.
Pour cette application et ma démo, tu verras que la variable "lConn" est utilisée à chaque fois que l'on fait appel à la DLL. C'est la valeur qu'a retourner la fonction Connect de la DLL = le fameux Handle.
Vala
26 août 2003 à 12:58
20 août 2003 à 17:45