从后面的代码启动命令行 exe (ngrok) 的正确方法
Posted
技术标签:
【中文标题】从后面的代码启动命令行 exe (ngrok) 的正确方法【英文标题】:Correct way to start a command line exe (ngrok) from code behind 【发布时间】:2020-03-17 13:21:09 【问题描述】:我正在尝试从 WPF C# 应用程序 sart ngrok。
想要的结果是打开 Windows 命令行并启动 ngrok,就像我手动启动它一样。
我得到一个异常:System.InvalidOperationException
private async void StartNgrok()
string ExePath = "C:\\Users\\mmcca\\ngrok.exe";
string Args = "\"http 55678 -host-header=\"localhost: 55678\"";
try
var proc = Process.Start(ExePath, Args);
catch (Exception ex)
// Throwing - System.InvalidOperationexception
从后面的代码启动命令行 exe 的正确方法是什么?
【问题讨论】:
【参考方案1】:您可以尝试将 ngrok 声明为进程,然后以这种方式启动它 - 这在过去对我有用:
Process ngrok = new Process();
ngrok.StartInfo.FileName = "C:\\Users\\mmcca\\ngrok.exe";
ngrok.StartInfo.Arguments = "\"http 55678 -host-header=\"localhost: 55678\"";
ngrok.Start();
让我知道你的进展如何。
【讨论】:
以上是关于从后面的代码启动命令行 exe (ngrok) 的正确方法的主要内容,如果未能解决你的问题,请参考以下文章
跪求!无法从命令行或调试器启动服务,必须首先安装Windows服务(使用installutil.exe)...
无法从命令行或调试器启动服务,必须首先安装Windows服务(使用installutil.exe),然后用ServerExplorerWindows服务器管理工具或NET START命令启动它(示例