2011-08-08 49 views
3

我在这个问题上没有发现任何有用的网络主题。 这些都是关于如何卸载python或卸载ruby,但没有关于#​​{主题}的信息。如何使用python或(和)ruby卸载任何应用程序

主要问题是,我用其他有趣的answers尝试使用PowerShell脚本卸载应用程序,但所有这些都没有帮助我,因为具有多个-Query“query”变体的脚本从未发现我的应用程序例如'%APPL_NAME%'的屏蔽或版本号。

好像表格Win32_Product填写不正确或任何功能现在工作不好。 此外,对我来说,如果我有这样灵活的语言,使用PowerShell并不是那么酷。

所以我对如何通过ruby或python卸载任何程序感兴趣。

谢谢你的任何想法:-)

编辑: 让我问这个问题,以另一种方式。如何卸载已安装通过MSI安装程序的普通程序

编辑: 为什么如此强烈?我不是一个完美的IT人,而且我来自俄罗斯,对英语不太了解。我不配得到负分。你可以保持零。 谢谢。

编辑: 感谢所有回复。我很感激。

+0

你使用WMI来安装你的应用程序吗?如果没有,如链接问题所述,那里的答案将不会找到您的申请。 –

+0

噢好吧,我会尝试安装WMI。谢谢。对不起我的注意力不集中。但是现在我对使用ruby或py实现这个方法感兴趣。 :-) –

+0

这将是困难的或不可能的。 Python和Ruby是为Unix而非Windows设计的。 –

回答

2

可以在Ruby或Python调用WMIC命令。过程如下:

wmic product get name

此命令将列出所有软件的正式名称,例如,在办公产品,其名称可能是“微软办公20003临”或“Microsoft Office 2003的首页&学生,你可以使用Ruby或Python来过滤掉什么是extacly名,然后执行

wmic product where name='Microsoft office 2003 Home & Student' call uninstall

替换“与你喜欢的应用程序的Microsoft Office 2003家庭&学生。

如果您不想直接执行wmic,而您可以导入python wmi或ruby wmi。

3

“卸载任何程序” - 邪恶/糟糕的设计程序可能会创建隐藏在许多地方的文件 - 我看不到任何方法来创建程序,可以找到所有的程序。 (例如:任何包含各种恶意软件)

+0

好的。让我以另一种方式提出这个问题。如何卸载通过MSI安装程序安装的普通程序。 –

3

您可以通过msiexec命令完成基于msi的安装。你可以从选择的脚本语言中运行\ spwan。

msiexec /? 

你需要包信息(主要是GUID) - 这可以在这里找到:

​​

Product子项可能是你最感兴趣的。

HTH, 马特