Was ist der Grund dafür, dass sich der Batch-Dateipfad, auf den mit %~dp0 verwiesen wird, manchmal ändert, wenn das VerzC#

Ein Treffpunkt für C#-Programmierer
Guest
 Was ist der Grund dafür, dass sich der Batch-Dateipfad, auf den mit %~dp0 verwiesen wird, manchmal ändert, wenn das Verz

Post by Guest »

Ich habe eine Batchdatei mit folgendem Inhalt:

Code: Select all

echo %~dp0
CD Arvind
echo %~dp0
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? ?

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post