Pregunta Error WatiN no pudo cargar ensamblaje


Recibo el siguiente error WatiN:

Excepción no controlada: System.IO.FileLoadException: no se pudo cargar el archivo   o ensamblar y 'Interop.SHDocVw, Version = 1.1.0.0, Culture = neutral,   PublicKeyToken = db7cfd3acb5 ad44e 'o una de sus dependencias. los   la definición del manifiesto de la ensambladura localizada no coincide con el ensamblaje   referencia. (Excepción de HRESULT: 0x80131040) Nombre de archivo:   'Interop.SHDocVw, Version = 1.1.0.0, Culture = neutral, PublicKeyToken = db

Copié el shDocvw.dll de System32 al directorio bin pero todavía me está dando los mismos problemas.


73
2017-09-22 00:56


origen


Respuestas:


ACTUALIZACIÓN: esta respuesta se escribió antes de que se lanzara Nuget y se aplica solo si NO está utilizando Nuget para administrar sus dependencias. Si está usando Nuget, vea la respuesta de @Nick Jones

Acabo de tener este problema hoy. Debe descargar la última versión de WatiN (estoy usando 2.0.10.928) y hacer referencia al Interop.SHDocVw.dll firmado proporcionado por WatiN.

Prueba el siguiente paso:

  1. Eliminar todas las demás referencias a Interop.SHDocVw.dll
  2. Haga clic derecho en su solución y seleccione 'Solución limpia'
  3. Haga referencia a Interop.SHDocVw.dll proporcionado por WatiN
  4. Construye tu solución.

Espero que esto ayude.

ACTUALIZAR: Nick Jones tiene razón. Esta debería no será un problema si está usando NuGet ... pero también recibí este mensaje cuando usé MvcContrib.Mvc3.TestHelper-ci. A primera vista, parece que los paquetes '-ci' son el camino a seguir pero decidí usar el paquete MvcContrib.WatiN por dos razones.

1) No recibo el mensaje de error "No se pudo cargar el archivo o el ensamblado"

2) El MvcContrib.Mvc3.TestHelper-ci es usando una versión anterior de WatiN.Core.dll (1.3.0.4000) donde el paquete MvcContrib.WatiN usa una versión más reciente (2.0.0.99)


49
2017-09-22 21:19



Si ha instalado y referenciado WatiN utilizando NuGet en VS2010, ya debería tener las referencias correctas, por lo que no es necesario eliminarlas ni volver a agregarlas. Pero aún necesitará cambiar la configuración "Insertar tipos de interoperabilidad" a Falso en la referencia Interop.SHDocVw.


119
2018-04-15 16:22



Eche un vistazo a las Propiedades de la Referencia "Interop.SHDocVw.dll". Cambie los "Tipos de interoperabilidad incrustados" a False.

El problema es que no está copiando el archivo dll en su carpeta bin. Pero después de esta configuración, lo hará correctamente.

Tuve el mismo error, y ahora está funcionando bien.


30
2018-05-09 13:31