Probleme doevents et inet dans vbs

Signaler
Messages postés
4
Date d'inscription
jeudi 5 juin 2003
Statut
Membre
Dernière intervention
7 décembre 2004
-
Messages postés
193
Date d'inscription
dimanche 16 décembre 2001
Statut
Membre
Dernière intervention
29 juillet 2015
-
Bonjour,
voici mon code :
set inet = createobject("InetCtls.Inet.1")

inet.requesttimeout=20

Inet.URL = "ftp://ftp.truc.fr"
Do While Inet.StillExecuting
DoEvents
loop

Inet.UserName = "USER"
Do While Inet.StillExecuting
DoEvents
loop

Inet.Password = "PASS"
Do While Inet.StillExecuting
DoEvents
loop

inet.execute , "put c:\TRANS\test.txt texte." & DAY(NOW()) & MONTH(NOW()) & YEAR(NOW())
Do While Inet.StillExecuting
DoEvents
loop

Mes 3 1er doevents se passent très bien mais celui qui se trouve apres :
inet.execute , "put c:\TRANS\test.txt texte." & DAY(NOW()) & MONTH(NOW()) & YEAR(NOW())
me renvoi une erreur "Type incompatible : doevents"
si je met un sleep meme erreur.
Quelqu'un aurait il une idée???

pinkHell %-6

4 réponses

Messages postés
193
Date d'inscription
dimanche 16 décembre 2001
Statut
Membre
Dernière intervention
29 juillet 2015

Salut,
bon je te le dis tout de suite, je programme pas en vbs mais en vb tout cours...
sinon tes 3 premières boucles ne servent à rien; inet ne réagit pas quand tu modifie ces valeurs (url, usermane, password). Bon ensuite peut-être qu'il y a confusion pour "inet" car c'est le type du controle et en même temps son nom. Appelle ton controle inet1 pour essayer.
Si c'est pas ça, je vois pas du tout car dans un module de téléchargement sur FTP que j'ai c'est comme ça qu'il faut faire (avec une boucle après inet.execute)
Messages postés
193
Date d'inscription
dimanche 16 décembre 2001
Statut
Membre
Dernière intervention
29 juillet 2015

je viens juste d'y penser: peut-être qu'en vbs tu ne peux pas utiliser le doevents.
Je m'explique. En fait dans ta source il n'y a qu'un seul doevents qui est exécuté: le dernier (si tu ne me crois pas, lance ton projet en debug pas à pas et tu verras) car les conditions des autres ne sont pas "vrai" (le do while...) donc il passe au dessus.

Voilà, c'est ce que je pense mais vu l'erreur, peut-être ailleurs dans ton code tu aurais déclaré des choses qui ne faut pas...

Bonne chance ;)
Messages postés
4
Date d'inscription
jeudi 5 juin 2003
Statut
Membre
Dernière intervention
7 décembre 2004

Merci pour ta réponse,
j'ai cherché un peu plus et il est vrai que le doevents ne fonctionne pas en vbs. Le sleep est sensé fonctionner lui avec la syntaxe suivante : "Wscript.Sleep".
Mon probleme est que ce code ne se trouve pas dans un scripts vbs mais dans une tache de script activeX situé dans un lot MSQL SERVER. Quelqu'un aurait t'il déja trouver une solution pour avoir un équivalent a doevents dans un lot DTS?

pinkHell %-6
Messages postés
193
Date d'inscription
dimanche 16 décembre 2001
Statut
Membre
Dernière intervention
29 juillet 2015

juste encore un petit truc: la fonction sleep (l'api en vb tout court) fait bien une pause d'un certains nombre de millisecondes mais en même temps il gêle le prog donc c'est pas adapté à ta fonction. Pour le reste, je peux pas t'aider plus; je connais rien en sql

--------------------------------------------------------------------------------
Parrainage pour Prizee (gagner de l'argent), un clic n'engage à rien.
http://www.prizee.com/?refer=Benoitp59