我只是试图制作一个控制台应用程序来使用工具启动我的游戏(该工具可以帮助游戏获得一些错误)。 一旦我完成游戏,我想通过游戏内菜单关闭游戏,然后我希望它随之关闭工具,而不必手动关闭它。 我似乎无法让它工作,但是如果我使用" flawlessWideScreen.Close();"并且如果我使用"那么该工具将在游戏关闭后保持打开状态。 flawlessWideScreen.Kill();"它抛出异常。
任何人都知道我做错了什么?
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Diagnostics;
using System.IO;
namespace Bioshock2AdvancedLauncher
{
class Program
{
static void Main(string[] args)
{
ProcessStartInfo bioshock2Info = new ProcessStartInfo();
bioshock2Info.FileName = (@"F:\Steam Library\steamapps\common\BioShock 2\SP\Builds\Binaries\Bioshock2.exe");
bioshock2Info.WorkingDirectory = Path.GetDirectoryName(@"F:\Steam Library\steamapps\common\BioShock 2\SP\Builds\Binaries\Bioshock2.exe");
Process bioshock2 = new Process();
bioshock2.EnableRaisingEvents = true;
bioshock2 = Process.Start(bioshock2Info);
Process flawlessWideScreen = new Process();
flawlessWideScreen = Process.Start(@"F:\Steam Library\steamapps\common\BioShock 2\SP\Builds\Binaries\FlawlessWidescreen.lnk");
bioshock2.WaitForExit();
flawlessWideScreen.Kill();
}
}
}
答案 0 :(得分:0)
我通过替换flawlessWideScreen.Kill()来修复它;使用此代码。
foreach (Process p in Process.GetProcesses())
{
string name = p.ProcessName.ToLower();
if (name == "flawlesswidescreen") p.Kill();
}