关于引用mshtml的问题[通俗易懂]

今天看了个验证码识别的代码,其中引用到了mshtml.dll,找了半天原来就是microsoft.mshtml.dll。查这个dll的时候还发现了好几篇关于这个dll添加问题的文章。顺便看了下,原来这个dll有三个,添加引用时要注意了。   第一篇文章:   1.添加引用的问题   一般在开发环境下会在三个地方存有microsoft.mshtml.dll文件。所以在添加引用时,也

大家好,又见面了,我是你们的朋友全栈君。

    今天看了个验证码识别的代码,其中引用到了mshtml.dll,找了半天原来就是microsoft.mshtml.dll。查这个dll的时候还发现了好几篇关于这个dll添加问题的文章。顺便看了下,原来这个dll有三个,添加引用时要注意了。
    第一篇文章:
    1.添加引用的问题
    一般在开发环境下会在三个地方存有microsoft.mshtml.dll文件。所以在添加引用时,也会出现三个看似一样的项。对于开发者来说,引用其中任何一个都不会影响到正常的开发。但问题会出在软件发布之后!在客户的机子上运行时,通常会提示文件的签名不正确,无法加载。
解决的方法就是删除现在对mshtml引用。重新选择正确引用。就是选最下面那个。路径是:X:\Program Files\Microsoft.NET\Primary Interop Assemblies\Microsoft.mshtml.dll 。把引用对话框拉大,可以看到文件的路径。
    2.类型选择错误
    如果问题一解决了,或者开始就选对了。可能客户机了上运行又报 System._ComObject 无法强制转换到 HtmlWIndow2Class 、HtmlDocumentClass或其它类似的错误。在开发者的机子上运行,却完全正常。这时通常我们会狂抓,完全不知是什么原因!在开发环境下用obj.toString()显示是HtmlXXXXClass在客户机上得到结果却是System._ComObject.解决方法很简单用HtmlXXXX替换HtmlXXXXClass即可。
     第二篇文章:
    也是用到了Microsoft mshtml.dll程序集,但是安装在用户电脑后,异常:
System.Reflection.TargetInvocationException: 调用的目标发生了异常。 —> System.IO.FileNotFoundException: 未能加载文件或程序集“Microsoft.mshtml, Version=7.0.3300.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”或它的某一个依赖项。系统找不到指定的文件。
解决方法如图,选择高亮的那个dll就可以了。

关于引用mshtml的问题[通俗易懂]
属性选择:
复制本地=True
特定版本=false;  
原因是:
因为 Microsoft.mshtmal.dll 这个 dll 是从 system32 文件夹下的 mshtml.tlb(COM 类型库文件)中导出的,因此我们只需要用 VS2008 自带的 TlbImp.exe COM 类型库导出工具将这个 tlb 文件再导一遍就可以了。

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/125800.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • webstorm 格式化代码及常用快捷键 

    webstorm 格式化代码及常用快捷键 webstorm格式化代码快捷键centOS下Ctrl+Shift+lwindows下Ctrl+Alt+lmac下Option+Command+l查找/代替快捷键说明ctrl+shift+N通过文件名快速查找工程内的文件(必记)ctrl+shift+alt+N通过一个字符快速查找位置(必记)ctrl+F在文件内快速查找代码F3查找下一个shift+F3查找上一个ctrl+R文件内代码替换c…

  • linux phpstorm2021.3.24 激活码破解方法

    linux phpstorm2021.3.24 激活码破解方法,https://javaforall.cn/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

  • 国内常用公共DNS服务器、各省运营商DNS服务器汇总

    原文  http://www.francissoung.com/2016/03/14/常用公共DNS服务器/主题 DNS服务器 服务器 运营商不知道大家有没有过网络是正常的,QQ可以正常登录、游戏也可以正常玩,但是网页无论如何都打不开。这就是电脑网络设置的DNS服务器有问题,不是其故障就是不工作了。换了DNS服务器成功解决问题。下边给大家分享一下国内比较大型大众常用

  • python里字符串转数字_c 字符串转数字

    python里字符串转数字_c 字符串转数字python数字转字符串的实现方法:1、使用格式化字符串,语句如“tt=322tem=’%d’%tt”;2、通过“str(5)”方法实现转换。推荐:《python教程》数字转成字符串方法一:使用格式化字符串:tt=322tem=’%d’%tttem即为tt转换成的字符串常用的格式化字符串:%d整数%f%F浮点数%e%E科学计数%g%Ge和%f/%E和%F的简写%%输出%格式化…

    2022年10月12日
  • MOS管如何检测好坏[通俗易懂]

    MOS管如何检测好坏[通俗易懂]系列文章目录1.元件基础2.电路设计3.PCB设计4.元件焊接6.程序设计9.检测标准MOS管是金属—氧化物—半导体场效应晶体管,或称是金属—绝缘体—半导体。MOS管的source和drain是可以对调的,他们都是在P型backgate中形成的N型区。在多数情况下,这个两个区是一样的,即使两端对调也不会影响器件的性能。这样的器件被认为是对称的。双极型晶体管把输入端电流的微小变化放大后,在输出端输出一个大的电流变化。双极型晶体管的增益就定义为输出输入电流之比(beta)。另一种晶体管,叫

  • 龙族之路明非_龙族路鸣泽

    龙族之路明非_龙族路鸣泽该楼层疑似违规已被系统折叠隐藏此楼查看此楼第二天早上“嗯……睡得好香啊……”路明非一边伸着懒腰,一边慢慢的支撑起自己的身体准备起床,那还没睁开的睡眼还挂着一些眼屎。但是在路明非双手下压时,并没有抓到预料中的床单,而是抓到更为柔软的东西。“咦,宾馆什么时候换的床单啊?怎么这么软,好像妹子的胸器啊。”说着路明非下意识的抓了一下。“啊……”可是他身下的所谓的“床单”却发出了一阵惊呼声。路明非听到这声音…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号