我收到以下WatiN错误:
未处理的异常:System.IO.FileLoadException:无法加载文件或组装'Interop.SHDocVw,Version = 1.1.0.0,Culture = neutral,PublicKeyToken = db7cfd3acb5 ad44e'或其依赖项之一.定位的程序集的清单定义与程序集引用不匹配.(来自HRESULT的异常:0x80131040)文件名:'Interop.SHDocVw,Version = 1.1.0.0,Culture = neutral,PublicKeyToken = db
我将shdocvw.dll从System32复制到bin目录,但它仍然给我同样的问题.
Nic*_*nes 122
如果您已经在VS2010中使用NuGet安装并引用了WatiN,那么您应该已经拥有了正确的引用,因此不需要删除它们并重新添加它们.但是你仍然需要在Interop.SHDocVw参考上将"嵌入互操作类型"设置更改为False.
MoM*_*oMo 49
更新:此答案是在Nuget发布之前编写的,仅在您不使用Nuget管理依赖项时才适用.如果您正在使用Nuget,请查看@Nick Jones的答案
我今天刚遇到这个问题.您需要下载最新版本的WatiN(我使用的是2.0.10.928)并引用WatiN提供的已签名的Interop.SHDocVw.dll.
尝试下面的内容:
希望这可以帮助.
更新:尼克琼斯是正确的.如果您正在使用NuGet,这不应该是一个问题....但是在使用MvcContrib.Mvc3.TestHelper-ci时我也收到了此消息.乍一看似乎'-ci'包是可行的方法但我决定使用MvcContrib.WatiN包有两个原因.
1)我没有收到"无法加载文件或程序集"错误消息
2)MvcContrib.Mvc3.TestHelper-ci正在使用旧版本的WatiN.Core.dll(1.3.0.4000),其中MvcContrib.WatiN包使用的是更新版本(2.0.0.99)
ade*_*l41 31
查看参考"Interop.SHDocVw.dll"的属性.将"嵌入互操作类型"更改为False.
问题是它没有复制bin文件夹中的dll文件.但是在这个设置之后,它会正确地完成它.
我有同样的错误,现在它的工作正常.
归档时间: |
|
查看次数: |
19862 次 |
最近记录: |