WIX를 사용하여 응용 프로그램 설치 프로그램을 만듭니다. 응용 프로그램을 제거하는 동안 DLL 파일이 DLL 파일에 포함 된 파일을 삭제하기 전에 DLL 파일에서 함수를 호출하고 싶습니다. 계속 진행하려면 this post과 같은 다른 관련 게시물을 확인했습니다.제거 중 WIX의 사용자 지정 작업
<CustomAction Id="UnRegister"
FileKey="mydll.dll"
DllEntry="cleanup"
Execute="immediate"
Return="ignore"/>
다음 InstallExecuteSequence
태그 : 나는 응용 프로그램을 제거하려고 할 때
<InstallExecuteSequence>
<Custom Action="UnRegister" After="InstallInitialize">Installed AND NOT UPGRADINGPRODUCTCODE</Custom>
</InstallExecuteSequence>
문제는, 파일을 먼저 한 후 제거되어 다음과 같이
은 내가CustomAction
를 생성 설치 프로그램은 DLL에서 cleanup() 함수를 호출합니다. 오류가 발}하면 설치 제거 롤백되고 실패합니다.
어떻게 기능을 먼저 호출하고 제거하는 동안 파일을 삭제하도록 WIX 설치 프로그램을 구성 할 수 있습니까?
감사합니다.
즉시 조치가 실행 된 후에 파일이 제거되므로 파일이 시스템에있을 때 사용자 지정 작업을 실행해야합니다. 설치 제거 루틴에 대한 자세한 로그를 게시하여 파일 삭제를 트리거하는 내용을 정확히 볼 수 있습니까? –
로그 : 오류 1723.이 Windows Installer 패키지에 문제가 있습니다. 이 설치를 완료하는 데 필요한 DLL을 실행할 수 없습니다. 지원 담당자 또는 패키지 공급 업체에 문의하십시오. 작업 등록, 항목 : AddInfo, 라이브러리 : C : \ Program Files (x86) \ testApp \ mydll.dll. 그러나이 로그는 설치에 사용한 기능을 실행하려고 함을 나타냅니다. "Register"라는 유사한 CustomAction이 있습니다. <사용자 정의 Action = "등록"전에 = "InstallFinalize"/> – Ali
사용자 지정 작업을 실행하지만 실패합니까? 그렇다면 관리자 권한이 없어서 사용자 지정 작업을 가장하지 않고 지연된 상태로 실행하도록 설정할 수 있습니다. –