2013-10-11 3 views
6

Ich habe ein Programm in vb.net geschrieben. Nach dem Erstellen möchte ich eine interaktive Stapeldatei starten, die einen psexec-Befehl remote ausführt. Wie kann ich das machen? das ist mein Postbuildereignis:Interaktive Stapelverarbeitung in Visual Studio nach Build-Ereignissen

call "$(ProjectDir)ExecOnGw.bat" 

Und das ist meine Batch, dass, wenn es in einer normalen Eingabeaufforderung ausgeführt wird, wird die Ausführung in Ordnung ist.

c:\Sysinternal\psexec.exe \\gateway "C:\Remotepath\mybatch.bat" -u mydomain\myuser -p ****** 
pause 

Dieser Ansatz erfordert eine andere Charge auf einem entfernten Rechner, der etwas tut, dann, wenn ich verlassen wollen, ich habe ein „q“ drücken und „Enter“. In einer normalen Eingabeaufforderung funktioniert es einwandfrei. Aber in einem Post-Build-Event von Visual Studio geht es nicht mehr. Hilf mir!

+0

Nicht sicher, warum dies mit 'C#' markiert wurde. Entferntes Tag – tnw

Antwort

6

Ich habe dies vor der Verwendung des Startbefehls getan. Ich habe eine einfache pause.bat Datei zu demonstrieren:

@echo off 
    pause Press Any Key 
    exit 

Wenn ich dies in der Post Buildereignis setzen, sehe ich eine Konsole, die gerade geschlossen wird.

Wenn ich dies stattdessen verwende, bekomme ich ein zweites Konsolenfenster, das meine Eingabe vor dem Schließen nimmt.

start "My Process" /D c:\batch /WAIT pause.bat 
+0

Der 'start/WAIT' ist genau das was ich suche, überrascht diese Antwort wurde begraben. –

Verwandte Themen