我有一個腳本(下面),它查找當前版本的Microsoft Office Installed並將其輸出爲字符串。例如,字符串輸出將是15.0.4771.1000。我不關心15歲以後的任何事情。我的目標是驗證Office的版本是15.我想在第一個.
(期間)之前取出digts的子字符串,並將其與受質疑的值進行比較。我將如何做到這一點?從字符串輸出中查找子串
即使通配符爲比較值,下面的腳本也不起作用。
Dim oRegistry
Dim oFSO
Dim sKey
Dim sAppExe
Dim sValue
Dim sAppVersion
Const HKEY_LOCAL_MACHINE = &H80000002
Set oRegistry = GetObject("winmgmts:{impersonationLevel=impersonate}//./root/default:StdRegProv")
Set oFSO = CreateObject("Scripting.FileSystemObject")
sKey = "Software\Microsoft\Windows\CurrentVersion\App Paths"
oRegistry.GetStringValue HKEY_LOCAL_MACHINE, sKey & "\" & sAppExe, "", sValue
MsgBox oFSO.GetFileVersion(sValue)
If oFSO.GetFileVersion(sValue)="15.*" Then
WScript.Echo("Office 2013 is installed")
Else
WScript.Echo("You do not have Office 2013 installed")
End If
Set oFSO = Nothing
Set oRegistry = Nothing
['Split'功能](https://msdn.microsoft.com/en-us/library/0764e5w5(V = vs.84)。 aspx) – JosefZ
是否必須是VBScript?你可以用PowerShell,KiXtart等做同樣的事情,並達到同樣的目標。 – Leptonator