首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >卸载“程序和功能”中的程序是如何工作的?

卸载“程序和功能”中的程序是如何工作的?
EN

Stack Overflow用户
提问于 2014-12-26 22:00:38
回答 3查看 1.1K关注 0票数 1

同时通过控制面板卸载一个msi包。在任务栏中,我注意到没有调用带有commandLine \x的msiexec.exe,但是仍然卸载了msi包。在存储该特定软件注册表中,它们已经提供了卸载串,在该卸载串中类似的东西被给予"MsiExec.exe /X{2012098d-ee9-4769-8dd3-B038050854D4}“。

因此,它还有其他方法可以在不调用Msiexec.exe的情况下卸载软件??

如果是这样,那是怎么回事??有人能在这方面给我点启发吗?

EN

回答 3

Stack Overflow用户

发布于 2014-12-28 04:55:18

对于Windows Installer产品,不使用注册表中的UninstallString。Windows只需调用API即可进行卸载。是的,如果你想自定义卸载来做一些不同的事情,有时这是一件痛苦的事情,但这就是它的工作方式。

票数 2
EN

Stack Overflow用户

发布于 2014-12-27 17:57:08

将程序添加到ARP (添加/删除程序控制面板)的传统方法是在以下注册表项中指定卸载程序的命令字符串(例如c:\app\uninstall.exe):

代码语言:javascript
运行
复制
KEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Uninstall

代码语言:javascript
运行
复制
KEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Uninstall

卸载程序的路径由每个子项的"UninstallString“值指定

不使用MSI的安装程序正是使用此技术在ARP中显示以支持或卸载。

更多详细信息请访问:http://msdn.microsoft.com/en-us/library/aa372105%28v=vs.85%29.aspx

票数 1
EN

Stack Overflow用户

发布于 2014-12-26 22:05:04

msiexec.exe是用于安装/卸载任务的一般过程。它以特定的程序id /类id作为参数,其格式为GUID -您发布的长十六进制字符串。

即使你没有看到用/x开关执行,当你选择直接从控制面板卸载某些东西时,它也会悄悄地传递这个字符串-结果就是卸载。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27658127

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档