cs_champi
Messages postés12Date d'inscriptionjeudi 27 juin 2002StatutMembreDernière intervention 2 juillet 2002
-
30 juin 2002 à 17:00
Heringdal
Messages postés3Date d'inscriptionmardi 15 avril 2003StatutMembreDernière intervention16 avril 2003
-
16 avril 2003 à 14:52
Rebonjour ...
Un petit probleme a vous soumettre :
comment attendre la fin d'une execution lancee via la commande Shell?
Je m'explique: je lance avec la commandez shell un programme externe, et je voudrais aatendre la fin de l'execution de ce programme pour que les instruction du code VB reprennent. Comment faire si c'est possible ?
cs_payen
Messages postés252Date d'inscriptionmercredi 25 octobre 2000StatutMembreDernière intervention 1 mai 2005 15 mars 2003 à 13:19
-------------------------------
Réponse au message :
-------------------------------
> J'ai le meme probleme!! :(
>
> Si tu trouve... fait moi signe
>
> merci
>
> Sylvain
>
> SUBARU WRX 2002 FUTURE OWNER
> From : Qc, CANADA
>
et bien oui, j'ai la solution a ton probleme, envoie moi ton mail, je te donnerai les sources : ioupix@yahoo.fr
voilou
>
> -------------------------------
> Réponse au message :
> -------------------------------
>
> > Rebonjour ...
> >
> > Un petit probleme a vous soumettre :
> >
> > comment attendre la fin d'une execution lancee via la commande Shell?
> >
> > Je m'explique: je lance avec la commandez shell un programme externe, et je voudrais aatendre la fin de l'execution de ce programme pour que les instruction du code VB reprennent. Comment faire si c'est possible ?
> >
> > Merci a tous d'avance
>
cs_payen
Messages postés252Date d'inscriptionmercredi 25 octobre 2000StatutMembreDernière intervention 1 mai 2005 16 avril 2003 à 13:29
oui oui, je peux:
tu mets tout ca dans un module :
'Déclaration des fonctions pour l'ouverture d'une application avec la commande
'Shell, et attente de la fermeture de l'application ouverte pour continuer à
'éxécuter le code VB.
Const PROCESS_ALL_ACCESS& = &H1F0FFF
Const STILL_ACTIVE& = &H103&
Const INFINITE& = &HFFFF
Private Declare Function GetWindowsDirectory _
Lib "kernel32" _
Alias "GetWindowsDirectoryA" ( _
ByVal lpBuffer As String, _
ByVal nSize As Long _
) As Long
Private Declare Function OpenProcess _
Lib "kernel32" ( _
ByVal dwDesiredAccess As Long, _
ByVal bInheritHandle As Long, _
ByVal dwProcessId As Long _
) As Long
Private Declare Function WaitForSingleObject _
Lib "kernel32" ( _
ByVal hHandle As Long, _
ByVal dwMilliseconds As Long _
) As Long
Private Declare Function GetExitCodeProcess _
Lib "kernel32" ( _
ByVal hProcess As Long, _
lpExitCode As Long _
) As Long
Private Declare Function CloseHandle _
Lib "kernel32" ( _
ByVal hObject As Long _
) As Long
Function fWait(ByVal lProgID As Long) As Long
' Wait until proggie exit code <>
' STILL_ACTIVE&
Dim lExitCode As Long, hdlProg As Long
' Get proggie handle
hdlProg = OpenProcess(PROCESS_ALL_ACCESS, False, lProgID)
' Get current proggie exit code
GetExitCodeProcess hdlProg, lExitCode
Do While lExitCode = STILL_ACTIVE&
DoEvents
GetExitCodeProcess hdlProg, lExitCode
Loop
CloseHandle hdlProg
fWait = lExitCode
End Function
Private Function fGetWinDir() As String
' Wrapper to return OS Path
Dim lRet As Long, lSize As Long, sBuf As String * 512
lSize = 512
lRet = GetWindowsDirectory(sBuf, lSize)
fGetWinDir = Left(sBuf, InStr(1, sBuf, Chr(0)) - 1)
End Function