C#怎么判断程序是否正确启动 ?

runerback runerback 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
通过遍历硬盘寻找指定的程序,比如 a.exe,
我是根据名字找的,所以找到后想通过 Process.Start 来启动然后测试是不是找到了正确的那个程序。
说得明白点,我在找的是一个游戏的主程序,所以如果缺少某个文件就无法正确运行,而这个程序现在被复制到了硬盘中的其他位置,所以会出现无法正确打开的情况,由此来判断找到的路径是 “真的”还是“假的”。但是又不想看到那个错误提示的弹窗“缺少xxx文件”,所以想知道,怎么提供一种类似调试模式来运行,并判断是否正确启动,一旦正确启动就马上关掉,求思路啊。。WinAPI也行的

对应代码:

try
{
FileInfo[] files = info.GetFiles("*.exe");
var result = files.Where(file => file.Name == "OFDR.exe").Select(file => file).ToList();
if (result.Count > 0)
{
foreach (FileInfo _fi in result)
{
try
{
Process _p = Process.Start(_fi.FullName);
if (_p.StandardError == null)
{//这里错的,需要重定向,请无视。。
_p.Kill();
Console.WriteLine("Find In: {0}.", result[0].FullName);
_sentry = true;
loopstate.Stop();
return;
}
else
{
_p.Kill();
}
}
catch { }
}
}
}
catch { }


...全文
评论 6
收藏 已收藏
分享
返回顶部
runerback
C# 111,129 成员 642,538 内容