如何安装ActiveX控件,没有正确显示,是怎么回事?

如何安装ActiveX控件,没有正确显示,是怎么回事?,第1张

你进行如下 *** 作可以看到 activex的设置处 打开ie-》工具-》internet选项-》安全--》自定义级别,在这里是设置的。 你把禁用的选择起用就可以 但是电脑的安全性可能会下降 ActiveX控件运行在客户端。我们可以获得客户端的一些信息,如IC卡的信息,客户端的验证等等。但是ActiveX控件也有许多缺点:客户端的部署很困难,如客户端不能正确下载,下载了以后不能正确执行,下载的时候需要设置IE的安全级别等等。 更多的时候,我都在使用COM组件来扩展ASP的功能。准确地说,是服务端运行的Activex Dll组件。使用Server.CreateObject(“工程名.类名”)即可完成对组件的调用。这种方式问题很少,只要组件中以PUBLIC对外暴露方法既可。但是,有时候我们必须使用ACTIVEX 控件(*.OCX)嵌入到网页中执行来获取客户端的信息。这就有了许许多多的一些问题。 这是我们需要解决的N个问题(从简单到难) 1. 如何从服务端获取数据,传递到ActiveX控件中。 1) 初始化时使用参数绑定 2) 运行时得到数据 2. ActiveX控件得到客户端的信息,如何传递到服务端。 3. 安全性 1) 数字签名 2) 使用IOBJSAFE接口 好了,我们开始实例学习。 这个功能演示了如何制作一个简单的控件,并嵌入网页中执行。 工作环境:WINXP+VB6+IE6 我的IE安全设置为安全级别-中。所有的Activex选项设为启用。 打开vb6,新建ActiveX控件工程。 工程名:fOcx,用户控件名:UC1 为了方便,我们使用ActiveX控件接口向导…,菜单->外接程序->外接程序管理器->VB 6 ActiveX控件接口向导。确定即可。 打开ActiveX控件接口向导,下一步,对于可用名称和选定名称我们默认下一步,新建自定义成员,GetInfo类型:属性,下一步,共有方法中选择我们刚才添加的GetInfo,映射到控件选择TxtInfo,成员选择Text,下一步直到完成。代码窗口中会生成一些我们不需要的,删除,剩下的代码如下: Option Explicit '注意!不要删除或修改下列被注释的行! 'MappingInfo=txtinfo,txtinfo,-1,Text Public Property Get GetInfo() As String GetInfo = txtinfo.Text End Property Public Property Let GetInfo(ByVal New_GetInfo As String) txtinfo.Text() = New_GetInfo PropertyChanged "GetInfo" End Property '从存贮器中加载属性值 Private Sub UserControl_ReadProperties(PropBag As PropertyBag) txtinfo.Text = PropBag.ReadProperty("GetInfo", "Text1") End Sub '将属性值写到存储器 Private Sub UserControl_WriteProperties(PropBag As PropertyBag) Call PropBag.WriteProperty("GetInfo", txtinfo.Text, "Text1") End Sub OK,好了,我们编译成fOcx.ocx文件,然后F5直接运行,VB会打开一个测试页。如下: E:\Program Files\Microsoft Visual Studio\VB98\UC1.html 同时,打开你的IE浏览器,看到了吧,你做的控件出现在了这个测试页中。 你可以打开测试页,可以看到ClsID,比如:890D1028-298B-45CF-9A64-6ED5A5BACBC9 因为VB编译的时候已经完成注册.所以无法模拟客户端没有安装该控件时出现的提示. 我们继续 使用regsvr32 F:\csdn_vb\com+_activeX\sample1\fOcx.ocx –u卸载 或者 打开注册表,在HKEY_CLASSES_ROOT\CLSID下面找到 890D1028-298B-45CF-9A64-6ED5A5BACBC9项,删除之,当然这种方式还有项存在而没有删除干净. 此时浏览 http://yang/uc1.htm,由于IE中ActiveX设置为启动,所以,控件会显示出来。 下载后的ocx到哪里去了??? 打开该目录(可能有所不同)E:\WINDOWS.0\Downloaded Program Files,看到了吧,fOcx.UC1文件在这个目录下. 原理:客户端下载该控件后,自动注册,然后放在上述这个目录下.这时我们可以打开注册表看看CLSID,呵呵,还是以前的那个. 我们可以右键看看fOcx.UC1的属性,看看相关内容,这里显示了该OCX所依赖的所有文件.所以,你的OCX尽量减少使用高级控件或者第三方的控件,否则,下载就有些问题了. 如果IE中关于ActiveX的选项设为禁用,那么浏览器就会出现对话框”当前安全设置禁止运行该页中的ActiveX控件.因此可能无法正确显示该页”,这个就需要其他的方式来处理了。 一般用户默认的都是禁用ActiveX选项,所以让用户自己设置不太合适。参考资料: http://zhidao.baidu.com/question/1235388.html?si=4

请打开需要添加 ActiveX 控件的工作表。 显示“控件工具箱”,指向“视图”菜单上的“工具栏”,再单击“控件工具箱”。 单击要添加的控件。 在工作表上要放置控件的位置单击。 将控件拖动到所需的大小。 如果要添加复选框、文本框、命令按钮、选项按钮、列表框、组合框、切换按钮或标志,请输入要在控件上显示的文本。

*** 作方法用鼠标右键单击控件。 将鼠标指针指向快捷菜单上的对象名称(例如,“复选框”对象)。 单击“编辑”。 编辑并键入文本。 完成后,按 Esc。 如果要设置所需控件的属性,请用鼠标右键单击控件,然后单击快捷菜单中的“属性”。有关属性的信息,请在“属性”对话框中按 F1,以显示“Microsoft Visual Basic 帮助”中的“ Microsoft 窗体”部分。请执行下列 *** 作之一:

为控件添加要在 Excel 中使用的 Visual Basic 宏代码用鼠标右键单击控件,再单击快捷菜单上的“查看代码”。在“Visual Basic 编辑器”中编写宏代码。有关编写宏代码的信息,请参阅 Visual Basic 的“帮助”。若要退出,请单击“文件”菜单上的“关闭并返回到 Microsoft Excel”。为控件添加在网页上使用的 Web 脚本如果要将数据发布到网页上,请单击数据所在的工作表的任何位置。在“工具”菜单上,指向“宏”,再单击“Microsoft 脚本编辑器”。在“脚本编辑器”中,编写脚本,同时用控件 ID 来处理控件事件。有关开发 Web 脚本的信息,请在“脚本编辑器”窗口中,单击“帮助”菜单上的所需选项。若要从“脚本编辑器”中返回 Excel,请单击“文件”菜单上的“退出”。若要退出设计模式,并启用 ActiveX 控件,请单击“退出设计模式”。

1、创建OCX工程步骤

运行visual studio2010

2新建项目

3在d出的窗口中选中MFC Activex控件

4输入工程名和存储位置,点击确定

5在d出的窗口中点击完成,就完成了工程的创建

2、给OCX添加方法

打开类视图,选中_DMyOCX

右键添加方法

在d出的窗口中编辑方法的属性及参数

点击下一步,并且完成

在MyOCXCtrl.cpp文件中就可看到我们添加的方法了


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11935983.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存