2009-12-11 3 views
0

WiX에 NSIS 설치 프로그램을 이식하려고합니다. 설치 프로그램을 실행할 때마다 레지스트리 키를 새 GUID 값으로 설정하여 내 앱이 실행될 때 설치 후 처음 실행되는지 확인할 수 있습니다. 처음 실행하면 응용 프로그램은 설치 프로그램의 GUID 값에 다른 레지스트리 키를 설정합니다. 두 키가 일치하는 한 설치 프로그램이 실행되지 않은 것입니다.각 설치 후에 레지스트리에 새 GUID를 쓰도록 WiX 가져 오기

다음은 NSIS 코드입니다 :

#Write InstallGUID 
Call CreateGUID 
Pop $0 
WriteRegStr HKLM "${REGKEY}" InstallGUID $0 

Function CreateGUID 
    System::Call 'ole32::CoCreateGuid(g .s)' 
FunctionEnd 

나는이 시점에서 준비가 상당히 완전한 윅스 설치 프로그램을 가지고,하지만 난이 기능을 복제하는 방법을 알아낼 수 없습니다

. 설치시에 WiX에 GUID를 생성하는 것이 있습니까? 아니면 사용자 정의 이벤트를 작성해야합니까? 내가 가장 좋은 작은 DLL을 작성하는 것을 피할 수 있다면.

답변

0

더 좋은 솔루션을 찾지 못하면 그 코드를 NSIS 스크립트에 넣고 자동 설치하여 Wix + MSI 설치 프로그램에서 NSIS 스크립트를 자동으로 실행할 수 있습니다.

나는 적절한 오류를 잡아 NSIS 코드를 잡아서 되돌려 놓고 돌아 가기 위해 오류 코드를 설정하여 모든 레지스트리 관련 오류/오류를 Wix 설치 프로그램에 알릴 수 있습니다.

관련 문제