2017-04-25 14 views
0

新しいビデオがキューに入ったときに自動的にYouTubeビデオを開く場所を開発中のTwitchボットに機能を追加しています。作成したプロセスファイル名をprocess.StartInfo.FileName = youtubeLink1からyoutubeLink2に切り替える際に問題が発生しました。プロセスを終了して再起動しようとすると、プロセスはすでに終了しているという。とにかくこれをいつでも簡単に切り替えることはできますか? WebBrowserコントロールは既に試したので、お勧めしないでください。音楽ビデオの著作権により、Webブラウザコントロールで再生されません(これを回避する方法がわからない場合)。ありがとう。実行中のC#変更プロセスFileName

答えて

0

問題は、実際にプロセスを終了していないか、その終了イベントを待ってからStartInfoプロパティを変更しようとしていないことです。これは実行できません。 )私はかなりすでにCloseMainWindow(以外にこのコードを持って

Process _process = new Process(); 
_process.StartInfo.FileName = "youtubeLink1.exe"; 
_process.Start(); 
_process.WaitForExit(); 

// Close process by sending a close message to its main window. 
_process.CloseMainWindow(); 

// Free resources associated with process. 
_process.Close(); 

// Now you can change the name 
_process.StartInfo.FileName = "youtubeLink2.exe"; 
... 
+0

は、以下のコードのようにWaitForExit()Close()を使用してみてください。私はそれを追加しましたが、それはまだ動作しません。ここで私が得るエラーです: System.InvalidOperationException:プロセスが終了したので、要求された情報は利用できません。 – Edude15000

+0

?エラーメッセージはどこですか? –

+0

私が最初のものを使用しない場合、CloseMainWindow()またはClose()で失敗します。 – Edude15000

関連する問題