Re: [问题] WebAPI 呼叫 Bat档

楼主: OpenGoodHate (什么东西什么东西)   2018-06-13 19:32:51
感谢有大大寄站内信来一起讨论这个问题
今天改写成PS呼叫
后来我直接把Code 搬到测试环境用本机呼叫IIS Express 的方式跑
发现一切在Visual Studio下都可以过
另外开的CONSOLE 也可以呼叫起来
但是丢到IIS 上面跑就不会过了
目前想到可能是下面两个
1. 权限问题(但是可以顺利的印出DIR,代表可以叫PS 去作事)
2. 32/64位元问题(但是PS 叫的起来应该就没这问题)
暂时没更进一步的想法
但是VS 会过应该就是流程没问题…吧
己经把 application pool 的权限加到要呼叫bat 档的资料夹里
※ 引述《OpenGoodHate (什么东西什么东西)》之铭言:
: 手机好像无法回推文@@
: 这几天想办法单步执行
: 把外部呼叫exe档的部份卡掉就可以过了
: 所以就想说写一支 call exe 的bat 档
: 给api呼叫
: 结果模拟失败
: 我写的程式竟然会很顺利的跑完
: 看来只能想办法追一下原始码
: 那支bat 跟exe 都还满复杂的
: 目前除了追原始码想不到什么好方法XD
: ※ 引述《OpenGoodHate (什么东西什么东西)》之铭言:
: : 如题
: : 原本有一支程式是bat档写的
: : 现在的操作方法是用复制的把呼叫档跟参数
: : 贴在命令列
: : 现在的需求是要开个串口给外部呼叫
: : 所以自然就想到用WebAPI来接受参数
: : 再组出原本在命令列的字串贴上去跑
: : 但是用
: : System.Diagnostics.Process.Start
: : 呼叫cmd.exe之后一直都卡住
: : 我就去看了bat原始的写法
: : 发现bat 的中间有再去呼叫另一支exe程式
: : 只要呼叫到这支EXE就会卡住
: : 原始动作用手贴上的时后
: : 跑到这支程式,会再弹一个新的命令列视窗
: : 做完就关掉
: : 我猜是因为这样卡死
: : 因为程式很简单就
: : Process.Start 呼叫cmd.exe
: : 再把参数丢进去
: : 丢个DIR或是PING 都可以正常执行
: : 这样看来就是卡死了
: : 有什么方法可以解Bat 包exe的呼叫吗
: : 目前google 都只有用Process的做法
: : 有人试过其它做法吗
: :

Links booklink

Contact Us: admin [ a t ] ucptt.com