J'utilise la commande "Shell" pour executer un programme externe.
Petit probleme, la commande "shell" lance cette commande mais n'attend pas
la fin d'execution de cette commande.
Comment en VB, puis-je lancer une commande externe et attendre que cette
applic/commande externe soit finie ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Jacques93
Bonsoir, Jean Elens a écrit :
Bonjour a tous,
J'utilise la commande "Shell" pour executer un programme externe. Petit probleme, la commande "shell" lance cette commande mais n'attend pas la fin d'execution de cette commande. Comment en VB, puis-je lancer une commande externe et attendre que cette applic/commande externe soit finie ?
Jean
Essaie :
Dim objShell As Object
Set objShell = CreateObject("WScript.Shell") objShell.Run "notepad", 1, True MsgBox "Fini" Set objShell = Nothing
J'utilise la commande "Shell" pour executer un programme externe.
Petit probleme, la commande "shell" lance cette commande mais n'attend pas
la fin d'execution de cette commande.
Comment en VB, puis-je lancer une commande externe et attendre que cette
applic/commande externe soit finie ?
Jean
Essaie :
Dim objShell As Object
Set objShell = CreateObject("WScript.Shell")
objShell.Run "notepad", 1, True
MsgBox "Fini"
Set objShell = Nothing
J'utilise la commande "Shell" pour executer un programme externe. Petit probleme, la commande "shell" lance cette commande mais n'attend pas la fin d'execution de cette commande. Comment en VB, puis-je lancer une commande externe et attendre que cette applic/commande externe soit finie ?
Jean
Essaie :
Dim objShell As Object
Set objShell = CreateObject("WScript.Shell") objShell.Run "notepad", 1, True MsgBox "Fini" Set objShell = Nothing
OK PS j'ai du ajouter la reference à "Microsoft script control 1.0" (msscript.ocx) qui n'est pas installé sur la machine sur laquelle je vais faire l'installation.
merci. Jean ---------------- "Jacques93" wrote in message news:%23%
Bonsoir, Jean Elens a écrit : > Bonjour a tous, > > J'utilise la commande "Shell" pour executer un programme externe. > Petit probleme, la commande "shell" lance cette commande mais n'attend
pas
> la fin d'execution de cette commande. > Comment en VB, puis-je lancer une commande externe et attendre que cette > applic/commande externe soit finie ? > > Jean > >
Essaie :
Dim objShell As Object
Set objShell = CreateObject("WScript.Shell") objShell.Run "notepad", 1, True MsgBox "Fini" Set objShell = Nothing
OK
PS j'ai du ajouter la reference à "Microsoft script control 1.0"
(msscript.ocx) qui n'est pas installé sur la machine sur laquelle je vais
faire l'installation.
merci.
Jean
----------------
"Jacques93" <jacques.le-gocNO@PUBwouanadoo.fr> wrote in message
news:%23%23NUsZkWFHA.3220@TK2MSFTNGP10.phx.gbl...
Bonsoir,
Jean Elens a écrit :
> Bonjour a tous,
>
> J'utilise la commande "Shell" pour executer un programme externe.
> Petit probleme, la commande "shell" lance cette commande mais n'attend
pas
> la fin d'execution de cette commande.
> Comment en VB, puis-je lancer une commande externe et attendre que cette
> applic/commande externe soit finie ?
>
> Jean
>
>
Essaie :
Dim objShell As Object
Set objShell = CreateObject("WScript.Shell")
objShell.Run "notepad", 1, True
MsgBox "Fini"
Set objShell = Nothing
OK PS j'ai du ajouter la reference à "Microsoft script control 1.0" (msscript.ocx) qui n'est pas installé sur la machine sur laquelle je vais faire l'installation.
merci. Jean ---------------- "Jacques93" wrote in message news:%23%
Bonsoir, Jean Elens a écrit : > Bonjour a tous, > > J'utilise la commande "Shell" pour executer un programme externe. > Petit probleme, la commande "shell" lance cette commande mais n'attend
pas
> la fin d'execution de cette commande. > Comment en VB, puis-je lancer une commande externe et attendre que cette > applic/commande externe soit finie ? > > Jean > >
Essaie :
Dim objShell As Object
Set objShell = CreateObject("WScript.Shell") objShell.Run "notepad", 1, True MsgBox "Fini" Set objShell = Nothing
Quelqu'un connait-il des problemes ave cet OCX ? fonctionne-t-il toujours impecablement ? Merci de vos avis.
"Jacques93" wrote in message news:%23%
Bonsoir, Jean Elens a écrit : > Bonjour a tous, > > J'utilise la commande "Shell" pour executer un programme externe. > Petit probleme, la commande "shell" lance cette commande mais n'attend
pas
> la fin d'execution de cette commande. > Comment en VB, puis-je lancer une commande externe et attendre que cette > applic/commande externe soit finie ? > > Jean > >
Essaie :
Dim objShell As Object
Set objShell = CreateObject("WScript.Shell") objShell.Run "notepad", 1, True MsgBox "Fini" Set objShell = Nothing
Quelqu'un connait-il des problemes ave cet OCX ?
fonctionne-t-il toujours impecablement ?
Merci de vos avis.
"Jacques93" <jacques.le-gocNO@PUBwouanadoo.fr> wrote in message
news:%23%23NUsZkWFHA.3220@TK2MSFTNGP10.phx.gbl...
Bonsoir,
Jean Elens a écrit :
> Bonjour a tous,
>
> J'utilise la commande "Shell" pour executer un programme externe.
> Petit probleme, la commande "shell" lance cette commande mais n'attend
pas
> la fin d'execution de cette commande.
> Comment en VB, puis-je lancer une commande externe et attendre que cette
> applic/commande externe soit finie ?
>
> Jean
>
>
Essaie :
Dim objShell As Object
Set objShell = CreateObject("WScript.Shell")
objShell.Run "notepad", 1, True
MsgBox "Fini"
Set objShell = Nothing
Quelqu'un connait-il des problemes ave cet OCX ? fonctionne-t-il toujours impecablement ? Merci de vos avis.
"Jacques93" wrote in message news:%23%
Bonsoir, Jean Elens a écrit : > Bonjour a tous, > > J'utilise la commande "Shell" pour executer un programme externe. > Petit probleme, la commande "shell" lance cette commande mais n'attend
pas
> la fin d'execution de cette commande. > Comment en VB, puis-je lancer une commande externe et attendre que cette > applic/commande externe soit finie ? > > Jean > >
Essaie :
Dim objShell As Object
Set objShell = CreateObject("WScript.Shell") objShell.Run "notepad", 1, True MsgBox "Fini" Set objShell = Nothing
Set objShell = CreateObject("WScript.Shell") objShell.Run "notepad", 1, True MsgBox "Fini" Set objShell = Nothing
Il s'agit là dans un OCX créé pour le scripting, je pense qu'il n'est pas très élégant de l'utiliser dans VB pour plusieurs raisons :
* problèmes de compatibilités * problèmes d'enregistrement de l'ocx sur la machine (on sait jamais) * certain antivirus désactivent ces ocx pour éviter les scripts malveillant.
il faut plutot utiliser les APIs.
Regarde sur google groups, il y a pleins d'exemples (dont certains que j'ai deja postés). Cherche "ShelleAndWait" et tu trouveras.
-- Nicolas G. FAQ VB : http://faq.vb.free.fr API Guide : http://www.allapi.net Google Groups : http://groups.google.fr/ MZ-Tools : http://www.mztools.com/
Salut,
Essaie :
Dim objShell As Object
Set objShell = CreateObject("WScript.Shell")
objShell.Run "notepad", 1, True
MsgBox "Fini"
Set objShell = Nothing
Il s'agit là dans un OCX créé pour le scripting, je pense qu'il n'est pas
très élégant de l'utiliser dans VB pour plusieurs raisons :
* problèmes de compatibilités
* problèmes d'enregistrement de l'ocx sur la machine (on sait jamais)
* certain antivirus désactivent ces ocx pour éviter les scripts malveillant.
il faut plutot utiliser les APIs.
Regarde sur google groups, il y a pleins d'exemples (dont certains que j'ai
deja postés). Cherche "ShelleAndWait" et tu trouveras.
--
Nicolas G.
FAQ VB : http://faq.vb.free.fr
API Guide : http://www.allapi.net
Google Groups : http://groups.google.fr/
MZ-Tools : http://www.mztools.com/
Set objShell = CreateObject("WScript.Shell") objShell.Run "notepad", 1, True MsgBox "Fini" Set objShell = Nothing
Il s'agit là dans un OCX créé pour le scripting, je pense qu'il n'est pas très élégant de l'utiliser dans VB pour plusieurs raisons :
* problèmes de compatibilités * problèmes d'enregistrement de l'ocx sur la machine (on sait jamais) * certain antivirus désactivent ces ocx pour éviter les scripts malveillant.
il faut plutot utiliser les APIs.
Regarde sur google groups, il y a pleins d'exemples (dont certains que j'ai deja postés). Cherche "ShelleAndWait" et tu trouveras.
-- Nicolas G. FAQ VB : http://faq.vb.free.fr API Guide : http://www.allapi.net Google Groups : http://groups.google.fr/ MZ-Tools : http://www.mztools.com/
Zoury
Salut Nicolas !
"ShelleAndWait" et tu trouveras.
Tu veux dire "ShellAndWait" ? ;O)
Voici un exemple si tu ne trouve pas ..: http://vbnet.mvps.org/code/faq/waitforsingleobject2.htm
-- Cordialement Yanick MVP pour Visual Basic
Salut Nicolas !
"ShelleAndWait" et tu trouveras.
Tu veux dire "ShellAndWait" ? ;O)
Voici un exemple si tu ne trouve pas ..:
http://vbnet.mvps.org/code/faq/waitforsingleobject2.htm
Voici un exemple si tu ne trouve pas ..: http://vbnet.mvps.org/code/faq/waitforsingleobject2.htm
-- Cordialement Yanick MVP pour Visual Basic
Jean Elens
OK merci.
"ng" wrote in message news:%
Salut,
> Essaie : > > Dim objShell As Object > > Set objShell = CreateObject("WScript.Shell") > objShell.Run "notepad", 1, True > MsgBox "Fini" > Set objShell = Nothing
Il s'agit là dans un OCX créé pour le scripting, je pense qu'il n'est pas très élégant de l'utiliser dans VB pour plusieurs raisons :
* problèmes de compatibilités * problèmes d'enregistrement de l'ocx sur la machine (on sait jamais) * certain antivirus désactivent ces ocx pour éviter les scripts
malveillant.
il faut plutot utiliser les APIs.
Regarde sur google groups, il y a pleins d'exemples (dont certains que
j'ai
deja postés). Cherche "ShelleAndWait" et tu trouveras.
-- Nicolas G. FAQ VB : http://faq.vb.free.fr API Guide : http://www.allapi.net Google Groups : http://groups.google.fr/ MZ-Tools : http://www.mztools.com/
OK merci.
"ng" <ng@ngsoft-fr.com> wrote in message
news:%23jxGzxkWFHA.2664@TK2MSFTNGP15.phx.gbl...
Salut,
> Essaie :
>
> Dim objShell As Object
>
> Set objShell = CreateObject("WScript.Shell")
> objShell.Run "notepad", 1, True
> MsgBox "Fini"
> Set objShell = Nothing
Il s'agit là dans un OCX créé pour le scripting, je pense qu'il n'est pas
très élégant de l'utiliser dans VB pour plusieurs raisons :
* problèmes de compatibilités
* problèmes d'enregistrement de l'ocx sur la machine (on sait jamais)
* certain antivirus désactivent ces ocx pour éviter les scripts
malveillant.
il faut plutot utiliser les APIs.
Regarde sur google groups, il y a pleins d'exemples (dont certains que
j'ai
deja postés). Cherche "ShelleAndWait" et tu trouveras.
--
Nicolas G.
FAQ VB : http://faq.vb.free.fr
API Guide : http://www.allapi.net
Google Groups : http://groups.google.fr/
MZ-Tools : http://www.mztools.com/
> Essaie : > > Dim objShell As Object > > Set objShell = CreateObject("WScript.Shell") > objShell.Run "notepad", 1, True > MsgBox "Fini" > Set objShell = Nothing
Il s'agit là dans un OCX créé pour le scripting, je pense qu'il n'est pas très élégant de l'utiliser dans VB pour plusieurs raisons :
* problèmes de compatibilités * problèmes d'enregistrement de l'ocx sur la machine (on sait jamais) * certain antivirus désactivent ces ocx pour éviter les scripts
malveillant.
il faut plutot utiliser les APIs.
Regarde sur google groups, il y a pleins d'exemples (dont certains que
j'ai
deja postés). Cherche "ShelleAndWait" et tu trouveras.
-- Nicolas G. FAQ VB : http://faq.vb.free.fr API Guide : http://www.allapi.net Google Groups : http://groups.google.fr/ MZ-Tools : http://www.mztools.com/
ng
"Zoury" <yanick_lefebvre at hotmail dot com> wrote:
Salut Nicolas !
"ShelleAndWait" et tu trouveras.
Tu veux dire "ShellAndWait" ? ;O)
oui :)
-- Nicolas G. FAQ VB : http://faq.vb.free.fr API Guide : http://www.allapi.net Google Groups : http://groups.google.fr/ MZ-Tools : http://www.mztools.com/
"Zoury" <yanick_lefebvre at hotmail dot com> wrote:
Salut Nicolas !
"ShelleAndWait" et tu trouveras.
Tu veux dire "ShellAndWait" ? ;O)
oui :)
--
Nicolas G.
FAQ VB : http://faq.vb.free.fr
API Guide : http://www.allapi.net
Google Groups : http://groups.google.fr/
MZ-Tools : http://www.mztools.com/
"Zoury" <yanick_lefebvre at hotmail dot com> wrote:
Salut Nicolas !
"ShelleAndWait" et tu trouveras.
Tu veux dire "ShellAndWait" ? ;O)
oui :)
-- Nicolas G. FAQ VB : http://faq.vb.free.fr API Guide : http://www.allapi.net Google Groups : http://groups.google.fr/ MZ-Tools : http://www.mztools.com/
Daniel AUBRY
Salut,
ayant eu le même problème il y a quelque temps on m'a conseillé et donné ce code que j'utilise avec bonheur. Par contre je ne sais plus qui !! S'il se reconnait : encore merci.
Dany
Public Function Execute(Fichier As String, AttendreLaFin As Boolean, Optional StyleDeLaFenêtre As VbAppWinStyle = vbNormalFocus) As Boolean
Dim Demarre As Long Dim ProcessHandle As Long Dim Retour As Long
On Error GoTo Erreur
If AttendreLaFin = False Then Demarre = Shell(Fichier, StyleDeLaFenêtre) Else Demarre = Shell(Fichier, StyleDeLaFenêtre) ProcessHandle = OpenProcess(SYNCHRONIZE, False, Demarre) Retour = WaitForSingleObject(ProcessHandle, 1) Do While Retour = WAIT_TIMEOUT Retour = WaitForSingleObject(ProcessHandle, 1) DoEvents Loop Retour = CloseHandle(ProcessHandle) End If
Execute = True
Exit Function
Erreur: Execute = False
End Function
"Jean Elens" a écrit dans le message de news: PB5ie.92865$
Bonjour a tous,
J'utilise la commande "Shell" pour executer un programme externe. Petit probleme, la commande "shell" lance cette commande mais n'attend pas la fin d'execution de cette commande. Comment en VB, puis-je lancer une commande externe et attendre que cette applic/commande externe soit finie ?
Jean
Salut,
ayant eu le même problème il y a quelque temps on m'a
conseillé et donné ce code que j'utilise avec bonheur.
Par contre je ne sais plus qui !!
S'il se reconnait : encore merci.
Dany
Public Function Execute(Fichier As String, AttendreLaFin As Boolean,
Optional StyleDeLaFenêtre As VbAppWinStyle = vbNormalFocus) As Boolean
Dim Demarre As Long
Dim ProcessHandle As Long
Dim Retour As Long
On Error GoTo Erreur
If AttendreLaFin = False Then
Demarre = Shell(Fichier, StyleDeLaFenêtre)
Else
Demarre = Shell(Fichier, StyleDeLaFenêtre)
ProcessHandle = OpenProcess(SYNCHRONIZE, False, Demarre)
Retour = WaitForSingleObject(ProcessHandle, 1)
Do While Retour = WAIT_TIMEOUT
Retour = WaitForSingleObject(ProcessHandle, 1)
DoEvents
Loop
Retour = CloseHandle(ProcessHandle)
End If
Execute = True
Exit Function
Erreur:
Execute = False
End Function
"Jean Elens" <jean.elens@telenet.be> a écrit dans le message de news:
PB5ie.92865$3o1.5520398@phobos.telenet-ops.be...
Bonjour a tous,
J'utilise la commande "Shell" pour executer un programme externe.
Petit probleme, la commande "shell" lance cette commande mais n'attend pas
la fin d'execution de cette commande.
Comment en VB, puis-je lancer une commande externe et attendre que cette
applic/commande externe soit finie ?
ayant eu le même problème il y a quelque temps on m'a conseillé et donné ce code que j'utilise avec bonheur. Par contre je ne sais plus qui !! S'il se reconnait : encore merci.
Dany
Public Function Execute(Fichier As String, AttendreLaFin As Boolean, Optional StyleDeLaFenêtre As VbAppWinStyle = vbNormalFocus) As Boolean
Dim Demarre As Long Dim ProcessHandle As Long Dim Retour As Long
On Error GoTo Erreur
If AttendreLaFin = False Then Demarre = Shell(Fichier, StyleDeLaFenêtre) Else Demarre = Shell(Fichier, StyleDeLaFenêtre) ProcessHandle = OpenProcess(SYNCHRONIZE, False, Demarre) Retour = WaitForSingleObject(ProcessHandle, 1) Do While Retour = WAIT_TIMEOUT Retour = WaitForSingleObject(ProcessHandle, 1) DoEvents Loop Retour = CloseHandle(ProcessHandle) End If
Execute = True
Exit Function
Erreur: Execute = False
End Function
"Jean Elens" a écrit dans le message de news: PB5ie.92865$
Bonjour a tous,
J'utilise la commande "Shell" pour executer un programme externe. Petit probleme, la commande "shell" lance cette commande mais n'attend pas la fin d'execution de cette commande. Comment en VB, puis-je lancer une commande externe et attendre que cette applic/commande externe soit finie ?