Egyéni VBScript adatgyűjtők létrehozása általánosan minden konfigurációs fájlhoz

Létrehozhat egyéni, általános VBScript adatgyűjtőket, amelyekben a fájlnévnek tartalmazni kell az előfeltétel tulajdonság nevét és a /lib alkönyvtárban kell tárolni őket. Az adatgyűjtő kódot tartalmaz az előfeltétel tulajdonság aktuális értékének lekérdezéséhez. Az érték lekérdezéséhez általános függvényeket és alrutinokat is használhat, ha szükséges.

Mielőtt elkezdené

Az adatgyűjtők létrehozása előtt tekintse át az előre meghatározott függvénykészletet és az alrutinokat az alábbi függelékekben. Állapítsa meg, hogy fel tudja-e használni valamelyiket az aktuális értékek lekérdezéséhez: Határozza meg, hogy az adatgyűjtőnek kell-e ellenőrizni az előfeltétel tulajdonság létezését, és ha igen, akkor milyen további információkat kell összegyűjteni. Minden egyes ellenőrzésnek vissza kell adni egy értéket, hogy létezik-e vagy nem. Például:
  • Ellenőrizheti, hogy egy adott környezeti változó létezik-e, például a termék alapkönyvtára. Például TCR_HOME az Tivoli Common Reporting termékhez
  • Ellenőrizheti, hogy a környezeti változó tartalmaz-e JAR fájlt, binárist vagy útvonalat, például az útvonalat a JRE fájlhoz a PATH környezeti változóban.
  • Ellenőrizheti egy környezeti változó aktuális értékét, mint például a termék alapkönyvtárát. Például TCR_HOME az Tivoli Common Reporting termékhez,
  • Ellenőrizheti, hogy a termék telepítve van-e.
  • Ellenőrizheti, hogy a terméknek mely változata van telepítve.

Eljárás

  1. Hozzon létre egy VBScript fájlt. Mentse a fájlt a ips_root/lib könyvtárba az alábbi elnevezési megállapodás változatával:
    [prefix_identifier.]property_name.vbs
    Ahol:
    • prefix_identifier az előfeltétel tulajdonságok előre meghatározott kategóriájának előtag-azonosítója, ahogy az 1. Táblázat rész tartalmazza.
    • property_name az előfeltétel tulajdonság neve és az adatgyűjtő nevében kerül felhasználásra.
    Például az mssqlVersion.vbs tartalmazza a kódot az MS SQL Server előfeltétel tulajdonság aktuális értékének lekérdezéséhez a Windows számítógépen.
  2. A VBScript szerkesztővel adja hozzá a kódot az előfeltétel tulajdonság értékének lekérdezéséhez. A VBScript COM és a függvények segítségével érheti el a Windows környezet elemeit és futtathatja a Windows parancsfájl hosztkörnyezetében. Győződjön meg róla, hogy az ellenőrzés szabványos kimenetet ad vissza az alábbiak szerint:
    WScript.Echo "property_name=" & var_for_value
    • property_name, amely az előfeltétel tulajdonságot ábrázolja, ahogy a konfigurációs fájlba be van írva, például: env.tcrhome.
    • var_for_value a tényleges érték VBScript változója, amelyet az adatgyűjtő az előfeltétel tulajdonsághoz lekérdez.
    Annak ellenőrzéséhez, hogy a TCR_HOME környezet létezik-e és a tényleges érték visszaadásához, ahol az előfeltétel tulajdonság neve: env.tcrhome:
    set wshShell = WScript.CreateObject("WScript.Shell")
    tcr_home=WshShell.ExpandEnvironmentStrings("%TCR_HOME%")
    WScript.Echo "env.tcrhome=" & tcr_home
    Annak ellenőrzéséhez, hogy a JRE be van-e állítva a PATH változóban, ahol az előfeltétel tulajdonság neve: env.path.jre:
    Set wshShell = WScript.CreateObject("WScript.Shell")
    path = WshShell.ExpandEnvironmentStrings("%PATH%")
    Set objRegEx = new RegExp
    objRegEx.Pattern = "(^|([:;\\/]))(C:\Program Files\IBM\Java60\jre\bin)($|[:;])"
    objRegEx.IgnoreCase = True
    objRegEx.Global = True
    Set matches = objRegEx.Execute(path)
    WScript.Echo "env.path.jre=" & (matches.Count > 0)
    A telepített Tivoli Directory Integrator verziószámának ellenőrzéséhez, ahol az előfeltétel tulajdonság neve: installedSoftware.TDI.version:
    strComputer = "."
    strKeyPath = "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall"
    regDisName = "DisplayName"
    regDisVer = "DisplayVersion"
    
    Set oReg = GetObject("winmgmts:{impersonationLevel=Impersonate}!\\" &
            		strComputer & "\root\default:StdRegProv")
    
    Set sftReg = new RegExp
    sftReg.pattern = "Tivoli Directory Integrator"
    sftReg.Global=False
    oReg.EnumKey HKEY_LOCAL_MACHINE, strKeyPath, arrSubKeys
    For Each subkey In arrSubKeys
        searchkey = strKeyPath & "\" & subkey
        oReg.GetStringValue HKEY_LOCAL_MACHINE, searchkey, regDisName, strName
        oReg.GetStringValue HKEY_LOCAL_MACHINE, searchkey, regDisVer, strVersion
        If Not IsNull(strName) Then
           Set matches = sftReg.Execute(strName)
           If matches.Count > 0 Then
               Wscript.Echo "installedSoftware.TDI.version=" & strVersion
           End If
        End If      
    Next
  3. Futtassa a VBScript adatgyűjtőt és győződjön meg róla, hogy nincs futás közbeni hiba, és végezzen hibakeresést, ha szükséges.
  4. Csak abban az esetben hozzon létre egyéni kiértékelőt, ha a szabványos összehasonlító függvények nem tudják összehasonlítani az aktuális és az elvárt értékeket.