我正在Web API项目的前端运行一个可执行文件(我知道,虽然不明智,但在这种情况下我需要这样做)。我使用的是WScript.shell,每次使用“运行”命令时,该过程都会执行,但会导致网页冻结。我的怀疑是因为我将bWaitOnReturn参数设置为true。所以我基本上有两个问题...
1。)如果在将bWaitOnReturn参数设置为false的情况下调用run方法,它将立即返回然后继续执行脚本吗?还是会调用可执行文件,继续在调用程序中执行原始代码,然后在以后返回?
2。)有什么方法可以使用WScript.shell而不导致我的网页挂起,例如轮询run命令的返回值(就像我在下面做的那样)?
这是我的代码,这行得通吗?还是从run函数返回时有什么事情可以引起我的注意?
var shellObj = new ActiveXObject("WScript.shell");
var result = -1;
result = shellObj.run(command, 1, false);
while (result == -1) {
;
}