这是一个示例:
<cfset cmd="get-date -format g" />
<cfset args="-inputformat none -Command " & cmd />
<cfoutput>
<cfexecute name="powershell.exe" variable="result" errorvariable="err"
arguments="#args#" timeout="99" />
<p>Result: <cfif result neq "">#result#<cfelse>None</cfif></p>
<p>Error: <cfif err neq "">#err#<cfelse>None</cfif></p>
</cfoutput>
在带有 ColdFusion 10 的 Windows 2008 R2 上,这会将 PowerShell 命令的输出准确地放入结果变量中。升级到 ColdFusion 11 后,此代码将毫无错误地执行,但没有结果。
如果我尝试其他一些可以保存文件或其他内容的命令,则没有证据表明 PowerShell 命令甚至正在执行。
我已经针对升级的 ColdFusion 11 进行了测试,并通过全新安装 ColdFusion 11。在所有情况下,我都将 CF 用作独立服务器。我尝试过使用或不使用 CF 11 更新/修补程序。我已经验证了运行 CF 的用户帐户具有执行 PowerShell 的权限。
感谢您对此问题的帮助和/或证实。我错过了什么?如果这是一个错误,关于如何从 CF 11 向前执行一些 PowerShell 命令的任何想法?
谢谢参观!