有没有办法启动添加到解决方案中的 .exe 文件

Is there a way to launch .exe files added to the solution

我有一个控制台应用程序需要能够启动作为 WPF 应用程序的可执行文件。这两个应用程序通过文件链接但是是独立的应用程序。我只需要能够从另一个执行一个。我的问题是我需要 EXE 的路径是一致的或动态的,这样当其他人使用它时文件仍然可以找到所以我尝试嵌入 exe。

我试过(项目 -> 添加 -> 现有项目 -> 添加 exe)然后将其配置为嵌入式资源。但是当我执行代码时 Process.Start("WebViewSolution.exe");它说找不到文件,即使它显示在解决方案中。

            if (innerResponse.ToUpper() == "OPEN EXTERNAL PROGRAM")
            {
                Process.Start("WebViewSolution.exe");
            }

因为我将文件添加为嵌入式资源,所以我认为它可以仅使用文件名启动。如果我将程序保存到我的桌面,我可以使用桌面路径启动它,没问题。但是桌面是我的电脑特有的。

  1. WebViewSolution.exe 的生成操作设置为 'None' 并将输出目录复制到 'Copy if newer'
  2. 确认您当前的目录指向正确的位置。 Console.WriteLine(Directory.GetCurrentDirectory()); 因为当前目录可能会在运行时发生变化,所以我倾向于避免使用相对路径,而是使用 Path.Combine(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), "WebViewSolution.exe")
  3. 当您从 windows 资源管理器手动启动它时,确认 WebViewSolution.exe 成功启动。

var ps = Process.Start("WebViewSolution.exe"); Console.WriteLine(ps.HasExited);