From: Brian S. <xue...@us...> - 2007-11-17 23:39:07
|
Update of /cvsroot/popfile/windows In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv12134 Modified Files: Tag: b0_22_2 adduser-Uninstall.nsh adduser-Version.nsh adduser.nsi installer-SecPOPFile-body.nsh installer-Uninstall.nsh installer.nsi Log Message: Remove obsolete Start Menu entries when upgrading an earlier release. When uninstalling only remove Start Menu entries which refer to the files being removed. Reduce the interference caused when uninstalling the program files before the User Data files. Index: installer-SecPOPFile-body.nsh =================================================================== RCS file: /cvsroot/popfile/windows/installer-SecPOPFile-body.nsh,v retrieving revision 1.3.2.13 retrieving revision 1.3.2.14 diff -C2 -d -r1.3.2.13 -r1.3.2.14 *** installer-SecPOPFile-body.nsh 13 Nov 2007 22:56:00 -0000 1.3.2.13 --- installer-SecPOPFile-body.nsh 17 Nov 2007 23:39:07 -0000 1.3.2.14 *************** *** 324,342 **** ; Attempt to remove some StartUp and Start Menu shortcuts created by previous installations SetShellVarContext all ! Delete "$SMSTARTUP\Run POPFile.lnk" ! Delete "$SMSTARTUP\Run POPFile in background.lnk" ! Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\Run POPFile in background.lnk" ! Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\Manual.url" ! Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\POPFile Manual.url" ! Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\QuickStart Guide.url" SetShellVarContext current ! Delete "$SMSTARTUP\Run POPFile.lnk" ! Delete "$SMSTARTUP\Run POPFile in background.lnk" ! Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\Run POPFile in background.lnk" ! Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\Manual.url" ! Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\POPFile Manual.url" ! Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\QuickStart Guide.url" ; Create the START MENU entries --- 324,348 ---- ; Attempt to remove some StartUp and Start Menu shortcuts created by previous installations + !macro OBSOLETE_START_MENU_ENTRIES + + Delete "$SMSTARTUP\Run POPFile.lnk" + Delete "$SMSTARTUP\Run POPFile in background.lnk" + + Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\Manual.url" + Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\QuickStart Guide.url" + Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\Run POPFile in background.lnk" + Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\Shutdown POPFile.lnk" + Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\Shutdown POPFile silently.lnk" + Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\POPFile User Interface.url" + + Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\POPFile Manual.url" + + !macroend + SetShellVarContext all ! !insertmacro OBSOLETE_START_MENU_ENTRIES SetShellVarContext current ! !insertmacro OBSOLETE_START_MENU_ENTRIES ; Create the START MENU entries Index: installer.nsi =================================================================== RCS file: /cvsroot/popfile/windows/installer.nsi,v retrieving revision 1.242.4.17 retrieving revision 1.242.4.18 diff -C2 -d -r1.242.4.17 -r1.242.4.18 *** installer.nsi 13 Nov 2007 22:58:10 -0000 1.242.4.17 --- installer.nsi 17 Nov 2007 23:39:08 -0000 1.242.4.18 *************** *** 886,889 **** --- 886,890 ---- ReserveFile "${NSISDIR}\Plugins\md5dll.dll" ReserveFile "${NSISDIR}\Plugins\NSISdl.dll" + ReserveFile "${NSISDIR}\Plugins\ShellLink.dll" ReserveFile "${NSISDIR}\Plugins\System.dll" ReserveFile "${NSISDIR}\Plugins\UAC.dll" Index: adduser-Uninstall.nsh =================================================================== RCS file: /cvsroot/popfile/windows/adduser-Uninstall.nsh,v retrieving revision 1.2.2.7 retrieving revision 1.2.2.8 diff -C2 -d -r1.2.2.7 -r1.2.2.8 *** adduser-Uninstall.nsh 10 Nov 2007 13:43:08 -0000 1.2.2.7 --- adduser-Uninstall.nsh 17 Nov 2007 23:39:07 -0000 1.2.2.8 *************** *** 478,493 **** ; Remove the POPFile shortcuts from the current user's Start Menu Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\Create 'User Data' shortcut.lnk" - Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\User Data ($G_WINUSERNAME).lnk" Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\Message Capture utility.lnk" ! Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\Check database status.lnk" RMDir "$SMPROGRAMS\${C_PFI_PRODUCT}\Support" Call un.PFI_IsNT Pop ${L_TEMP} ! StrCmp ${L_TEMP} 1 remove_all IfFileExists "$G_ROOTDIR\uninstall.exe" remove_most ! remove_all: Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\Run POPFile.lnk" Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\Release Notes.lnk" --- 478,517 ---- ; Remove the POPFile shortcuts from the current user's Start Menu + SetShellVarContext all + StrCpy ${L_TEMP} "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\" + SetShellVarContext current + StrCmp ${L_TEMP} "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\" 0 remove_all_support + + IfFileExists "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\PFI Diagnostic utility (simple).lnk" 0 try_full + ShellLink::GetShortCutTarget "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\PFI Diagnostic utility (simple).lnk" + Pop ${L_TEMP} + IfFileExists "${L_TEMP}" skip_system_entries + + try_full: + IfFileExists "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\PFI Diagnostic utility (full).lnk" 0 remove_all_support + ShellLink::GetShortCutTarget "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\PFI Diagnostic utility (full).lnk" + Pop ${L_TEMP} + IfFileExists "${L_TEMP}" skip_system_entries + + remove_all_support: + Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\PFI Diagnostic utility (simple).lnk" + Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\PFI Diagnostic utility (full).lnk" + Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\POPFile Home Page.url" + Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\POPFile Support (Wiki).url" + + skip_system_entries: + Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\Check database status.lnk" Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\Create 'User Data' shortcut.lnk" Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\Message Capture utility.lnk" ! Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\User Data ($G_WINUSERNAME).lnk" RMDir "$SMPROGRAMS\${C_PFI_PRODUCT}\Support" Call un.PFI_IsNT Pop ${L_TEMP} ! StrCmp ${L_TEMP} 1 remove_all_main IfFileExists "$G_ROOTDIR\uninstall.exe" remove_most ! remove_all_main: ! Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\FAQ.url" Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\Run POPFile.lnk" Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\Release Notes.lnk" Index: installer-Uninstall.nsh =================================================================== RCS file: /cvsroot/popfile/windows/installer-Uninstall.nsh,v retrieving revision 1.4.2.15 retrieving revision 1.4.2.16 diff -C2 -d -r1.4.2.15 -r1.4.2.16 *** installer-Uninstall.nsh 13 Nov 2007 22:58:10 -0000 1.4.2.15 --- installer-Uninstall.nsh 17 Nov 2007 23:39:07 -0000 1.4.2.16 *************** *** 694,704 **** #-------------------------------------------------------------------------- Section "-un.Start Menu Entries" UnSecStartMenu StrCmp $G_UNINST_MODE "change" skip_section ! !define L_TEMP $R9 ! Push ${L_TEMP} SetDetailsPrint textonly --- 694,716 ---- #-------------------------------------------------------------------------- + !macro CHECK_SHORTCUT_TARGET SHORTCUT_FILE EXPECTED_TARGET + + !insertmacro PFI_UNIQUE_ID + + IfFileExists "${SHORTCUT_FILE}" 0 try_next_${PFI_UNIQUE_ID} + ShellLink::GetShortCutTarget "${SHORTCUT_FILE}" + Pop ${L_TARGET} + StrCmp ${L_TARGET} "${EXPECTED_TARGET}" delete_menu_entries + + try_next_${PFI_UNIQUE_ID}: + !macroend + Section "-un.Start Menu Entries" UnSecStartMenu StrCmp $G_UNINST_MODE "change" skip_section ! !define L_TARGET $R9 ! Push ${L_TARGET} SetDetailsPrint textonly *************** *** 706,739 **** SetDetailsPrint listonly SetShellVarContext all - StrCmp $G_WINUSERTYPE "Admin" menucleanup - SetShellVarContext current ! menucleanup: ! IfFileExists "$SMPROGRAMS\${C_PFI_PRODUCT}\QuickStart Guide.url" 0 delete_menu_entries ! ReadINIStr ${L_TEMP} "$SMPROGRAMS\${C_PFI_PRODUCT}\QuickStart Guide.url" \ ! "InternetShortcut" "URL" ! StrCmp ${L_TEMP} "file://$G_ROOTDIR/manual/en/manual.html" delete_menu_entries exit delete_menu_entries: Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\POPFile Home Page.url" Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\POPFile Support (Wiki).url" Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\PFI Diagnostic utility (simple).lnk" Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\PFI Diagnostic utility (full).lnk" - Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\Create 'User Data' shortcut.lnk" RMDir "$SMPROGRAMS\${C_PFI_PRODUCT}\Support" Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\Release Notes.lnk" Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\Run POPFile.lnk" - Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\Run POPFile in background.lnk" - Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\Shutdown POPFile silently.lnk" - - Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\FAQ.url" - Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\QuickStart Guide.url" - Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\POPFile User Interface.url" - Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\Shutdown POPFile.url" - - Delete "$SMSTARTUP\Run POPFile in background.lnk" - Delete "$SMSTARTUP\Run POPFile.lnk" Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\Uninstall POPFile.lnk" --- 718,765 ---- SetDetailsPrint listonly + ; The UAC plugin ensures we have admin rights + SetShellVarContext all ! ; Check if the Start Menu shortcuts refer to the installation we are removing ! ; (if they don't then leave them alone) ! ! !insertmacro CHECK_SHORTCUT_TARGET \ ! "$SMPROGRAMS\${C_PFI_PRODUCT}\Run POPFile.lnk" \ ! "$G_ROOTDIR\runpopfile.exe" ! ! !insertmacro CHECK_SHORTCUT_TARGET \ ! "$SMPROGRAMS\${C_PFI_PRODUCT}\Uninstall POPFile.lnk" \ ! "$G_ROOTDIR\uninstall.exe" ! ! !insertmacro CHECK_SHORTCUT_TARGET \ ! "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\PFI Diagnostic utility (simple).lnk" \ ! "$G_ROOTDIR\pfidiag.exe" ! ! !insertmacro CHECK_SHORTCUT_TARGET \ ! "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\PFI Diagnostic utility (full).lnk" \ ! "$G_ROOTDIR\pfidiag.exe" ! ! Goto exit delete_menu_entries: + SetShellVarContext current + StrCpy ${L_TARGET} "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\" + SetShellVarContext all + StrCmp ${L_TARGET} "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\" 0 remove_all + IfFileExists "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\Create 'User Data' shortcut.lnk" skip_site_entries + + remove_all: + Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\FAQ.url" Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\POPFile Home Page.url" Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\POPFile Support (Wiki).url" + + skip_site_entries: Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\PFI Diagnostic utility (simple).lnk" Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\PFI Diagnostic utility (full).lnk" RMDir "$SMPROGRAMS\${C_PFI_PRODUCT}\Support" Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\Release Notes.lnk" Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\Run POPFile.lnk" Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\Uninstall POPFile.lnk" *************** *** 750,756 **** SetDetailsPrint listonly ! Pop ${L_TEMP} ! !undef L_TEMP skip_section: --- 776,782 ---- SetDetailsPrint listonly ! Pop ${L_TARGET} ! !undef L_TARGET skip_section: Index: adduser-Version.nsh =================================================================== RCS file: /cvsroot/popfile/windows/adduser-Version.nsh,v retrieving revision 1.6.2.17 retrieving revision 1.6.2.18 diff -C2 -d -r1.6.2.17 -r1.6.2.18 *** adduser-Version.nsh 10 Nov 2007 13:43:08 -0000 1.6.2.17 --- adduser-Version.nsh 17 Nov 2007 23:39:07 -0000 1.6.2.18 *************** *** 7,11 **** #-------------------------------------------------------------------------- ! !define C_PFI_VERSION "0.3.17" #-------------------------------------------------------------------------- --- 7,11 ---- #-------------------------------------------------------------------------- ! !define C_PFI_VERSION "0.3.18" #-------------------------------------------------------------------------- Index: adduser.nsi =================================================================== RCS file: /cvsroot/popfile/windows/adduser.nsi,v retrieving revision 1.59.4.19 retrieving revision 1.59.4.20 diff -C2 -d -r1.59.4.19 -r1.59.4.20 *** adduser.nsi 10 Nov 2007 13:43:08 -0000 1.59.4.19 --- adduser.nsi 17 Nov 2007 23:39:07 -0000 1.59.4.20 *************** *** 727,730 **** --- 727,731 ---- ReserveFile "${NSISDIR}\Plugins\nsExec.dll" ReserveFile "${NSISDIR}\Plugins\NSISdl.dll" + ReserveFile "${NSISDIR}\Plugins\ShellLink.dll" ReserveFile "${NSISDIR}\Plugins\System.dll" ReserveFile "${NSISDIR}\Plugins\UserInfo.dll" *************** *** 1215,1220 **** --- 1216,1267 ---- "InternetShortcut" "URL" "http://${C_UI_URL}:$G_GUI/shutdown" + SetFileAttributes "$SMPROGRAMS\${C_PFI_PRODUCT}\FAQ.url" NORMAL + + !ifndef ENGLISH_MODE + StrCmp $LANGUAGE ${LANG_JAPANESE} japanese_faq + !endif + + WriteINIStr "$SMPROGRAMS\${C_PFI_PRODUCT}\FAQ.url" \ + "InternetShortcut" "URL" \ + "http://getpopfile.org/wiki/FAQ" + + !ifndef ENGLISH_MODE + Goto support + + japanese_faq: + WriteINIStr "$SMPROGRAMS\${C_PFI_PRODUCT}\FAQ.url" \ + "InternetShortcut" "URL" \ + "http://getpopfile.org/wiki/JP:FAQ" + + support: + !endif + SetOutPath "$SMPROGRAMS\${C_PFI_PRODUCT}\Support" + SetFileAttributes "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\POPFile Home Page.url" NORMAL + WriteINIStr "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\POPFile Home Page.url" \ + "InternetShortcut" "URL" "http://getpopfile.org/" + + SetFileAttributes "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\POPFile Support (Wiki).url" NORMAL + + !ifndef ENGLISH_MODE + StrCmp $LANGUAGE ${LANG_JAPANESE} japanese_wiki + !endif + + WriteINIStr "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\POPFile Support (Wiki).url" \ + "InternetShortcut" "URL" \ + "http://getpopfile.org/wiki" + + !ifndef ENGLISH_MODE + Goto user_data_shortcut + + japanese_wiki: + WriteINIStr "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\POPFile Support (Wiki).url" \ + "InternetShortcut" "URL" \ + "http://getpopfile.org/wiki/jp" + + user_data_shortcut: + !endif + IfFileExists "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\User Data ($G_WINUSERNAME).lnk" 0 pfidiag_entries SetFileAttributes "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\User Data ($G_WINUSERNAME).lnk" NORMAL *************** *** 1225,1234 **** IfFileExists "$G_ROOTDIR\pfidiag.exe" 0 msgcapture_entry Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\PFI Diagnostic utility.lnk" ! ; SetFileAttributes "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\PFI Diagnostic utility (simple).lnk" NORMAL ! ; CreateShortCut "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\PFI Diagnostic utility (simple).lnk" \ ! ; "$G_ROOTDIR\pfidiag.exe" ! ; SetFileAttributes "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\PFI Diagnostic utility (full).lnk" NORMAL ! ; CreateShortCut "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\PFI Diagnostic utility (full).lnk" \ ! ; "$G_ROOTDIR\pfidiag.exe" "/full" SetFileAttributes "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\Create 'User Data' shortcut.lnk" NORMAL CreateShortCut "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\Create 'User Data' shortcut.lnk" \ --- 1272,1281 ---- IfFileExists "$G_ROOTDIR\pfidiag.exe" 0 msgcapture_entry Delete "$SMPROGRAMS\${C_PFI_PRODUCT}\PFI Diagnostic utility.lnk" ! SetFileAttributes "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\PFI Diagnostic utility (simple).lnk" NORMAL ! CreateShortCut "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\PFI Diagnostic utility (simple).lnk" \ ! "$G_ROOTDIR\pfidiag.exe" ! SetFileAttributes "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\PFI Diagnostic utility (full).lnk" NORMAL ! CreateShortCut "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\PFI Diagnostic utility (full).lnk" \ ! "$G_ROOTDIR\pfidiag.exe" "/full" SetFileAttributes "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\Create 'User Data' shortcut.lnk" NORMAL CreateShortCut "$SMPROGRAMS\${C_PFI_PRODUCT}\Support\Create 'User Data' shortcut.lnk" \ |