Add and update a bunch of Programs and Features-related registry

keys. Sort the keys by name. Calculate the installation size after all
of the files have been installed and add that in the "EstimatedSize"
key. Fix the display icon. Add a hint about our target platform. Add
version information.

We now look like a grown-up application in the Programs and Features
control panel.

svn path=/trunk/; revision=41914
This commit is contained in:
Gerald Combs 2012-04-04 00:47:21 +00:00
parent 65a42ddd9a
commit 16a4af2d67
2 changed files with 38 additions and 10 deletions

View File

@ -137,6 +137,10 @@ wireshark-$(WIRESHARK_TARGET_PLATFORM)-$(VERSION).exe : user-guide.chm $(NSI) $(
/DGTK_WIMP_RCSRC_DIR=$(GTK_WIMP_RCSRC_DIR) \
/DINTL_DLL=$(INTL_DLL) \
/DVERSION=$(VERSION) \
/DVERSION_MAJOR=$(VERSION_MAJOR) \
/DVERSION_MINOR=$(VERSION_MINOR) \
/DVERSION_MICRO=$(VERSION_MICRO) \
/DVERSION_BUILD=$(VERSION_BUILD) \
/DPRODUCT_VERSION=$(PRODUCT_VERSION) \
/DWTAP_VERSION=$(WTAP_VERSION) \
!IF "$(C_ARES_DIR)" != ""

View File

@ -32,7 +32,8 @@ InstType "un.All (remove all)"
!define BITS 64
!endif
Name "${PROGRAM_NAME} ${VERSION} (${BITS}-bit)"
!define DISPLAY_NAME "${PROGRAM_NAME} ${VERSION} (${BITS}-bit)"
Name "${DISPLAY_NAME}"
;
VIAddVersionKey "ProductName" "${PROGRAM_NAME}"
@ -690,15 +691,29 @@ File "..\..\wireshark-gtk2\help\display_filters.txt"
File "..\..\wireshark-gtk2\help\faq.txt"
; Write the uninstall keys for Windows
WriteRegStr HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\Uninstall\Wireshark" "DisplayVersion" "${VERSION}"
WriteRegStr HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\Uninstall\Wireshark" "DisplayName" "Wireshark ${VERSION}"
WriteRegStr HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\Uninstall\Wireshark" "UninstallString" '"$INSTDIR\uninstall.exe"'
WriteRegStr HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\Uninstall\Wireshark" "Publisher" "The Wireshark developer community, http://www.wireshark.org"
WriteRegStr HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\Uninstall\Wireshark" "HelpLink" "http://ask.wireshark.org/"
WriteRegStr HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\Uninstall\Wireshark" "URLInfoAbout" "http://www.wireshark.org"
WriteRegStr HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\Uninstall\Wireshark" "URLUpdateInfo" "http://www.wireshark.org/download/${WIRESHARK_TARGET_PLATFORM}/"
WriteRegDWORD HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\Uninstall\Wireshark" "NoModify" 1
WriteRegDWORD HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\Uninstall\Wireshark" "NoRepair" 1
; http://nsis.sourceforge.net/Add_uninstall_information_to_Add/Remove_Programs
; http://msdn.microsoft.com/en-us/library/ms954376.aspx
; http://msdn.microsoft.com/en-us/library/windows/desktop/aa372105.aspx
!define UNINSTALL_PATH "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PROGRAM_NAME}"
WriteRegStr HKEY_LOCAL_MACHINE "${UNINSTALL_PATH}" "Comments" "${DISPLAY_NAME}"
WriteRegStr HKEY_LOCAL_MACHINE "${UNINSTALL_PATH}" "DisplayIcon" "$INSTDIR\wireshark.exe,0"
WriteRegStr HKEY_LOCAL_MACHINE "${UNINSTALL_PATH}" "DisplayName" "${DISPLAY_NAME}"
WriteRegStr HKEY_LOCAL_MACHINE "${UNINSTALL_PATH}" "DisplayVersion" "${VERSION}"
WriteRegStr HKEY_LOCAL_MACHINE "${UNINSTALL_PATH}" "HelpLink" "http://ask.wireshark.org/"
WriteRegStr HKEY_LOCAL_MACHINE "${UNINSTALL_PATH}" "InstallLocation" "$INSTDIR"
WriteRegStr HKEY_LOCAL_MACHINE "${UNINSTALL_PATH}" "Publisher" "The Wireshark developer community, http://www.wireshark.org"
WriteRegStr HKEY_LOCAL_MACHINE "${UNINSTALL_PATH}" "URLInfoAbout" "http://www.wireshark.org"
WriteRegStr HKEY_LOCAL_MACHINE "${UNINSTALL_PATH}" "URLUpdateInfo" "http://www.wireshark.org/download.html"
WriteRegDWORD HKEY_LOCAL_MACHINE "${UNINSTALL_PATH}" "NoModify" 1
WriteRegDWORD HKEY_LOCAL_MACHINE "${UNINSTALL_PATH}" "NoRepair" 1
WriteRegDWORD HKEY_LOCAL_MACHINE "${UNINSTALL_PATH}" "VersionMajor" ${VERSION_MAJOR}
WriteRegDWORD HKEY_LOCAL_MACHINE "${UNINSTALL_PATH}" "VersionMinor" ${VERSION_MINOR}
WriteRegStr HKEY_LOCAL_MACHINE "${UNINSTALL_PATH}" "UninstallString" '"$INSTDIR\uninstall.exe"'
WriteRegStr HKEY_LOCAL_MACHINE "${UNINSTALL_PATH}" "QuietUninstallString" '"$INSTDIR\uninstall.exe" /S'
WriteUninstaller "uninstall.exe"
; Write an entry for ShellExecute
@ -995,6 +1010,15 @@ File "user-guide.chm"
SectionEnd
!endif
Section "-Finally"
; Compute and write the installation directory size
${GetSize} "$INSTDIR" "/S=0K" $0 $1 $2
IntFmt $0 "0x%08X" $0
WriteRegDWORD HKEY_LOCAL_MACHINE "${UNINSTALL_PATH}" "EstimatedSize" "$0"
SectionEnd
Section "Uninstall" un.SecUinstall
;-------------------------------------------