我有一个CFEXECUTE标记,类似于以下内容:
<cfexecute timeout="10"
variable="result"
name="#PathToExecutable"
arguments="#myArgs#">
</cfexecute>我遇到的问题是,并不是所有的输出都被标记捕获。当我直接从命令行运行可执行文件时,它会一个接一个地打印出几行文本,但不是全部同时打印出来。我需要检查最后一行的文本输出。
但是当我使用CFEXECUTE运行可执行文件时,它似乎捕获了第一行输出,假设流程已经完成,然后返回到运行我的CF脚本。
有没有其他人遇到过这种情况,如果是的话,有没有可能的解决方案?
更多信息:
下图显示了从命令行运行可执行文件时产生的输出。黄色部分是CF返回的全部内容。我需要的信息是绿色部分。包含CFEXECUTE标记的脚本运行得非常快,在返回输出之前绝对没有达到完整的超时值。

发布于 2014-04-29 12:28:07
经过多次测试,我找到了答案。
如果要扫描的文件的路径包含空格,则必须位于cfexecute标记的参数参数中的双引号中。
<cfexecute timeout="10" variable="result" name="#pathToExe#" arguments='"#pathToScan#"'></cfexecute>如果文件路径不正确/不存在,则此可执行文件似乎不会返回任何有用的错误文本,而只是返回上面图像中突出显示的黄色行。
https://stackoverflow.com/questions/23345713
复制相似问题