继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

ASP.NET CORE下运行CMD命令

niunan
关注TA
已关注
手记 63
粉丝 20
获赞 97

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...");

        }


5c6e994f0001b96d15110271.jpg

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP