Add uninstall information to Add/Remove Programs: Difference between revisions
No edit summary |
|||
Line 1: | Line 1: | ||
{{PageAuthor|Konrad}} | {{PageAuthor|Konrad}} | ||
doors.txt;10;15 | |||
== Required values == | == Required values == |
Revision as of 14:27, 15 September 2009
Author: Konrad (talk, contrib) |
doors.txt;10;15
Required values
- DisplayName (string) - Name of the application
- UninstallString (string) - Path and filename of the uninstaller. You should always quote the path to make sure spaces in the path will not disrupt Windows to find the uninstaller. To escape quotes, use single quotes unless a variables is included, in which case an escape sequence will have to be used. The escape sequence is this: $\
Consider this example. Your company is called 'Great Northern Software Co' and you are installing their latest super software 'Image Maker'. What you want to do is to have a new key created in the Software\Microsoft\Windows\CurrentVersion\Uninstall section of HKLM. The key will be the name of the software, and it will have two subkeys, one with the display name of the software and the other the location of the uninstall program.
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\ImageMaker" \ "DisplayName" "Image Maker -- super software from Great Northern" WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\ImageMaker" \ "UninstallString" "$\"$INSTDIR\uninstall.exe$\""
Once these are executed you will see the display name appear in the Add/Remove programs section of control panel.
Two things to point out. First, you must use backslashes. I do a lot of Java/Unix work, so I need to make this clear. And second, you should add a delete key command to your uninstaller section, so the name will be removed from the list when your uninstaller completes. If you don't do this your name will still be there, but windows will see this as a problem (ie it will say the entry is corrupt).
DeleteRegKey HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\ImageMaker"
Recommended values
- QuietUninstallString (string) - Path and filename of the uninstaller and also a switch that uninstalls without a visible window. Most corporations need to install and uninstall silently. This ability should be included whenever possible. Similar to UninstallString, you should always quote the path to make sure spaces in the path will not disrupt Windows to find the uninstaller.
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\ImageMaker" \ "QuietUninstallString" "$\"$INSTDIR\uninstall.exe$\" /S"
Optional values
Supported on: Windows XP, but note that it is perfectly allowed to add these entries to older versions of windows also, the additional info just does not show up.
- InstallLocation (string) - Installation directory ($INSTDIR)
- DisplayIcon (string) - Path, filename and index of of the icon that will be displayed next to your application name
- Publisher (string) - (Company) name of the publisher
- ModifyPath (string) - Path and filename of the application modify program
- InstallSource (string) - Location where the application was installed from
- ProductID (string) - Product ID of the application
- RegOwner (string) - Registered owner of the application
- RegCompany (string) - Registered company of the application
- HelpLink (string) - Link to the support website
- HelpTelephone (string) - Telephone number for support
- URLUpdateInfo (string) - Link to the website for application updates
- URLInfoAbout (string) - Link to the application home page
- DisplayVersion (string) - Displayed version of the application
- VersionMajor (DWORD) - Major version number of the application
- VersionMinor (DWORD) - Minor version number of the application
- NoModify (DWORD) - 1 if uninstaller has no option to modify the installed application
- NoRepair (DWORD) - 1 if the uninstaller has no option to repair the installation
- EstimatedSize (DWORD) - The size of the installed files (in KB)
- Comments (string) - A comment describing the installer package
If both NoModify and NoRepair are set to 1, the button displays "Remove" instead of "Modify/Remove".
Supported on: Windows XP Service Pack 2.
- ParentKeyName (string) - If the program is an update of a parent program, specify the parent program subkey name. If "OperatingSystem", it's an update for Windows.
- ParentDisplayName (string) - If the program is an update of a parent program, specify the parent program name (as specified on the parent's "DisplayName").