프로그래밍

NSIS 시작프로그램에 등록하기

panpro 2009. 9. 15. 20:31

Section "MainSection" SEC01
  SetOutPath "$INSTDIR"
  SetOverwrite ifnewer
  File "D:\KCSC\project\CARIsWeekly\trunk\CARIsWeekly\bin\Release\CARIsWeekly.exe"
  CreateDirectory "$SMPROGRAMS\CarisWeekly"
  CreateShortCut "$SMPROGRAMS\CarisWeekly\CarisWeekly.lnk" "$INSTDIR\CARIsWeekly.exe"
  CreateShortCut "$DESKTOP\CarisWeekly.lnk" "$INSTDIR\CARIsWeekly.exe"
  File "D:\KCSC\project\CARIsWeekly\trunk\CARIsWeekly\bin\Release\config.dat"
  File "D:\KCSC\project\CARIsWeekly\trunk\CARIsWeekly\bin\Release\CARIsWeekly.exe.config"
 
  ; 시작 프로그램에 등록
  WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Run" "CARIsWeekly" "$INSTDIR\CARIsWeekly.exe"

SectionEnd


Uninstall할때도 레지스트리에서 깨끗하게 지우자. 


Section Uninstall
  Delete "$INSTDIR\${PRODUCT_NAME}.url"
  Delete "$INSTDIR\uninst.exe"
  Delete "$INSTDIR\CARIsWeekly.exe.config"
  Delete "$INSTDIR\config.dat"
  Delete "$INSTDIR\CARIsWeekly.exe"

  Delete "$SMPROGRAMS\CarisWeekly\Uninstall.lnk"
  Delete "$SMPROGRAMS\CarisWeekly\Website.lnk"
  Delete "$DESKTOP\CarisWeekly.lnk"
  Delete "$SMPROGRAMS\CarisWeekly\CarisWeekly.lnk"

  RMDir "$SMPROGRAMS\CarisWeekly"
  RMDir "$INSTDIR"

  DeleteRegKey ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}"
  DeleteRegKey HKLM "${PRODUCT_DIR_REGKEY}"
 
  ; 시작프로그램도 삭제
  DeleteRegValue HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Run" "CARIsWeekly"

  SetAutoClose true
SectionEnd