2016-08-08 66 views
3

Ich möchte ein Python-Skript in cmd ausführen, wenn eine Schaltfläche in VB.Net geklickt wird. Müssen Sie das Python-Skript in einer Batch-Datei aufrufen? Oder kannst du es direkt in VB machen?Run Python-Skript in VB.net auf Knopfdruck

ich versucht, dieses

Dim ps As New ProcessStartInfo("cmd.exe") 
    ps.Arguments = "C:\yourbatfile.bat" 
    Process.Start(ps) 

Aber das öffnet nur das cmd Fenster und führen Sie nicht die Bat-Datei.

+0

denke ich das Argument Sie ist falsch gesendet (in der Regel würden Sie es mit '/ c 'Suffix oder'/k' wenn cmd ausgeführt wird), aber warum offen cmd, wenn Sie nur die Batch-Datei sofort ausführen? 'Process.Start (" C: \ yourbatfile.bat ")' –

Antwort

2
Dim psi = New ProcessStartInfo("c:\python27\python.exe", "myPythonScript.py") 
Dim proc = Process.Start(psi) 
proc.WaitForExit() 
If proc.ExitCode <> 0 then throw new Exception(" Script Failed") 
+0

Ich bekomme diesen Fehler mit diesem Code: \t 'System.Diagnostics.Assert' ist in diesem Kontext nicht zugänglich, weil es "Freund" ist. –

+0

Das war nur, um Ihnen zu zeigen, wie Sie den Exit-Code testen, um zu sehen, ob Fehler aufgetreten sind. Ich habe es geändert, um jetzt eine Ausnahme auszulösen. – FloatingKiwi