[.net] COMException 오류 80040154를 복구하는 방법?



Answers

Windows 서비스에서도 동일한 문제가 발생했습니다. 모든 키는 레지스트리의 적절한 위치에 있습니다. 이 서비스의 빌드는 x86을 대상으로 이루어졌으며 아직 예외가 있습니다. CorFlags.exe 에 대해 알아 CorFlags.exe

플래그없이 service.exe 실행하여 32 비트 미만에서 실행되는지 확인하십시오. 플래그 /32BIT+ /Force (서명 된 어셈블리에만 적용)로 실행하지 않으면

UAC가 켜져 있으면 다음 오류가 발생할 수 있습니다. corflags : error CF001 : Could not open file for writing . 사용자에게 어셈블리에 대한 모든 권한을 부여하십시오.

Question

작동중인 C # 프로젝트를 64 비트 Windows 7 시스템에서 32 비트 XP 시스템으로 이동하면 다음 오류가 발생합니다.

다음 오류로 인해 CLSID가 {681EF637-F129-4AE9-94BB-618937E3F6B6} 인 구성 요소의 COM 클래스 팩터 리를 검색하지 못했습니다. 80040154.

681EF637-F129-4AE9-94BB-618937E3F6B6은 레지스트리에 없으므로 올바르게 설치되지 않았지만 이전에는 64 비트 Windows 7 시스템에서 문제가되었던 ID와 동일합니다. 64 비트 Windows 7 시스템에서이 오류에 대한 솔루션이 here 에서 발견되었지만 (32 비트 플랫폼에서 XP로 변경)이 문제는 32 비트 XP 시스템에서 해결되지 않습니다. 681EF637-F129-4AE9-94BB-618937E3F6B6과 관련된 DLL을 찾거나,이 예외를 어떻게 수정합니까?




이동 글로벌 내 양식에 지역에서 귀하의 양식에 선언 변수를 가지고 엑셀 :

Dim xls As New MyExcel.Interop.Application  
Dim xlb As MyExcel.Interop.Workbook

위의 두 줄은 내 양식에서 전역 선언을 했으므로이 두 줄을 로컬 함수로 옮겨서 도구가 제대로 작동합니다.




Links