Coldfusion CFExecute不适用于imagemagick';s命令

Coldfusion CFExecute不适用于imagemagick';s命令,coldfusion,imagemagick,coldfusion-9,cfexecute,Coldfusion,Imagemagick,Coldfusion 9,Cfexecute,我使用ColdFusion的cfexecute:composite-geometry+2+2“C:\Inetpub\wwwroot\isubscribe\u uk\diomedes\www\images\newsletter\316\resized.png”“C:\Inetpub\wwroot\isubscribe\u uk\diomedes\www\images\newsletter\templateImages\isubscribe\blank.png”“C:\Inetpub\wwwroot

我使用ColdFusion的
cfexecute
composite-geometry+2+2“C:\Inetpub\wwwroot\isubscribe\u uk\diomedes\www\images\newsletter\316\resized.png”“C:\Inetpub\wwroot\isubscribe\u uk\diomedes\www\images\newsletter\templateImages\isubscribe\blank.png”“C:\Inetpub\wwwroot\isubscribe\u uk\diomedes\www\images\newsletter\316\part1.png”


由于某种原因,上面的方法不起作用。虽然当我直接在命令提示符下运行命令时,它就起作用了


有什么想法吗?

CFExecute忽略被调用进程发送到标准错误的任何内容。要查看是否生成了任何错误输出,请将“errorVariable”参数添加到CFExecute调用中,然后检查是否有任何内容,并让脚本做出相应的反应

<cfexecute name="..command to run..."
                arguments='.. your arguments...'
                variable="results"
                errorVariable="errorOuptut"
                ></cfexecute> 

<cfif len(errorOuptut)>
    <cfthrow message="#errorOuptut#" />
</cfif>

更多信息请点击此处:

您是否收到错误(检查日志)?ColdFusion用户是否有权执行exe文件?如何转义引号?如果在调用
cfexecute
之前转储
参数.cmdArg
变量,则“得到什么?1)”不起作用"不明确,。实际结果如何?您是否得到任何输出:变量、错误日志等等?2) 最好指定可执行文件ie
c:\path\to\composite.exe
的完整路径,以确保runtime.exec可以找到该文件。3) 正如@Miguel-F所提到的,ColdFusion服务器运行在哪个用户帐户下?这是您通过命令行测试的同一个帐户吗?我在cfexecute和appcmd.exe方面有问题。我最终使用命令shell(cmd.exe)使其工作。你可以在这个问题/答案中看到我的回答,了解更多信息:这也是一个很好的建议。只需确保使用完整路径,如@ScottJibben的示例中所示。CFExecute会忽略发送到标准错误的任何内容。在8.0.1之前,cfexecute没有捕获可能导致进程挂起的stderr。版本8.0.1,添加了捕获stderr并将其发送到新的
errorVariable
属性的功能。
<cfexecute name="..command to run..."
                arguments='.. your arguments...'
                variable="results"
                errorVariable="errorOuptut"
                ></cfexecute> 

<cfif len(errorOuptut)>
    <cfthrow message="#errorOuptut#" />
</cfif>