visual studio puede excepción ensamblado cargar archivo 0x8007000b .net visual-studio 64bit system.data.sqlite

.net - studio - excepción de hresult 0x8007000b)''



Visual Studio cargando la dll derecha(x86 o x64)! (3)

Esta respuesta un poco más simple que la de Preet Sangha no generará una advertencia cuando se cargue el proyecto y solo el dll aceptado condicionalmente aparecerá en el Explorador de soluciones. Entonces, en general, el aspecto es más limpio, aunque más sutil. (Esto fue probado en Visual Studio 2010).

<Reference Include="p4dn" Condition="$(Platform) == ''x86''"> <HintPath>../../ThirdParty/P4.Net/clr4/x86/p4dn.dll</HintPath> </Reference> <Reference Include="p4dn" Condition="$(Platform) == ''x64''"> <HintPath>../../ThirdParty/P4.Net/clr4/x64/p4dn.dll</HintPath> </Reference>

Estoy trabajando en un estudio visual en un x86. Me gustaría compilar mi aplicación para x32 y x64. Pero necesito usar el conector sqlite .net que tiene una DLL para aplicaciones x86 y otra DLL para aplicaciones x64. ¿Cómo configuro mi estudio visual para cargar una referencia cuando mi configuración es x64 y otra cuando mi configuración es x86?

Gracias, Richard.


También puede compilar su aplicación para "Cualquier CPU" y elegir dinámicamente qué DLL cargar.


en su archivo de proyecto en referencia use un MSBUILD condicional

<Reference Include="SomeAssembly86, Version=0.85.5.452, Culture=neutral, PublicKeyToken=41b332442f1101cc, processorArchitecture=MSIL" Condition=" ''$(Platform)'' == ''AnyCPU'' "> <SpecificVersion>False</SpecificVersion> <HintPath>../../Dependencies/SomeAssembly.dll</HintPath> <Private>False</Private> </Reference> <Reference Include="SomeOtherAssembly, Version=0.85.5.999, Culture=neutral, PublicKeyToken=41b332442f1101cc, processorArchitecture=MSIL" Condition=" ''$(Platform)'' == ''x64'' "> <SpecificVersion>False</SpecificVersion> <HintPath>../../Dependencies/SomeOtherAssembly.dll</HintPath> <Private>False</Private> </Reference>