【发布时间】:2011-02-24 08:54:01
【问题描述】:
我之前在以下链接中的stackoverflow中提出了这个问题-
How to check if a particular version of flash player is installed or not in C#.?
Type type = Type.GetTypeFromProgID("ShockwaveFlash.ShockwaveFlash");
object flashObject = Activator.CreateInstance(type);
object versionString = flashObject.GetType().InvokeMember("GetVariable", BindingFlags.InvokeMethod,null, flashObject, new object[] {"$version"});
但我的代码能够检测到 64 位版本 10.2.161.23,只有当系统上安装了其他 32 位版本 10.1.102.64 时。
但是当我卸载其他版本时 10.1.102.64,从系统,我的代码没有检测到64位版本 10.2.161.23,“type”变量的值为“null”。
我不知道为什么 64 位版本需要一个 32 位版本的闪存来检测 64 位版本的存在,使用上面的代码。
提前致谢。
【问题讨论】: