Winform下的HTMLEditor引用Microsoft.mshtml的注意事项

最近做了一个winform下的htmleditor,引用了一个 Microsoft.mshtml,在本地运行没有问题(有装VS),但发到测试(没装VS,只有运行库),结果界面不出来了,搞了好久,在网上了些文章,现在整理一下:

 

 以个人本机为例,总结了一下,mshtml的问题处理方式如下:

      1. C:\WINDOWS\system32\mshtml.dll 为win32下的调用,net无法使用

      2. 查看C:\Program Files\Microsoft.NET\Primary Interop  Assemblies\Microsoft.mshtml.dll  文件,如果有此文件,则可以拷贝此文件,并让开发的程序引用该文件,在客户机上安装时,该文件要一起打包安装。如果没有该文件,可以尝试在 C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727目录下运行RegAsm.exe,注册1.中描述的 mshtml.dll组件,注册后,Primary Interop Assemblies目录中便出现了该dll。

      3. 在安装了net sdk的环境中,Visual Studio 2005和Visual Studio  2008都安装了sdk,可以运行gacutil.exe,将Primary Interop  Assemblies目录下的Microsoft.mshtml.dll注册到全局程序集缓存中,因此在运行程序时,程序便可不用再带着 Microsoft.mshtml.dll一起移动了。

      另:a>一般在开发电脑中会有sdk,因此可以将Microsoft.mshtml.dll注册到全局程序集缓存中,但是在客户机上,通常只装了.Net Framework,还是让程序带着Microsoft.mshtml.dll一起运行更方便。

            b> 另外,有时我们也可以在C:\Program Files\Microsoft Visual Studio  9.0\Visual Studio Tools for Office\PIA\Office11 目录或  C:\Program  Files\Microsoft Visual Studio 9.0\Visual Studio Tools for  Office\PIA\Office12目录下发现该组件。不要使用这些dll, net需要使用有强名称的dll,这些不适用。

    

建议

建议把mshtml文件放在安装包中带走,并设置注册,就不会出现问题。

  在安装项目中-->"添加“-->“程序集”,找到路径为“

C:\Program Files\Microsoft.NET\Primary Interop Assemblies\"的
Microsoft.mshtml,然后属性"Register"-->"vsdraCOMRelativePath",OK.发布就行了

 

 

参考文章:

mshtml在net中的使用问题

 

 

http://www.cnblogs.com/oooo/archive/2009/05/21/1486509.html

 

mshtml组件引用的问题

 

 

http://www.cnblogs.com/catcn/archive/2009/06/11/1501266.html
 
Winform部署mshtml程序集出错的一个解决方案

http://www.cnblogs.com/downmoon/archive/2010/03/08/1680834.html

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值