Ich habe eine Batchdatei mit folgendem Inhalt:
Auch nach dem Ändern des Verzeichniswerts von %~dp0 bleibt er derselbe.
Wenn ich diese Batchdatei jedoch aus dem CSharp-Programm ausführe, ist der Wert von %~dp0 ändert sich nach
CD. Es zeigt jetzt auf ein neues Verzeichnis. Folgendes ist der Code, den ich verwende:
Code: Select all
Directory.SetCurrentDirectory(//Dir where batch file resides);
ProcessStartInfo ProcessInfo;
Process process = new Process();
ProcessInfo = new ProcessStartInfo("mybatfile.bat");
ProcessInfo.UseShellExecute = false;
ProcessInfo.RedirectStandardOutput = true;
process = Process.Start(ProcessInfo);
process.WaitForExit();
ExitCode = process.ExitCode;
process.Close();
Warum gibt es einen Unterschied in der Ausgabe, wenn dasselbe Skript auf unterschiedliche Weise ausgeführt wird?
Verpasse ich hier etwas? ?