1

我尝试使用 cfexecute 运行 test.bat 文件。加载一段时间后显示超时错误。输出文件为空白。但是当我双击 test.bat 文件时,它工作正常。我的代码是这样的,

<cfexecute name="C:\Windows\System32\cmd.exe" arguments="/C C:\ColdFusion2018\cfusion\wwwroot\test.bat" timeout="60" outputfile="C:\ColdFusion2018\cfusion\wwwroot\log_output1.txt"></cfexecute>
4

3 回答 3

3

我们建议使用CFX_EXEC (Windows) 而不是内置的 CFExecute。在运行 BAT 文件时,我们遇到过许多需要在具有不同于 CF 服务的权限的单独 Windows 帐户下运行它的情况。CFX_EXEC 使我们能够指定特定帐户,而 CFExecute 根本没有选项。我们还使用 CFX_EXEC 来执行 IP/DNS 查找,因为它比 Java 快得多,支持 TTL 并且不会“永远”缓存查找结果。

于 2019-12-11T14:37:32.953 回答
1

如果要使用 cfexecute 运行 test.bat,test.bat 应该是 name 属性的值,而不是 arguments 属性。

<cfexecute name="C:\ColdFusion2018\cfusion\wwwroot\test.bat" 
timeout="60" 
arguments ="whatever applies"
outputfile="C:\ColdFusion2018\cfusion\wwwroot\log_output1.txt">
</cfexecute>
于 2019-12-11T14:44:05.310 回答
0

感谢您的答复,

在命令行中抑制“按任意键继续..”(暂停)后,批处理文件成功执行。它使 cfexecute 加载直到超时。这就是这里的问题。

于 2019-12-20T11:11:14.750 回答