の開始:レジストリキー、コマンドプロンプトが(CMD.EXE)が開かれているWindowsでは、cmd.exeの問題
ます。HKLM \ Software \ Microsoft \コマンドプロセッサ
ます。HKCU \ Software \ Microsoft \コマンドプロセッサ
の値が "AutoRun"とチェックされています。見つかった場合は、値で指定されたバッチファイルが実行され、自動実行のような機能が提供されます。両方のキーにAutoRun値が含まれている場合は、両方が実行されます。驚くばかり!
私はProcess.Start
を使用してcmd.exeを実行しており、自動実行の動作は発生していません。私の現在のコードは次のとおりです。
private openShell(string folder)
{
ProcessStartInfo startInfo = new ProcessStartInfo()
{
FileName = Environment.GetEnvironmentVariable("COMSPEC") ?? "cmd.exe",
Arguments = "/k cd \"" + folder + "\"",
UseShellExecute = true
};
try
{
using (var exeProcess = System.Diagnostics.Process.Start(startInfo))
{
exeProcess.WaitForExit();
}
}
catch
{
// Log error.
}
}
私も最も単純な形式にそれを軽減しようとしました:私は(コマンドウィンドウが起動されるという点で)完璧に動作を試してみてください
System.Diagnostics.Process.Start("cmd.exe");
すべてが、自動実行行動は決して起こらない。
レジストリをチェックするコードはどこにありますか? – bitxwise
「自動実行」をHKLMキーに入れておけば、問題が仮想化されている可能性があります。コード内で問題は見つかりませんでした。 –
あなたは何かをHKCUのものに入れて何もしませんでしたか?また、コマンドプロンプトを手で起動することでこれをテストしましたが、唯一の問題はコードの起動方法です。 –