我正在为我正在开发的Twitch机器人添加一项功能,当新的视频出现在队列中时,它会自动打开YouTube视频。我在尝试将创建的进程文件名从process.StartInfo.FileName = youtubeLink1切换到youtubeLink2时遇到问题。它说当我尝试杀死并重新启动它时,该进程已经退出。反正有什么方法可以随时轻松切换吗?请不要推荐WebBrowser控件,因为我已经尝试过了。由于音乐视频的版权,它们不会在WebBrowser控件中播放(除非你知道解决方法)。感谢。
答案 0 :(得分:0)
问题是,在尝试更改其StartInfo
属性之前,您并未真正关闭进程或等待其退出事件,而且无法完成此操作。
尝试使用WaitForExit()
和Close()
,如下面的代码:
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";
...