奇了怪了,几句简单的语句也出错。ASP(VBSCRIPT)用Server.CreateObject调用外部DLL的方法出错,用javascript就可以。

qinmengsu 2015-06-12 05:41:22
代码如下:
<HTML>
<HEAD>
<TITLE>New Page</TITLE>
<object id="VBActiveXTest" align="center" width=0 height=0 codeBase="VBActiveXTest.CAB#version=1,0,0,1" classid="CLSID:4FE13DB5-7F09-49E8-9F5A-DB4D12F94D5E"></object>
<%
Set test = Server.CreateObject("VBActiveXTest.VBTest")
test.StartService(5001)
%>
</HEAD>
<BODY>
<input type="button" value="刷新" id="btnOK"></input>
</BODY>
</HTML>

错误类型:
Active Server Pages, ASP 0115 (0x80004005)
外部对象中发生了可捕获的错误(C0000005)。脚本无法继续执行。

去掉 test.StartService(5001)这一句就没问题了, 貌似实例创建没问题,但调用其中的方法就出错

以下是Javascript 代码,就没问题
<HTML>
<HEAD>
<TITLE>New Page</TITLE>
<object id="VBActiveXTest" align="center" width=0 height=0

codeBase="VBActiveXTest.CAB#version=1,0,0,1" classid="CLSID:4FE13DB5-7F09-49E8-9F5A-

DB4D12F94D5E"></object>
<script language="javascript">
var test = new ActiveXObject('VBActiveXTest.VBTest');
test.StartService(5001);
</script>
</HEAD>
<BODY>
<input type="button" value="刷新" id="btnOK"></input>
</BODY>
</HTML>

但是我需要用vbscript在服务器创建,方法要在服务器端运行,请问怎么处理啊。不知道为什么ASPli调用会出错?

...全文
453 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
toury 2015-06-13
  • 打赏
  • 举报
回复
没仔细看,貌似: 1、首先,<object>标签是用来在浏览器端引用对象的。 2、你那段JS代码是浏览器端代码,所以可执行。 3、上面的vbs代码是服务器端代码,而你仅仅用<object>标签在浏览器端引用对象,服务器怎么可能找到你要的对象呢?当然会报错。 4、你的DLL需要在服务器上注册才可以用server端的VBS代码调用。
qinmengsu 2015-06-12
  • 打赏
  • 举报
回复
这个VBSCRIPT的服务器端调用外控件的代码有时可以运行,有时出现上面这个错误,网上查了有说是IIS的问题,但我重装了IIS,然后在里面的权限也设为了“纯脚本和应用程序”,还是不稳定,有时可以有时不行 。我的系统是WINXP+IIS5.1。有没有高手知道这个怎么解决啊?我一定是想在服务器端执行调用的,因为我不想可以看到我的代码。谢谢!

4,009

社区成员

发帖
与我相关
我的任务
社区描述
它是一种微软环境下的轻量级的解释型语言,它使用COM组件、WMI、WSH、ADSI访问系统中的元素,对系统进行管理。
社区管理员
  • vbScript社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧