首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >CFExecute未执行命令

CFExecute未执行命令
EN

Stack Overflow用户
提问于 2010-05-05 23:26:23
回答 3查看 4.7K关注 0票数 2
代码语言:javascript
复制
<cfset LOCAL.cmd = expandPath('..\library\gm.exe') />
<cfset LOCAL.args = "convert image1.jpg image2.jpg" />

<cfexecute variable="gm" errorVariable="error"
 name="#LOCAL.cmd#" 
 timeout="10" 
 arguments="#local.args#" />

<cfdump var="#gm#" />

这段代码在gm中总是产生一个空字符串。无论我如何执行gm,不管有没有参数。其他示例可以很好地运行cmd.exe或netstat.exe,就像在CFDocs示例中一样。我在errorVariable中没有收到任何抛出的错误或警告,它什么也不做。

我修改了代码,这个版本也不起作用:

代码语言:javascript
复制
<cfset LOCAL.cmd = expandPath('..\library\gm.exe') />
<cfset LOCAL.args = "convert ""#variables.uploadDirectory##LOCAL.file.source#"" ""#variables.uploadDirectory#optimal-#LOCAL.file.source#""" />
<cfexecute  errorVariable="error"
    name="c:\windows\system32\cmd.exe" 
    timeout="10"
    outputFile="#expandPath('.\gm.log')#" 
    arguments="/C #local.cmd# #LOCAL.args#" />
EN

回答 3

Stack Overflow用户

发布于 2010-05-05 23:57:03

权限问题是最常见的原因。但是,如果您运行的是CF8,您也可以尝试使用redirecting the error stream and adding an explicit terminate flag。看看您是否得到任何输出或看到不同的行为。早期版本没有捕获错误流,这会导致一些进程挂起。这是在一个CF8更新器中修复的。

更新:我刚刚注意到你的图片路径是相对的。也许程序很难找到它们。尝试使用图像的绝对路径。

更新:我用CF9测试过了。当使用绝对图像路径时,它确实起作用。尽管"gm“变量是可以理解的空的,因为输出是指向图像文件的。

代码语言:javascript
复制
<cfexecute variable="gm" 
    errorVariable="errorOut"
    name="C:\GraphicsMagick-1.3.12-Q16\gm.exe" 
    timeout="10" 
    arguments="convert c:\art.gif c:\artCopyFromCF9.gif" />

<cfdump var="#variables#">  
票数 4
EN

Stack Overflow用户

发布于 2010-05-05 23:33:43

在看不到代码或服务器设置的情况下,我猜您需要检查CF运行所使用的用户帐户的权限。

如果CF在默认用户下运行,则可能需要创建一个用户,该用户可以访问您正在尝试执行的任何操作。然后将服务更改为在此用户下运行。或者,您可以为您尝试访问的资源分配更自由的权限。

票数 1
EN

Stack Overflow用户

发布于 2015-09-11 06:28:18

我在使用cfexecute和GraphicsMagick时也遇到过这种情况。我认为,通用汽车是异步运营的,并在完成之前返回。运行一些使用outputFile/errorFile而不是与其等效的变量的测试,然后cffile读取输出文件上的FileInfo (根据测试脚本,它是空的,但在打开时观察到有内容),我看到带有内容的输出文件的修改时间实际上在fileInfo产生的最后一个修改时间戳之后。

我认为,如果您输出到一个会话变量或其他可以被另一个模板拾取的类型,您可以观察到填充了会话变量的执行结果,前提是另一个模板在实际设置变量之后执行。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2774564

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档