geof65
Messages postés4Date d'inscriptionmercredi 13 octobre 2004StatutMembreDernière intervention30 juin 2008
-
26 juin 2008 à 17:23
geof65
Messages postés4Date d'inscriptionmercredi 13 octobre 2004StatutMembreDernière intervention30 juin 2008
-
30 juin 2008 à 11:55
Bonjour,
J'ai un problème d'erreur 429 :
"Un composant ActiveX ne peut pas créer l'objet ou fournir une référence à cet objet"
Je sais plus quoi faire, j'ai essayé de toucher aux références mais c'est toujours pareil ...
Mon code est le suivant :
Private Sub Workbook_Open()
Dim Inet1 As Object
Set Inet1 = CreateObject("InetCtls.Inet.1")
With Inet1
.Protocol = icFTP
.RequestTimeout = 60
.RemotePort = 21
.AccessType = icUseDefault
.URL = "ftp://blabla"
.UserName = "blabla"
.Password = "blabla"
.Execute , "ls * V:\fichier.txt"
End With
End Sub
Merci
A voir également:
Erreur 429 un composant activex ne peut pas créer d'objet
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 26 juin 2008 à 17:44
Salut
Je n'ai jamais utilisé Inet comme celà.
Essaye de regarder/vérifier que tu as bien, sous %WinDir%\System32, des fichiers qui ressemblent à MSInet.OCX ou WinInet.DLL (je ne sais pas lequel des deux il utilise dans cette syntaxe)
Est-ce que ton programme (ou un autre utilisant la même technique) a déjà fonctionné sur cette machine ?
Pour info :
Tu t'adresses à un serveur FTP.
Dans la commande que tu lui envoies, tu précises "V:\..."
Sous FTP, il n'y a pas de notion de lettrage.
Cette syntaxe est réservée aux racourcis UNC de Windows.
Si, dans ton explorateur de fichiers, tu as un racourci UNC attribué à V, pas la peine de t'y adresser par FTP, tu dois pouvoir le lire (et éventuellement l'écrire) comme un répertoire local.
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)
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 27 juin 2008 à 10:17
Salut
Sous Excel par exemple :
- j'ouvre l'éditeur de code VB
- je crée une UserForm
- je vais dans le menu Outils, Contrôlkes supplémentaires
- je sélectionne "Microsoft Internet Control 6.0" = fichier MSInet.OCX
- Je récupère une icone dans la barre d'outil que je fais glisser sur ma UserForm
- et dans le code, exemple : Inet1.Execute "la commande"
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)
geof65
Messages postés4Date d'inscriptionmercredi 13 octobre 2004StatutMembreDernière intervention30 juin 2008 27 juin 2008 à 11:03
je crois que je vais pas m'en sortir là .. en suivant ta manip Jack j'ai un problème de licence : "Le contrôle n'a pas été crée parce qu'il n'est pas correctement licencié"
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 27 juin 2008 à 18:17
Re
Si tu as le fichier MSinet.OCX, peut être n'a t-il pas été correctement enregistré dans la base de registres (licencié).
Pour le faire :
- Ouvre une fenêtre DOS : Démarrer, Exécuter, "cmd" + Ok
- Dans la fenêtre noire qui apparait, tape
CD %WinDir%\System32
- Ensuite, lance l'enregistrement :
RegSvr32 MSinet.ocx
C'est tout
Une fois fait, je pense que ta précédente méthode de "CreateObject" pourra fonctionner.
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)