這甚至可能嗎?在Win32/C++中獲取安裝的Flash ActiveX版本
我嵌入Flash在我的應用程序的IE框架內,想檢查,並安裝了Flash的是什麼版本的了。
應用程序需要在沒有管理員權限的情況下運行。
獎勵問題:我還可以檢查是否在IE設置中啓用了ActiveX控件?
這甚至可能嗎?在Win32/C++中獲取安裝的Flash ActiveX版本
我嵌入Flash在我的應用程序的IE框架內,想檢查,並安裝了Flash的是什麼版本的了。
應用程序需要在沒有管理員權限的情況下運行。
獎勵問題:我還可以檢查是否在IE設置中啓用了ActiveX控件?
的解決方案是搜索Flash在註冊表HKEY_CLASSES_ROOT\CLSID
下的CLSID("{D27CDB6E-AE6D-11cf-96B8-444553540000}"
)。
在那裏你可以閱讀\InprocServer32
,它給你的OCX。然後通過GetFileVersionInfo
獲取版本。
這應該適用於任何COM控件。
然後,我或多或少是正確的,那麼! :) – 2010-05-24 16:50:39
唯一想到的就是檢查相應的* .dll或* .ocx文件的文件版本。在我的64位系統,該文件是
C:\Windows\SysWOW64\Macromed\Flash\Flash10b.ocx
正如你可能知道,很多應用程序可以列出所有已安裝的ActiveX控件。所以它是絕對可以通過編程獲得文件名。一旦你有了,你可以獲得文件版本。
希望別人能儘快給你一個更開明的答案。
更新
現在我想想,還有在註冊表中每一個控制鍵。
您是否閱讀過文檔? http://msdn.microsoft.com/en-us/library/aa751968(VS.85).aspx – 2010-05-23 18:43:08