我做了一个WPF/C#程序和我使用互联网的控制,为所见即所得HTML编辑。

这是一个普通的可执行程序。

它适用于大多数计算机,但一些计算机给我下错误。

未能加载文件或组件 'Microsoft。mshtml,Version=7.0.3300.0, 文化=中性, 公钥=b03f5f7f11d50a3a'或 它的一个依赖关系。强烈的名字 验证失败。

该'Microsoft.mshtml.dll'文件分发的程序。它与所有其他所需dll在同一文件夹中的文件.


这里是出自 Fuslogvw

*** Assembly Binder Log Entry  (1/14/2010 @ 6:36:51 PM) ***

The operation failed.
Bind result: hr = 0x80070002. The system cannot find the file specified.

Assembly manager loaded from:  c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\mscorwks.dll
Running under executable  C:\Documents and Settings\office\Desktop\Database\DATABASE.exe
--- A detailed error log follows. 

=== Pre-bind state information ===
LOG: User = CAMPUSREMOTE\office
LOG: DisplayName = Microsoft.mshtml, Version=7.0.3300.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 (Fully-specified)
LOG: Appbase = file:///C:/Documents and Settings/office/Desktop/Database/
LOG: Initial PrivatePath = NULL
LOG: Dynamic Base = NULL
LOG: Cache Base = NULL
LOG: AppName = DATABASE.exe
Calling assembly : ChabadOnCampusMainFrontEnd, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null.
===
LOG: Start binding of native image Microsoft.mshtml, Version=7.0.3300.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a.
WRN: No matching native image found.

感谢

有帮助吗?

解决方案

确认'Microsoft.mshtml.dll'文件,分布与该方案是PIA文件并不是一个办公室的文件。一些站点的权利要求,该办公室的文件"延迟签发"和PIA文件(安装与VS安装)是一个签字的副本。我的电脑上我有3个不同版本的'Microsoft.mshtml.dll'文件,(同文件的大小,但内容不同):

  1. "c:\Program 文件\Visual Studio9.0\Visual Studio工具Office\PIA\Office11\Microsoft.mshtml.dll"

  2. "c:\Program 文件\Visual Studio9.0\Visual Studio工具Office\PIA\Office12\Microsoft.mshtml.dll"

  3. "c:\Program 文件\Microsoft。净\主互操作Assemblies\Microsoft.mshtml.dll"

删除"Microsoft.mshtml.dll"参考的项目。使用"添加参照",".净"的标签,选择PIA文件,使用"复制loacal"选项。(它为我工作。..)

Atara

其他提示

Microsoft.mshtml.dll 从PIA文件夹不是签署。
如果你已经签署的项目,必须采取的版本,从"主要的互操作程序集"的文件夹。


做到这一点:

1.除参考Microsoft。mshtml(如果你有一个项目中)

2.点击"基准",并于不选择"扩展"但是"浏览"和点"C:\Program 文件(86)\Microsoft。净\主要的互操作程序集"(为.64位机)-该版本是签署。

3.编辑性(选择microsoft。mshtml参考和按F4)为了设置:

嵌入互操作类型=false
复制地方=true


4.重建项目

第一步,以追踪这个问题是要确定如果这是真的Mcirosoft.mshtml.dll 或它的一个依赖关系。最好的方式做到这一点是使用fuslogvw跟踪装载的失败。它将提供详细的信息,其中大会失败。

一旦你deterimen其中大会失败,请后退的结果。

编辑

这一警告信息表明,在操作的最终成功。它似乎没有错误。

我有同样的问题太多,但使用TFS 2008年建立我的问题。 该hintpath是相对的,就必须改变的确切路径。 否则,在生成过程中它一直拿起办公室的Mshtml.dll

<HintPath>..\..\..\..\..\..\..\..\Program Files\Microsoft.NET\Primary Interop Assemblies\Microsoft.mshtml.dll</HintPath>

<HintPath>C:\Program Files\Microsoft.NET\Primary Interop Assemblies\Microsoft.mshtml.dll</HintPath>
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top