03_NSIS_将卸载信息添加到“添加、删除程序”
1. 使用方式
在HKLM \ Software \ Microsoft \ Windows \ CurrentVersion \ Uninstall
下创建一个具有产品名称的密钥,以将条目添加到“控制面板”的“添加\删除程序”部分。
可以将多个值写入密钥,以提供有关您的应用程序和卸载程序的其他信息。
使用WriteRegStr命令(对于字符串)或WriteRegDWORD命令(对于DWORD值)写入值。
例如:
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Product" "DisplayName" "Application Name"
2. 在注册表添加必要信息
假设我们要安装的应用程序是yiyitian.exe
,我们需要在HKLM中Software\Microsoft\Windows\CurrentVersion\Uninstall
部分中创建一个新密钥,密钥将是软件的名称,并且具有两个子密钥,一个具有软件的显示名称,另一个具有卸载程序的位置。
2.1 添加应用程序名称
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\yiyitian" "DisplayName" "yiyitian"
2.2 添加卸载程序的路径和文件名
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\yiyitian" "UninstallString" "$INSTDIR\uninstall.exe"
2.3 删除添加的注册表信息
DeleteRegKey HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\yiyitian"
3.在注册表添加的非必要属性
QuietUninstallString
(字符串) -卸载程序的路径和文件名,以及在没有可见窗口的情况下进行卸载的开关InstallLocation
(字符串)-安装目录($INSTDIR)InstallDate
(字符串)-yyyyMMdd格式的安装日期。Windows使用密钥修改日期(如果不存在)。DisplayIcon
(字符串)-将在您的应用程序名称旁边显示的图标的路径,文件名和索引Publisher
(字符串)-发布者的(公司)名称ModifyPath
(字符串)-应用程序修改程序的路径和文件名InstallSource
(字符串)-从中安装应用程序的位置ProductID
(字符串)-应用程序的产品IDReadme
(字符串)-自述文件信息的路径(文件或URL)RegOwner
(字符串)-应用程序的注册所有者RegCompany
(字符串)-申请的注册公司HelpLink
(字符串)-链接到支持网站HelpTelephone
(字符串)-支持的电话号码URLUpdateInfo
(字符串)-链接到网站以进行应用程序更新URLInfoAbout
(字符串)-链接到应用程序主页DisplayVersion
(字符串)-应用程序的显示版本VersionMajor
(DWORD)-应用程序的主要版本号VersionMinor
(DWORD)-应用程序的次要版本号NoModify
(DWORD)-如果卸载程序没有“修改已安装应用程序”的选项,则为1NoRepair
(DWORD)-如果卸载程序没有“修复安装”的选项,则为1,
如果NoModify和NoRepair都设置为1,则按钮显示“删除”,而不是“修改/删除”。SystemComponent
(DWORD)-设置1,以防止在“控制面板”中“添加/删除程序”的“程序列表”中显示该应用程序。EstimatedSize
(DWORD)-已安装文件的大小(以KB为单位)Comments
(字符串)-描述安装程序包的注释
4. 参考网址
https://nsis.sourceforge.io/Add_uninstall_information_to_Add/Remove_Programs#Computing_EstimatedSize