2010-01-20 5 views
2

내 시작 메뉴 바로 가기를 덮어 쓰지 않도록 NSIS에 지시 할 방법이 있습니까? 덮어 쓰기를 원하지 않는 이유는 새 버전으로 업그레이드 할 때 사용자의 명령 행 옵션이 지워지지 않기 때문입니다. 이 서비스를 사용해 보았습니다.NSIS가 바로 가기를 덮어 씁니다.

Section -AdditionalIcons 
    SetOverwrite off 
    CreateDirectory "${START_MENU_DIR}" 
    CreateShortCut "${START_MENU_LNK}" "$INSTDIR\${PRODUCT_NAME}.exe" 
SectionEnd 

답변

3

IfFileExists로 확인하지 못하는 이유는 무엇입니까?

모두 나가고 싶다면 경로와 작업 디렉토리를 업데이트 할 수 있지만 매개 변수와 아이콘은 그대로 두지 만 IShellLink COM 인터페이스를 직접 호출해야합니다 (시스템에서 플러그인 또는 사용자 정의 플러그인/응용 프로그램) 여기

+0

예는 감사합니다. 어제 밤에 그걸 깨달았 어. 그것은 위대한 작품. 나는 또 다른 답으로 몇 가지 예제 코드를 넣었다. –

1

작동 예입니다

Section -AdditionalIcons 

    CreateDirectory "${START_MENU_DIR}" 
    IfFileExists "${START_MENU_LNK}" SkipShortcut 
    CreateShortCut "${START_MENU_LNK}" "$INSTDIR\${PRODUCT_NAME}.exe" 

SkipShortcut: 

SectionEnd 
관련 문제