VSB execution sub asynchrone - VB/VBA/VBS - Programmation
MarshPosté le 24-04-2009 à 19:31:04
Bonjour à tous,
je cherche à executer une sub contenue dans le code, voire dans un autre .vbs, de façon asynchrone. j'ai besoin de conserver le contexte d'exécution du programme dans cette sub. je ne peux donc pas me contenter d'une execution d'un fichier avec des arguments.
je m'explique sous la forme d'un petit code qui représente la situation : Class CLS_TEST Private lpr
Property Let inp_propriete(var) lpr = var End Property Property Get Propriete Propriete=lpr End Property End Class
Dim Glob, pfff
Set Glob = New CLS_TEST Glob.inp_propriete = 10
boucle' à exécuter en asynchrone : on ne sort jamais... WScript.Sleep 10000' represente l'attente de fin du programme ... WScript.Echo pfff WScript.Quit
Sub boucle Do While 1=1 WScript.Echo cstr(Glob.Propriete) WScript.Sleep 2000 pfff = pfff + 2 Loop End Sub
je ne sais plus s'y je m'y prends mal... j'ai vu quelques code en WMI, mais ils ne font que des query. Si quelqu'un a une idée pour m'aider...
Marsh Posté le 24-04-2009 à 19:31:04
Bonjour à tous,
je cherche à executer une sub contenue dans le code, voire dans un autre .vbs, de façon asynchrone.
j'ai besoin de conserver le contexte d'exécution du programme dans cette sub. je ne peux donc pas me contenter d'une execution d'un fichier avec des arguments.
je m'explique sous la forme d'un petit code qui représente la situation :
Class CLS_TEST
Private lpr
Property Let inp_propriete(var)
lpr = var
End Property
Property Get Propriete
Propriete=lpr
End Property
End Class
Dim Glob, pfff
Set Glob = New CLS_TEST
Glob.inp_propriete = 10
boucle ' à exécuter en asynchrone : on ne sort jamais...
WScript.Sleep 10000 ' represente l'attente de fin du programme ...
WScript.Echo pfff
WScript.Quit
Sub boucle
Do While 1=1
WScript.Echo cstr(Glob.Propriete)
WScript.Sleep 2000
pfff = pfff + 2
Loop
End Sub
je ne sais plus s'y je m'y prends mal...
j'ai vu quelques code en WMI, mais ils ne font que des query.
Si quelqu'un a une idée pour m'aider...
Merci pour votre aide.