【发布时间】:2011-09-10 20:52:26
【问题描述】:
我试图使用 windows api 来查找已安装应用程序的版本信息。
我使用升级代码通过 MsiEnumRelatedProducts api 查找产品代码,但是当我尝试使用产品代码使用 MsiGetProductInfo 时,版本信息作为垃圾返回。
这是我的 MsiGetProductInfo api:
[DllImport("msi.dll", CharSet = CharSet.Unicode)]
private static extern Int32 MsiGetProductInfo(
string product, string property, [Out] StringBuilder valueBuf,
ref Int32 len);
MsiGetProductInfo(sbProductCode, "INSTALLPROPERTY_INSTALLVERSION", builder, ref len);
对我做错了什么有什么想法吗?
【问题讨论】:
-
我自己解决了这个问题:我只需要更改字符串属性以使用 VersionString 就可以了。
-
您应该发布您的代码作为答案。
-
感谢TMB指出,下次我会记住的。