如何在HTML里使用com组件?

cdpcsc 2011-04-20 03:13:30
<OBJECT ID="CallHelper" CLASSID="CLSID:ABD696D5-BEBF-4332-B8D2-2B44BD23B58B"></OBJECT>

这种方法只能引用ActiveX控件吗?
我看MSDN的描述
The format the classid string is "clsid:XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" for registered Microsoft ActiveX Controls.

我的一个普通的COM控件,不是Acitvex控件可以这样用吗?如果不行,该如何用?

...全文
164 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhonglingqqxh 2011-04-21
  • 打赏
  • 举报
回复
要实现了IDipsatch的com组件就可以
cdpcsc 2011-04-20
  • 打赏
  • 举报
回复
又试了一下,我在CallHelper.call方法里加个messagebox,发现网页成功调用了这个方法。
但是:
STDMETHODIMP CCallHelper::call(VARIANT num)
{
// TODO: 在此添加实现代码
::MessageBox(NULL,_T("adasfdfsaasdf"), _T(""), MB_OK);
Fire_call(num);
return S_OK;
}
Fire_call(num) 失败,应该是没找到接收器的指针。但是我程序里确实已经注册了啊。
谁能告诉我什么原因?
cdpcsc 2011-04-20
  • 打赏
  • 举报
回复
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>

<body>
<OBJECT ID="CallHelper" CLASSID="CLSID:0AE7FA82-11E7-453F-AE3D-EB3EBA8A3B03"></OBJECT>

<script language="javascript" type="text/javascript">
function call_out(phone_num)
{
if(parseInt(phone_num) != "" && parseInt(phone_num) != "NaN")
{
CallHelper.call(phone_num);
alert(phone_num);
}
else
{
alert("电话号码错误!");
}
}
</script>
<div style="margin:200px auto;font-size:36px;font-weight:bold;">
<a href="javascript:void(0);" onclick="call_out('15210208937')" title="点击进行呼叫">15210208937</a>
</div>
</body>
</html>


我用dhtmldialog打开这个文件,点上面的链接alert也出来了。
但是程序中的invoke 收不到消息。

我若在程序里直接调用call方法,invoke方法可以收到消息。

为什么在Html里不能用呢?
cdpcsc 2011-04-20
  • 打赏
  • 举报
回复
我没说明白吗?

3,248

社区成员

发帖
与我相关
我的任务
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
  • ATL/ActiveX/COM社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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