Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Windows 添加/删除程序中缺少修复功能是否表示不是基于MSI的安装?_Windows_Windows Installer - Fatal编程技术网

Windows 添加/删除程序中缺少修复功能是否表示不是基于MSI的安装?

Windows 添加/删除程序中缺少修复功能是否表示不是基于MSI的安装?,windows,windows-installer,Windows,Windows Installer,如果我安装了一个应用程序,然后进入Windows中的“添加/删除程序”,并在单击“支持信息”时看到没有“修复”按钮,这是否表明安装不是基于MSI的 所有MSI安装在此位置是否都有修复按钮?否。可以使用删除基于MSI的安装中的按钮。简短回答:查看注册表HKLM\Software\Microsoft\Windows\CurrentVersion\Uninstall(64位机器上可能有等效的WOW64注册表项) 应用程序在添加/删除程序(“ARP”)对话框中的存在可能来自多个来源。最值得注意的当然是M

如果我安装了一个应用程序,然后进入Windows中的“添加/删除程序”,并在单击“支持信息”时看到没有“修复”按钮,这是否表明安装不是基于MSI的


所有MSI安装在此位置是否都有修复按钮?

否。可以使用删除基于MSI的安装中的按钮。

简短回答:查看注册表HKLM\Software\Microsoft\Windows\CurrentVersion\Uninstall(64位机器上可能有等效的WOW64注册表项)

应用程序在添加/删除程序(“ARP”)对话框中的存在可能来自多个来源。最值得注意的当然是MSI数据库

将应用程序插入ARP的传统方法是,自定义安装程序复制文件和设置,并将其卸载exe“注册到注册表中。(是否记得“InstallShield”?)

如果内存正常(从windows 95 MSI之前的日子开始),HKLM\Software\Microsoft\windows\CurrentVersion\Uninstall实际需要存在的子项只有“DisplayName”和“UninstallString”。如果这两个注册表值存在,则应用程序在ARP中有一个“Uninstall”按钮


此处的更多详细信息:

实际上,MSI只不过是在此注册表项下注册已安装的应用程序。此注册表项是列表的唯一排序(如果不计算32位和64位对应项的话)。(尽管downvote不是我的。)