您的位置:首页 > 编程语言 > C#

VS2010 C#中实现在调用第三方ocx控件时,无需手动注册ocx控件

2017-08-10 15:54 423 查看
       最近在用C#写一个窗体上位机,作为新手的我,历经万难终于在自己的电脑上实现了功能,可是当把生成的文件夹拉到别人的电脑上时,却运行不了,显示CLR20r3错误,在网上找了很多的方法,都不行。后来确定错误的原因是,我调用了第三方ocx控件,我在我的电脑编辑时通过regsvr32来注册(需要以管理员的身份来运行,具体注册参考网上),而别人的电脑上没有注册那个控件,所以运行不了。果然,在别的电脑上通过regsvr32注册后,就能运行了。

       但是如果作为一个好的产品,不可能叫每个人都要在电脑上手动注册吧,毕竟太麻烦了,我又去查找了网上的资料,终于找到了两种可行的方法,当然,条条道路通罗马,肯定也是有别的方法,事不宜迟,马上开车。

       工具:VS2010,第三方ocx控件(XXX.ocx)

       方法一:直接将运行程序打包,并在打包时将ocx控件加入其中,实现一起打包,在程序安装时,系统会自动实现注册ocx控件。

       该方法参考:http://blog.sina.com.cn/s/blog_732a118101015nco.html

     

      方法二:直接调用ocx,不向系统注册。

      该方法的原文为http://www.fiveoxen.com/1.html

      注意的细节:

      1、VS的开发人员命令行,在开始菜单那里,找到Microsoft Visual Studio 2010,会有命令行

      2、在输入命令生成manifest文件时,需要确定你的ocx控件所在的路径。

      3、如果有原项目,是在原项目上添加app.manifest,而不需要重新建一个项目。

     4、最后,VS一般生成的EXE文件都是在bin文件夹下的debug或者release文件夹中(看你自己的选择),所以要把ocx控件放在debug或者release文件中。

     

          

  



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: