ASP.NET CORE下运行CMD命令

ASP.NET CORE下运行CMD命令,用以前的ASP.NET 的命令
System.Diagnostics.Process.Start("notepad");
这样是可以运行出记事本的,

现在公司的C++大神开发了个EXE,需要放在服务器上,然后当访问服务器上的某个网页的时候就执行这个EXE了。。

传到服务器上,在服务器上运行 d:/temp/cm/cm.exe -url=http://baidu.com ,成功运行的,其中后面 -url=xxx是传过去的参数的

放在.NET CORE下运行:
System.Diagnostics.Process.Start("d:/temp/cm/cm.exe -url=http://baidu.com");
结果显示找不到文件,但是明明路径都是正确的,上网查了下,可能是权限的问题,我把cm目录全设置为everyone了,再运行测试,结果还是不行。。

再上网找啊找啊找啊,终于能运行了:

    //执行CMD命令
    public ActionResult OpenNotepad() {
        string[] cmd = webinfo.mobilepay_cmd.Split(" "); // 数组 元素1,命令全路径d:/cm/cm.ext 元素2,参数 -url=http://163.com
        string cmd2 = cmd[1].Replace("{phone}", "13607886582").Replace("{amount}","10");
        log.Info($"\r\n运行CMD命令:{cmd[0]} {cmd2}");
        var psi = new System.Diagnostics.ProcessStartInfo(cmd[0], cmd2);
        System.Diagnostics.Process.Start(psi);
        return Content("hello niunan...");
    }

ASP.NET CORE下运行CMD命令_第1张图片

你可能感兴趣的:(ASP.NET CORE下运行CMD命令)