ブロードバンド接続を自動的に接続および切断するBAT
スクリプトを作成しました。
netsh mbn connect interface="Mobile Broadband Connection" connmode=name name="My Provider"
netsh mbn disconnect interface="Mobile Broadband Connection"
BAT
スクリプトをクリックすると正常に動作しますが、次のように実行するとProcess.Start
:
var startInfo = new ProcessStartInfo
{
FileName = "cmd.exe",
Arguments = "/c reconnect.bat",
WindowStyle = ProcessWindowStyle.Minimized,
UseShellExecute = false,
RedirectStandardOutput = true,
RedirectStandardError = true
};
var process = new Process
{
StartInfo = startInfo
};
process.Start();
netsh は、mbn コマンドが見つからないというエラーを返します。
ファイルを使用する前にBAT
、コマンドを直接開始しました。シェルでは問題なく動作しましたが、使用時に同じエラーが発生しましたProcess.Start
。
なぜこれが私に起こっているのですか?
出力:
C:\Dev\NetworkAdapterTest\NetworkAdapterTest\bin\Debug>netsh mbn connect interface=\"Mobile Breitbandverbindung\" connmode=name name=\"A1 2\" 次のコマンドが見つかりませんでした: mbn connect interface="Mobile Breitbandverbindung" connmode=name name="A1 2".
C:\Dev\NetworkAdapterTest\NetworkAdapterTest\bin\Debug>netsh mbn disconnect interface=\"Mobile Breitbandverbindung\" 次のコマンドが見つかりませんでした: mbn disconnect interface="Mobile Breitbandverbindung"
引用が実際にどのように配線されているかに注目してください。コマンドを直接開始したときにも同じ問題が発生しました。
Visual Studio 2008 でソリューションをコンパイルすると、すべてが意図したとおりに機能します。
質問はもはや関連性がありません。