• 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 > ocx在其它的电脑上不能正常显示

ocx在其它的电脑上不能正常显示

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

佚名通过本文主要向大家介绍了mscomctl.ocx,comdlg32.ocx,ocx控件安装,ocx,comdlg32.ocx下载等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: ocx 在其它的电脑上不能正常显示
描述:

Hi,
   大家好!
   本人用MFC开发了一个OCX控件,写了简单的网页测试代码,在自己的电脑上是可以正常显示并起作用的.
可是,在同事的电脑上,打开同一个网页,显示的却是一个白色的框框和一个红色的小叉.初步想了一下,
是不是因为自己的电脑已经对这个控件在编译的时候,注册过了,而在别人的电脑上,没有注册.
不知道是不是这个原因,还是由什么其它的原因造成的?又该如何解决呢?
贴上测试的网页代码:
<html>
  <head>
  <title>DialogControl</title>
  
  <SCRIPT LANGUAGE="JavaScript">
function PassParameter()
{
arsplayer_ocx.LoadParameter();
}
</SCRIPT>
  </head> 
  <body>
  <center>
  <OBJECT  ID="arsplayer_ocx" CLASSID="CLSID:3AD1C56A-4F33-4245-ABFC-6190E4528D08"
   HEIGHT=550 WIDTH=565
   CODEBASE="arsplayer_ocx.ocx">
  </OBJECT>
  
  <p></p>
  
  <INPUT TYPE="button" NAME="Submit" VALUE="Submit"   />
  </center>
  </body>
  </html> 


解决方案1:

Active 控件只有在使用 IE 引擎的浏览器才能显示,如google,firefox 都不支持 ActiveX。一个ActiveX控件如果想在其它人的器上正常加载必需设置数字签名,然后打包成CAB 文件(CAB也需要做数字签名)上传到服务器,这样浏览器才会认为是安全的控件,否则会被拦截掉。做数签名需要签名证书及私钥文件,签名证书需要有根证书及私钥文件。vstudio 2005/2008 带有签名工具,可以自已创建证书。
证书用命令(VS2008):
makecert.exe (创建证书)
cert2spc.exe (转换证书为发行者证书)
SignTool.exe (对 exe,cab,ocx 等文件进行数字签名)
示例:
<object classid="clsid:XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" id="MyActivex" width="100%" height="100%" codebase="/MyActivex.cab#version=1,0,0,000"> 
<param name="mode" value="1"/>
...
...
</object>

解决方案2:

我之前也遇到过这样的问题,我在自己机器上运行就可以,其他所有机器运行都有问题。我以为是机器的问题,后来有一天我在添加其他东西的时候无意发现我的代码有一行有点小问题,不影响编译。于是我自己机子运行可以,别人就不行。你也可以试试找找自己程序的问题。我当时就是在构造函数初始化的时候写错了一点。你可以找找看看。

解决方案3:

regsvr32 xxx.ocx

解决方案4:

引用 4 楼 chenqing221284 的回复:
regsvr32  a.ocx
这句话可以放在我上面所说的网页里面执行么,免得用户进行过多的操作,具体放在什么地方呢?

打包成cab,第一次使用的时候会提示用户安装。

解决方案5:

部分非基于IE的浏览器可能无法正常显示,不要强求。


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

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

  • 非常奇怪的问题,ocx出古怪的错误,请大家帮我看看
  • 注销ocx后仍驻留内存
  • 在OCX中的弹出菜单为什么会变灰??
  • ocx中事件不能在html文件中被触发?请高手指点。回复送分
  • 关于OCX问题
  • 请COM高手帮助,如何重定向OCX控件
  • ocx注册问题,谢谢!
  • vb和vc开发ocx控件哪个更适合?
  • ocx中的线程中访问网页
  • ocx中添加属性时为什么属性名不能带下划线

相关文章

  • 2017-06-04 如何查找依赖的ACTIVEX部件?
  • 2017-06-05 如何用rundll32exe来自动调用自己的dll
  • 2017-06-05 能否赐教一下,如何保护自己写的dll不被别人非法使用
  • 2017-06-05 在vc里怎样执行一个DOS命令,或者批处理啊,小弟谢了
  • 2017-06-05 在vc下怎么调试多线程?搜索过以前的文章说的不是很清楚!!与此相关的大家都来说两句吧!
  • 2017-06-05 线程里的SLEEP操作
  • 2017-06-04 父进程创建10个子进程,子进程和父进程之间通信问题
  • 2017-06-04 我写了一个activeX控件,为什么用regsvr32注册说找不到指定的模块???
  • 2017-06-04 关于comm的问题
  • 2017-06-05 这段多线程的代码为何非法操作?

文章分类

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

最近更新的内容

    • 高分相送:如何从资源dll中枚举字符串资源?up有分。
    • 大家认为在C#中有什么东西可以替代COM,COM和COM+有什么区别,COM我只知道是组件到底有什么用?谁可以给我个COM简单应用的例子
    • 多线程的程序怎么调试?
    • DLL中添加DIALOG出错
    • 求助,扩展DLL中的全局变量,导入主程序,是否为主程序的全局变量?
    • ASP与用Delphi编写的COM+之间如何传递数组类型的参数?
    • 自己用API写的服务,可启动时有时会提示1053错误,有时正常,请高手指点。
    • asp中,写ServerCreateObject与CreateObject有什么区别?
    • 性价比比较高的问题
    • 线程资源,Ctime

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

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