[英]C# code not starting .exe getting error cannot find file name
我真的不知道為什么這段代碼不起作用。 每次我收到錯誤無法啟動進程,因為沒有提供文件名。 即使我提供了 EXE 所在的路徑並對其進行了驗證。
using System;
using System.Diagnostics;
using System.Diagnostics.Contracts;
namespace ProcessExitSample
{
class testsandboxprogram
{
static void Main(string[] args)
{
Contract.Requires(args != null);
try
{
var firstProc = new Process();
Process.Start(@"PATH TO EXE I WANT TO LAUNCH");
firstProc.EnableRaisingEvents = true;
firstProc.Start();
firstProc.WaitForExit();
//so upon exit should run the second program here
Console.WriteLine("First process exited: " + firstProc.ExitCode);
var secondProc = new Process();
Process.Start(@"PATH TO PROGRAM I WANT TO LAUNCH");
secondProc.Start();
}
catch (Exception ex)
{
Console.WriteLine("Something went wrong sorry :(: " + ex.Message);
return;
}
}
}
}
String myexepath = @"C:\Program Files (x86)\Steam\steamapps\common\BattleBlock Theater\BattleBlockTheater.exe"
由於此路徑包含,在雙引號之間用空格將其括起來:
Process.Start("\""+myexepath+"\"");
var firstProc = new Process();
// Process.Start(@"PATH TO EXE I WANT TO LAUNCH");
firstProc.EnableRaisingEvents = true;
firstProc.Start();
您沒有提供流程開始的路徑。 我注釋掉了不相關的代碼,因為它與firstProc
變量無關。
你可能想要:
firstProc.StartInfo.FileName = @"\Path\To\Exe";
最明顯的是嘗試在命令行環境中運行你的PATH TO EXE I WANT TO LAUNCH
,看看你是否得到一個不言自明的錯誤。
如果您的路徑包含空格,您將看到您正在嘗試執行一些有問題的空格,然后您可以使用 Graffito 給出的答案。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.