簡単ではないようです。それを行うためにexeを呼び出すバットを作成したくありません。
終了時に現在のディレクトリを変更できるWindows exeを作成する方法はありますか。
短い答えはノーです。オペレーティング システムは、実行可能ファイルごとに「環境」のコピーを作成します。これには、現在の作業ディレクトリ、「PATH」などの環境変数のリストなどが含まれます。実行可能ファイルが現在の作業ディレクトリを変更した場合、この変更は実行中のプログラム自体の環境にのみ影響しますが、親プロセスには影響しませんそれが始まりました。
すべてのプロセスには独自の「現在のディレクトリ」があるため、「現在のディレクトリを変更する」とはどういう意味ですか? 何のための現在のディレクトリ?
もちろん、SetCurrentDirectory Win32 API 呼び出しがあります。ただし、それは呼び出しプロセスの作業ディレクトリを変更するだけです。実行可能ファイルを実行するたびに、OS が新しいプロセスを開始するため、これを行う良い方法はありません。
この情報の取得についてSO の質問がありました。おそらく、そこにある何かがあなたを助けるでしょう。受け入れられた回答は、直接アクセスできるように見えますが、非常に危険に見えます。システムをブルースクリーン処理したり、チャイナシンドロームなどを引き起こしたりした場合、それは私のせいではなく、あなたのせいです. :-)