2011-02-27 3 views
3

NSIS 설치 프로그램에서 일하고 있으며 설치 프로그램에 다중 언어를 추가했습니다. 나는 언어 대화 상자마다 설치 프로그램에서 사용자의 클릭을 표시하는 설치를 원했다, 그래서 나는 이것 또한 언어 대화 매번에게 사용자의 클릭을 표시하기 위해 제거 프로그램을 강제로NSIS 제거 프로그램에 대해 선택된 언어 사용

!define MUI_LANGDLL_REGISTRY_ROOT "${PRODUCT_UNINST_ROOT_KEY}" 
!define MUI_LANGDLL_REGISTRY_KEY "${PRODUCT_UNINST_KEY}" 

내 NSI 파일에서 두 줄을 제거 그 위에.

설치 프로그램에서 언어 대화 상자를 사용하지 않도록 설정하거나 프로그램을 설치할 때 사용자가 선택한 언어를 사용하도록 설정하려면 < <이 방법이 더 좋습니다.

도우미에게 감사드립니다.

답변

3

설치 중에 $ language 변수를 레지스트리에 저장하고 un.onInit에서 $ language로 읽을 수 있습니다. 언어 대화 상자를 표시하지 않으려면 .onInit에서 호출하지 마십시오.

+0

어떻게 레지스트리에 저장 한 다음 설치하는 동안 읽습니까? – Ron

+1

@Ron : 섹션에서 WriteRegDWORD를 사용하여 $ language를 저장하고 (제거 정보와 같은 위치에 저장할 수 있음) 제거 프로그램에서 ReadRegDWORD $ language HKLM "software \ ... path here \"언어를 사용하십시오 in unononit – Anders

+0

Anders! 감사합니다. – Ron