用vc写了一个com组件,并已在注册表下注册,在asp.net中调用出现问题,代码如下:
<script type="text/javascript">
onload = function()
{
var obj = new ActiveXObject("AtlTest.CDataAceess");
if (obj == NULL)
{
alert("失败!");
}
else
{
alert("成功!");
}
} </script>
运行出错:automation服务器不能创建对象,在网上查过一些资料,相关的措施如:regsvr32 scrrun.dll,设置Internet 自定义级别 对没有标记为安全的ActiveX控件进行初始化和脚本运行,都未能解决,望高人赐教!
<script type="text/javascript">
onload = function()
{
var obj = new ActiveXObject("AtlTest.CDataAceess");
if (obj == NULL)
{
alert("失败!");
}
else
{
alert("成功!");
}
} </script>
运行出错:automation服务器不能创建对象,在网上查过一些资料,相关的措施如:regsvr32 scrrun.dll,设置Internet 自定义级别 对没有标记为安全的ActiveX控件进行初始化和脚本运行,都未能解决,望高人赐教!
<object classid='clsid:AA592A66-D691-4B84-80AF-5D0A40C9E460(这个ID你那里可能不一样)' name='com组件名称' id='aa'></object>在该页面通过JSfunction test()
{var ctrl =document.all('com组件名称'); }
我的是这样,不知道楼主这样行不行,还有,上面的贴写错了,可以不放在BIN里面
STDMETHODIMP CCDataAceess::Hello(void)
{
AFX_MANAGE_STATE(AfxGetStaticModuleState());
::MessageBoxA(NULL,"HelloWord","Test", MB_OK);
return S_OK;
}
我在html代码中调用如何调用这个方法呢?ctrl.Hello()吗?这样没效果啊!
var ctrl =document.all('这里不是name,应该是ID');
难怪找不到里面的方法,再试试