2016-12-03 9 views
0

내 프로젝트에서 Wix 7.x를 사용합니다. 우리는 SHA2로 디지털 방식으로 인증 된 커스텀 액션 DLL (C++로 작성)을 가지고 있습니다. 이 DLL은 이전에 SHA1 인증을 받았습니다.SHA2로 디지털 서명 된 사용자 지정 작업 DLL은 Windows 7 및 8 환경에서 1723 및 1157 오류를 발생시킵니다.

디지털 인증서 변경 이외의 변경 사항은 없습니다.

설치 중에 아래와 같은 오류 메시지가 나타납니다.

에서 CustomAction의 customaction_a 실제 오류 코드 1157을 (번역 샌드 박스 내부에 발생하는 경우이 이 100 % 정확하지 않을 수 있습니다)

오류 1723이 Windows Installer 패키지에 문제가 있습니다 돌아왔다. 이 설치를 완료하는 데 필요한 DLL을 실행할 수 없습니다. 지원 담당자 또는 패키지 공급 업체 에 문의하십시오. 액션 customaction_a, 항목 : FirstCustomAction, 라이브러리 : C : \ WINDOWS \ 설치 \ MSICD2E.tmp DLL이 SHA1로 인증 된

, 그것은 윈도우 7, 윈도우 8 및 Windows 8.1에서 오류없이 성공적으로 설치됩니다. DLL이 SHA2로 인증되면 Windows 7, Windows 8에서 위의 오류가 발생합니다. 그러나 Windows 8.1 및 Windows 10에는 성공적으로 설치됩니다.

나는 인터넷을 검색하여 % temp % 폴더, msiexec에 등록 된 잘못된 경로 등 ... 아무런 도움이되지 않았습니다.

알려진 문제/버그입니까? 모든 솔루션/해결 방법은 큰 도움이 될 것입니다.

답변

1

Windows Installer의 관점에서 서명과 관련된 것은 없습니다. 1157 오류는 "이 응용 프로그램을 실행하는 데 필요한 라이브러리 파일 중 하나를 찾을 수 없습니다."입니다. 즉, 그것은 의존성이 빠져 있습니다. CRT/MFC/ATL 등의 누락 된 버전이거나 대부분의 CRT가 일부 시스템에 필수 구성 요소로 설치되어 있거나 설치되어 있지 않은 다양한 재배포 가능 패키지가있을 수 있습니다. 다른 제품들.

필수 구성 요소를 설치하는 중일 수 있습니다. 게시물에 표시되지 않습니다. MSI에 일부 버전의 C++ 병합 모듈이 포함되어있을 수 있지만 일부 SxS 버전은 사용자 지정 작업이 실행될 때까지 커밋되지 않으므로이 오류가 발생할 수 있습니다. 따라서 모든 Windows 버전에없는 서명과 관련된 선택적 Dll이없는 한 1157 오류를 감안할 때 서명과 관련없는 실패 할 수있는 많은 이유가 있으며 그럴 것 같지 않습니다. 가장 간단한 설명은 오류로 표시되는 설명입니다 - 누락 된 종속성입니다.

종속성 워커에 대한 Dll은 단순히 종속성 워커를로드하여 실행할 수없는 시스템에 DLL을 복사하는 경우 누락 된 DLL이 무엇인지 알려줍니다.