我的本地电脑上有一个vbs脚本,我可以通过双击它来运行。 脚本运行正常。
我有一个php页面,如果请求尝试运行相同的vbs脚本。问题是,当我的php运行时,它会调用我的vbs脚本,并在它到达需要创建对象的点时失败。
如果我从php调用vbs脚本,如何创建我的对象?
PHP代码。
$command = 'wscript.exe C:/eClaimsAPI/SendToTelus.vbs';
/*
* wait for command to return a exit code?
*
* true = waits for the command to complete, before continuing this script
* false = executes command then continues this script without waiting for command to exit
*
*/
$wait = true;
// run it
$obj = new COM ( 'WScript.Shell' );
if ( is_object ( $obj ) )
{
$obj->Run ( 'cmd /C ' . $command, 0, $wait );
}
else
{
echo 'can not create wshell object';
}
$obj = null;
VBS代码
Dim nErr
Dim szXML
Dim strMsgType
Dim ID
Dim ID2
Dim oServer
Set TypeLib = CreateObject("Scriptlet.TypeLib")
ID = TypeLib.Guid
ID = Replace(ID,"{","")
ID = Replace(ID,"}","")
Set oServer = WScript.CreateObject("eCLaimsAPI.Api")
问题发生在(Set oServer)
的最后一行错误:无法创建名为“eClaimsAPI.Api”的对象 代码:80040154 来源:WScript.CreateObject
答案 0 :(得分:0)
感谢Lankymart,我能够解决这个问题。
经过一番挖掘和研究后,我发现我的具体问题最终成为我的应用程序池>高级设置>启用32位应用程序设置为true。关掉它解决了我的问题。