WMI 顯示錯誤的 Microsoft Access 版本
我們將 Microsoft Access 用於某些數據庫功能,並且正如你們中的大多數人已經知道的那樣,當 Access 的過時版本訪問時,Access 數據庫可能會非常脾氣暴躁。為了控制這一點,我有一個設備可以跟踪版本號並在需要時更新過時的版本。我注意到我所有的工作站都發生了一些奇怪的事情。
如果我在工作站上執行wmic然後執行以下命令:
product get name, version
它顯示以下版本資訊:
Name Version: Microsoft Office Access MUI (English) 2010 14.0.6029.1000
然而,當我打開 Microsoft Access 並轉到File->Help時,它會顯示版本:
Version:14.0.6112.5000
我知道 Access 中顯示的版本號是正確的,而wmic中顯示的版本號不正確。這在 Windows 7 和 XP 機器上都會發生。有沒有辦法更新 WMI,因為我依賴該資訊進行版本控制?為什麼更新後顯示這麼舊的版本?
編輯1:
當我查看 MSACCESS.exe 的版本時,它顯示
14.0.6024.1000
,這是更舊的訪問版本!WMIC 究竟在哪裡尋找版本號?它是可以編輯的系統資料庫項嗎?編輯2:
我發現版本號
HKLM\Software\Microsoft\Windows\CurrentVersion\Installer\Userdata\userSID\00004109510090400000000000F01FEC\DisplayVersion
似乎是 WMIC 從中提取其版本號的地方,這是有道理的。Access->File->Help菜單從哪裡提取版本號?它是否查看此數據的最新服務包 exe?
我發現Access->File->Help從
C:\Program Files\Common Files\microsoft shared\OFFICE14\MSO.dll
. 因此,每當 Microsoft Office 更新時,它都會更新此文件的版本號,而不是上面提到的系統資料庫項。在不手動更改上面列出的系統資料庫項的情況下,沒有可行的方法讓 WMIC 讀取正確的 Access 版本。
如果您執行以下操作,您會得到什麼結果
獲取項目屬性 “HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall*” | ft 顯示名稱,顯示版本