有些方法可以在完全安装或卸载某些应用程序时收到通知

时间:2012-05-18 09:19:37

标签: c#

我正在尝试获取完全安装/卸载的应用程序的通知 通过使用WMI win32_product类。在c#??

中有没有其他方法可以做到这一点

4 个答案:

答案 0 :(得分:1)

如果您自己编写了安装程序,则可以控制卸载时发生的情况。那够了吗?

答案 1 :(得分:0)

我认为您只需要通过Process.Start调用安装/卸载文件并等到它结束

答案 2 :(得分:0)

对于一般统计信息以及安装/卸载,您可以使用DeskMetrics,这也是免费选项。

答案 3 :(得分:0)

对不起,但我很确定你不能。 WMI只是有关您的计算机库存的信息的数据库。 如果应用程序安装成功与否,则完全取决于应用程序使用的安装程序。

如果安装程序已损坏,它仍会报告安装正常,但该程序实际上无法正常工作。

Microsoft安装程序(MSI)非常可靠,因为它具有回滚功能。如果在安装过程中发生错误,安装程序将回滚到目前为止所做的所有更改,因此不会在WMI中显示。

希望这有点清除它。

------编辑

实际上,取决于项目的范围.. 你可以编写一个安装程序包装器(在我之前没有完成它,但应该可行)。

几乎所有众所周知的安装程序(MSI,Installshield等)都会在完成执行后返回结果代码。

如果您编写了一个执行安装程序的应用程序,您将能够检索结果代码,并知道安装是否成功。 成功安装通常会返回0。

但为了使其正常工作,您必须确保所有安装都由包装器执行,而不是直接执行,并且它不是100%可靠,因为它仍然取决于安装程序。

只是一个想法