Wie Skript (vbs) mit WMI in C # -Code beginnen?
-
06-09-2019 - |
Frage
Ich brauche eine Visual Basic Script-Datei zu starten, mithilfe von WMI in einem c # -Code.
Ich verstehe nicht ganz, was mit diesem Stück Code falsch? Ergebnis wird immer 8 (Unbekannter Fehler). Aber zum Beispiel kann notepad.exe ohne Fehler gestartet werden.
//Get the object on which the method will be invoked
ManagementClass processClass = new ManagementClass("Win32_Process");
//Create an array containing all arguments for the method
object[] methodArgs = { "C:\\MyFolder\\Test.vbs arg1 arg2", null, null, 0 };
//Execute the method
object result = processClass.InvokeMethod("Create", methodArgs);
Lösung
Skripte sind nicht ausführbare Dateien - sie werden von Windows Script Host ausgeführt werden, so müssen Sie den Pfad angeben CScript.exe oder wscript.exe vor dem Skriptnamen:
object[] methodArgs = {
Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.System), "cscript.exe") + @" C:\MyFolder\Test.vbs arg1 arg2",
null,
null,
0
};
Andere Tipps
Ich weiß nicht viel über diese Art der Sache, aber denken Sie Skript Host aufrufen und übergeben sie die vbs-Datei auszuführen.
müssenLizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow