Erreur 429 avec INET

geof65 Messages postés 4 Date d'inscription mercredi 13 octobre 2004 Statut Membre Dernière intervention 30 juin 2008 - 26 juin 2008 à 17:23
geof65 Messages postés 4 Date d'inscription mercredi 13 octobre 2004 Statut Membre Dernière intervention 30 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

6 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
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)
0
geof65 Messages postés 4 Date d'inscription mercredi 13 octobre 2004 Statut Membre Dernière intervention 30 juin 2008
27 juin 2008 à 09:13
Sinon, cela m'intéresse de savoir comment tu utilises INET.

Pour les 2 fichiers je les ai bien...

Ent fait pour l'histoire je souhaite récupérer automatiquement une liste de fichier situé sur un serveur FTP depuis windows.

Geof65
0
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
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)
0
geof65 Messages postés 4 Date d'inscription mercredi 13 octobre 2004 Statut Membre Dernière intervention 30 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é"

j'ai suivi les conseils de ce post pour résoudre le problème
http://www.vbfrance.com/codes/CONTROLE-PAS-ETE-CORRECTEMENT-LICENCIE_23175.aspx

Le premier exécutable me précise que Visual Basic 6.0 n'est pas détecté...
Alors que j'ai bien installé Visual Basic 6.0 (VB6) runtime

Merci

Geof65
0

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

Posez votre question
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
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)
0
geof65 Messages postés 4 Date d'inscription mercredi 13 octobre 2004 Statut Membre Dernière intervention 30 juin 2008
30 juin 2008 à 11:55
Cela y est, Inet fonctionne après avoir installé la dernière version de VB 2008
Quand je teste un delete par exemple cela marche bien.

mais quand j'utilise la commande suivante mais il ne se passe rien, le fichier n'est pas créé :
.Execute , "ls * V:\fichier.txt"

J'ai également testé avec
.Execute , "ls * V:\fichier.txt"


Pourtant en utilisant l'application ftp sous windows "ls * V:\fichier.txt" marche.

Geof65
0
Rejoignez-nous