2012-10-10 3 views
1

32bit (xp/office2003) 컴퓨터에서이 DLL을 사용할 때 Office2010 64Bit이 설치된 64Bit 컴퓨터에서 내 dll을 빌드했습니다. 오류.오류 : 파일 또는 어셈블리를로드 할 수 없습니다. 'Microsoft.Vbe.Interop, Version = 14

Could not load file or assembly 'Microsoft.Vbe.Interop, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c' or one of its dependencies. The system cannot find the file specified.

나는, 내 프로젝트에 VBIDE의 참조가 보이는 같은 프로젝트가 구축되고있는 PC에 설치된 오피스 버전을 기반으로 - Vbe.Interop의 버전이 DLL에 기록됩니다. 나는이 피할 수있는 방법 - 즉, 환경 중립 빌드 .. 배제 미리

감사합니다 ..

답변

0

: --- 당신은 어딘가에서 필요한 어셈블리를 복사했을 수 있습니다. 그러나 .NET 어셈블리 Microsoft.Vbe.Interop에는 다른 (네이티브) DLL이 있어야합니다. 이들은 시스템에 없을 수도 있습니다.

난 당신이 .----

문제로를로드되는 것을 촬영하고, 무엇을 융합 로더 (기본) DLL을 찾습니다를 해결하기 위해 마이크로 소프트 오피스 버전을 설치해야 할 수 있습니다 생각 레지스트리에 융합 로깅을 설정 :

Add the following values to

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Fusion 

Add:

DWORD ForceLog set value to 1 
DWORD LogFailures set value to 1 
DWORD LogResourceBinds set value to 1 
String LogPath set value to folder for logs e.g. C:\FusionLog\ 

This folder must exist, and end with the backslash

(How to enable assembly bind failure logging (Fusion) in .NET에서 복사 지침)

+0

마이크로 소프트 오피스는 모두 시스템에서 사용할 수 있습니다 (내가 어디 BU ild 및 어디에서 내 앱을 설치하는지). VBIDE의 버전 14.0.0은 Office 2010에서 가져온 것으로, 내 빌드를 설치 한 PC는 Office 2003 (예 : VBIDE 버전 12.0.0)입니다. – user1066231

관련 문제