如何在 Windows 7 中手动注册卸载程序?

如何在 Windows 7 中手动注册卸载程序?

目标是在一台在线 PC 上安装 MSYS2(包含各种软件包),然后将安装复制到多台离线 PC。据我所知,这是合法的(MSYS2 是开源的),而且非常简单。MSYS2 尽可能避免使用注册表,并且在 AppData 中没有单独的文件夹,因此它主要只是复制 c:\msys64 文件夹并重新创建开始菜单项。

但是,如果能正确注册卸载程序就更好了。注册表中有一个 GUID,我不知道它从何而来,所以我不太愿意手动将这些信息强行输入注册表。

Windows 中是否有可以正确注册卸载程序的工具?可以按预期方式查找/生成 GUID 的工具?

答案1

当然可以。运行:

REG ADD HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Uninstall\AnyText /v UninstallString /t REG_SZ /d "C:\Program Files\Whatever\Uninstall.exe"

(或者,使用 RegEdit。)

“AnyText”可以是 GUID,也可以是任何其他文本。Windows 只会扫描 Uninstall 下的子项

至于创建 GUID,没有官方的方法。GUID 代表“全局唯一标识符”。至少,官方是这样认为的。在我看来,最好将其视为“全局唯一标识符”。这个想法是,它有如此多的数字,以至于有效的随机化可能会创建一个如此独特的数字,以至于没有其他人会想出相同的数字。(或者,即使他们这样做了,如果伦敦的某个主要政府机构想出了与莫斯科某人的地下室相同的 GUID,他们注意到的可能性非常低,以至于他们永远不会知道。)没有需要注册才能使用 GUID 的中央数据库,人们可以根据需要使用不同的方法,只要最终结果有望如此独特,以至于没有其他人最终会得到相同的 GUID。

可能有一些工具可以生成 GUID,比如一些创建可执行文件的编程环境,但由于它的本质非常分散,所以没有理由需要使用这样的东西。

相关内容