• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >vc/mfc > 问个activex在网页上的发布问题

问个activex在网页上的发布问题

作者:佚名 字体:[增加 减小] 来源:互联网 时间:2017-06-04

佚名通过本文主要向大家介绍了网页阻止activex,网页activex控件,此网页上的activex,在此网页上的activex,360网页阻止activex等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: 问个activex在网页上的发布问题
描述:

做了一个activex, 在网页中嵌入使用, 目前嵌入对象用的是:
<object         
 classid="CLSID:E1A66278-D0AD-436C-BB19-00D78FA7F4C1" name="UpLoadDlg"
 id="UpLoadDlg" width=0 height=0>
传递参数, 调用方法:
document.getElementById("UpLoadDlg").Folder = "aaa";
document.getElementById("UpLoadDlg").UserID = "bbb";
document.getElementById("UpLoadDlg").Sid = "ccc";
document.getElementById("UpLoadDlg").Run();
调用activex的方法就不说了, 现在的 问题是希望在网页中能够用
<object         
 classid="CLSID:E1A66278-D0AD-436C-BB19-00D78FA7F4C1" name="UpLoadDlg"
 id="UpLoadDlg" width=0 height=0 codebase="UpLoad.CAB#version=1,0,1,3"">
<param name="Folder" value="aaa">
<param name="UserID" value="bbb">
<param name="Sid" value="ccc">
</object>
的形式嵌入对象并传递参数, 也就是说第一要把activex做成一个自注册的cab包
第二好像在开发的时候要作些工作才能支持<param name="Sid" value="ccc">形式的参数传递
目前我的Folder, UserID, Sid都是自动化接口提供的属性, 听说要做成“控件属性”才能支持以上形式的参数传递, 请问一下, 该如何让我的控件做到这一点, 需要改odl文件? 还是其他什么?
控件安装的问题, 决定提供一个exe安装包供用户下载使用, 但在网页中还是要用cab包
我用IExpress做了一个Activex cab安装包, 也参照网易那个控件的格式放了一个inf安装文件进去
但使用中好像效果不对, 没有象3721那种自动下载, 然后有个提示“是否安装。。。”之类的。
是不是因为我的控件没有安全认证?


解决方案1:

抢分来了,活活
http://www.vckbase.com/document/viewdoc/?id=1547

解决方案2:

是不是因为我的控件没有安全认证?
   是的,cab要进行签证,才有你说的那种提示效果;或者可以做到改变客户端的ie安全级别,允许没有签证的cab.
调用activex的方法就不说了, 现在的 问题是希望在网页中能够用
   你所要的这个功能是ActiveX属性包的实现。网上很多的,以下是我写的日志:
1)描述:在ActiveX中,增加属性包后,在网页中可以通过属性包在控件初始化前将参数传入控件中,如下:
<object id='' classid=''>
<param name='str' value='test'>
</object>
 
2)步骤:
  a)为控件接口添加属性.在WorkSpace中,右击接口名,选择"Add property"后,在property中分别添入参数类型(BSTR)和属性名(Name)即可.
  b)在类中加入继承 public IPersistPropertyBagImpl<CXXX>,并添加响应的接口映射,如下;
BEGIN_COM_MAP(CXXX)
   COM_INTERFACE_ENTRY(IPersistPropertyBag)
END_COM_MAP()
 
BEGIN_PROP_MAP(CXXX)
 PROP_DATA_ENTRY("_cx", m_sizeExtent.cx, VT_UI4)
 PROP_DATA_ENTRY("_cy", m_sizeExtent.cy, VT_UI4)
 // Example entries
 // PROP_ENTRY("Property Description", dispid, clsid)
 // PROP_PAGE(CLSID_StockColorPage) 
 PROP_ENTRY("Name", 6, CLSID_NULL)       // 6 -> dispid,dispid为接口属性的id
END_PROP_MAP()
 
你可以通过双击接口,在接口定义中看到dispid.如下:id(6)
  [propget, id(6), helpstring("property Name")] HRESULT Name([out, retval] BSTR *pVal);
  [propput, id(6), helpstring("property Name")] HRESULT Name([in] BSTR newVal);
 
  c)定义一个成员变量,用来存放传入的参数.CComBSTR m_bstrValue;在你定义的属性中,(加入如下黑体的行)用以保存传进来的参数值.
STDMETHODIMP CVMShow::get_Name(BSTR *pVal)
{
 *pVal = m_bstrValue.Copy();
 return S_OK;
}
STDMETHODIMP CVMShow::put_Name(BSTR newVal)
{
 m_bstrValue= newVal;
 return S_OK;
}
  d)网页的交互为,如果控件有窗口的话.(这些交互在ActiveX对话框的初始化前就进行了)
<object id='' classid=''>
<param name='Name' value='test'>
</object>

解决方案3:

http://msdn.microsoft.com/library/default.asp?url=/workshop/components/activex/safety.asp


分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • ActiveX在网页中不能显示Dialog的问题
  • 嵌在网页里的ACTIVEX控件不能销毁的问题。
  • activex在网页中的问题
  • 哪里有开发用于嵌入网页的activex的教程?
  • Activex的网页中,如何做到分栏
  • 请教activex网页显示问题
  • 关于网页中的Activex控件的右键菜单问题
  • 关于activex网页调用的问题,急死了!!!!!!!!!!!!!!!!!!!!111
  • ActiveX控件可不可以用newActiveXObject方式在网页中创建
  • Activex控件事件无法通知网页?有谁知道为什么啊?

相关文章

  • 2017-06-05 如何创建lib导出函数?
  • 2017-06-05 线程互斥问题
  • 2017-06-04 采用ATL写的COM组件,Debug没问题,Release就出问题了。
  • 2017-06-04 EDIT控件如何把text文本属性,绘制到控件窗口的,可以拦截这个动作吗
  • 2017-06-05 子线程消息队列问题,请教。
  • 2017-06-05 在DLL中,怎么才能保持一个函数激发的状态!
  • 2017-06-05 已知某路径,怎样吧该路径下的文件列出
  • 2017-06-05 有关CreateEvent的小问题,谢谢!
  • 2017-06-05 DLL简单问题
  • 2017-06-04 如何实现类和结构体封装成com

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • errorRC2135:filenotfound:ArenaArrayEditorCtlb
    • C++中VisioDrawingControl如何使用?
    • 网页进度条问题
    • 有关VC调用surfer的问题
    • VC操作word2003,自动保存文档问题
    • 这个多线程程序怎么写?
    • 再问个串口发送的小问题
    • 怎样取得用ATLObjectWizard向导生成的Edit控件的变量值
    • 如何知道CreateDispatchclsid,null中的clsid是否有效?
    • VC+MapX+需找附近图元

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有