OVH Cloud OVH Cloud

Lancement Process

1 réponse
Avatar
Jean
Bonjour,j'ai un code de la forme suivante:
(je n'ai pas mis les arguments mais ils y sont dans le code final)

Process myProcess = new Process();
myProcess.StartInfo.FileName= "wscript.exe";
myProcess.Start();

Lors de l'éxécution le processus wscript est bien crée mais il ne s'éxécute
pas, meme en tache de fond. Ce code marche pour une application mais pas une
webapplication. Le but pour moi est de lancer un script vbs via wscript.exe.

J'ai également essayé les exemples fourni pour "iexplorer.exe", de la meme
maniere le processus se lance mais rien n'apparait à l'écran.

Je pensais à un problème de droits mais je pense avoir tout tenté de se coté
la.
Merci de votrer aide.

1 réponse

Avatar
Sebastien Bovo [MS]
Bonjour,

Dans le cas de iexplore.exe c'est normal que rien n'apparaisse à l'écran
puisque le processus n'est pas lancé dans un session intéractive.

Voici un bout de code qui peut t'aider pour lancer un VBS :

Tu pourras faire : Lance("monscript.vbs", "parametres", 10) par exemple




Imports System.IO
Imports System.Diagnostics

Public Class Commande

Public Shared Function Lance(ByVal Commande As String, ByVal Parametres As
String, ByVal Timeout As Integer) As String
Dim Sortie As StreamReader
Dim TxtSortie As String
Dim Succes As Boolean = False

Try
Dim MonProcess As New Process
MonProcess.StartInfo.FileName = Commande
MonProcess.StartInfo.Arguments = Parametres
MonProcess.StartInfo.UseShellExecute = False
MonProcess.StartInfo.CreateNoWindow = True
MonProcess.StartInfo.RedirectStandardOutput = True
MonProcess.Start()

If Timeout = 0 Then
Sortie = MonProcess.StandardOutput
TxtSortie = Sortie.ReadToEnd()
MonProcess.WaitForExit()
Else
Succes = MonProcess.WaitForExit(Timeout * 1000)
If Succes Then
Sortie = MonProcess.StandardOutput
TxtSortie = Sortie.ReadToEnd()
Else
TxtSortie = "Expiration du delai de " & Timeout & " secondes"
End If
End If
Catch ex As Exception
Throw New Exception("Exception lors du lancement de la ligne de
commande")
Finally
Sortie.Close()
End Try

Return TxtSortie
End Function
End Class





--
Cordialement,

Sebastien Bovo
Microsoft France
----------
Ce message est fourni en l'état, sans garantie d'aucune sorte, et ne vous
confère aucun droit. Vous assumez tous les risques liés à son utilisation.


"Jean" wrote in message
news:
Bonjour,j'ai un code de la forme suivante:
(je n'ai pas mis les arguments mais ils y sont dans le code final)

Process myProcess = new Process();
myProcess.StartInfo.FileName= "wscript.exe";
myProcess.Start();

Lors de l'éxécution le processus wscript est bien crée mais il ne
s'éxécute
pas, meme en tache de fond. Ce code marche pour une application mais pas
une
webapplication. Le but pour moi est de lancer un script vbs via
wscript.exe.

J'ai également essayé les exemples fourni pour "iexplorer.exe", de la meme
maniere le processus se lance mais rien n'apparait à l'écran.

Je pensais à un problème de droits mais je pense avoir tout tenté de se
coté
la.
Merci de votrer aide.