這不是一個很乾淨的解決方案,但由於唯一的「官方」的方式似乎是從Windows註冊表檢查它也許這將幫助:
我們知道,閃存文件位於都在(Windows目錄)\ system32 \ Macromed \ Flash(或64位系統上的SysWow64 \ Macromed \ Flash)。
每次閃存更新時,它都會保留日誌文件中進度的軌跡。根據不同的flash版本你要麼有一個)install.log的(很老版本的Flash)或b)FlashInstall.log
一)如果你通過瀏覽你看到各種entires文件和一個類型是這樣這個:WriteRegStr: "HKEY_CURRENT_USER\SOFTWARE\Macromedia\FlashPlayer" "FlashPlayerVersion"="10.0.45.2"
。
現在,您可以通過該文件自下而上並匹配"FlashPlayerVersion"=
字符串以獲取最新版本。
但是,這是一個真正的舊版本的Flash和install.log文件永遠不會從這個目錄中刪除,所以請確保您檢查FlashInstall.log太!
b)使用類似的方法,除了新的安裝日誌不保留「WriteRegStr」信息。現在,您可以代替查找DLL文件的名稱本身,例如我的最後一次更新創建的安裝日誌0009 [I] 00000014 C:\WINDOWS\system32\Macromed\Flash\NPSWF32_11_5_502_146.dll
,這意味着我的Flash版本11.5.502.146
另一個選項是
- 檢查插件核心文件的創建日期,並與版本發佈日期進行比較(相當不可靠,以防某人以某種方式管理安裝舊版本)
- 檢查NPSWF [.. version ..] .dll文件的實際屬性。您可以在「版本」選項卡中看到所有完整和精確的版本詳細信息。 但是,我不知道如何在腳本中訪問rightclick->屬性,所以你必須自己去發現,如果你決定去這個選項
- 問獨角獸
http:// stackoverflow可能存在重複。com/questions/5039636 /如何檢查,如果一個特殊版本的Flash播放器被安裝或沒有在c – codeghost
@ codeghost我不認爲這是一個重複。他們引用的是用於Flash Player的註冊表項。我正在查找包含該信息的文件。我希望我可以使用註冊表項,但它不在我的項目範圍內。我只會有文件訪問權限,而不是註冊表訪問權限。我的問題與文件相關。雖然謝謝! – toosweetnitemare
我指的是在C#中實例化對象的答案,並詢問它的版本,認爲這會對你有用。 – codeghost