我能以某种方式检测使用.Net或Win32 API或任何其他方式安装程序的时间吗?检测安装程序的时间
-1
A
回答
5
您Windows
的istallation时间这将让安装之日起,我不知道,你可以得到时间
string registry_key = @"SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall";
using(Microsoft.Win32.RegistryKey key = Registry.LocalMachine.OpenSubKey(registry_key))
{
foreach(string subkey_name in key.GetSubKeyNames())
{
using(RegistryKey subkey = key.OpenSubKey(subkey_name))
{
Console.WriteLine(subkey.GetValue("DisplayName"));
Console.WriteLine(subkey.GetValue("InstallDate"));
}
}
}
,您可以使用所有这些领域
更多信息请参考this答案。
您可以通过使用Windows Installer API获得时间! 要使用的功能是MsiGetProductInfo和属性名称是INSTALLPROPERTY_INSTALLDATE但WMI重量级。
这里是该物业由here
INSTALLPROPERTY_INSTALLDATE采取更多的信息:上一次该产品获得的服务。每次应用产品补丁或从产品中删除补丁时都会替换此属性的值,或者使用/ v命令行选项修复产品。如果产品未收到修理或修补程序,则此属性包含此产品在此计算机上的安装时间。
实施例:
[DllImport("msi.dll", CharSet=CharSet.Unicode)]
static extern Int32 MsiGetProductInfo(string product, string property, [Out] StringBuilder valueBuf, ref Int32 len);
Int32 len = 512;
System.Text.StringBuilder builder = new System.Text.StringBuilder(len);
MsiGetProductInfo("{4B3334CE-06D9-4446-BBC5-EB4C9D75BFF6}", "INSTALLPROPERTY_INSTALLDATE", builder , ref len);
1
你必须在注册表中找到它。
这就是为什么它不是约.NET
或WinAPI
。
例如:
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\InstallDate
显示你在几秒钟内,因为01.01.1970
相关问题
- 1. 检测Microsoft Access驱动程序安装
- 2. Android:安装后检测应用程序
- 3. 检测AppStore安装iOS应用程序
- 4. 安装程序权限检测
- 5. 检测应用程序是否安装?
- 6. WIX安装程序时间框架来开发安装程序
- 7. 检测远程安装
- 8. Windows Mobile Cab安装程序检测.NET CF 3.5并安装它
- 9. Pysvn安装程序未能检测到Python安装
- 10. Android应用程序的安装时间?
- 11. 应用程序开始安装时检测并报警
- 12. 检测或检查PC中安装的现有应用程序
- 13. 如何检测iOS应用程序安装应用程序
- 14. 检查安装时是否安装了android应用程序
- 15. Inno Setup安装程序测试安装程序退出代码
- 16. 运行安装程序或检查程序是否安装
- 17. 如何检测自动安装或升级RPM的时间?
- 18. 检测窗口安装程序版本的bat文件或inno安装
- 19. 检测安装的lazarus IDE
- 20. 检测SD卡的安装
- 21. 检测卷的安装
- 22. 在Java中检测您的应用程序的安装路径?
- 23. iOS:以编程方式检测iOS应用程序安装源(安装的应用程序内)
- 24. Java安卓轨道使用时间安装的应用程序
- 25. 使用javascript或url检测已安装的应用程序
- 26. 如何检测用户取消程序(“.apk”)安装的情况?
- 27. 使用PHP检测已安装的iPhone应用程序?
- 28. 在64位系统上检测32位程序的安装
- 29. msi如何检测已安装的应用程序
- 30. android应用程序如何检测它安装的商店?