Lorsque vous créez des collecteurs VBScript communs et personnalisés, le nom du fichier doit contenir le nom de la propriété de prérequis et doit être stocké dans le /sous-repertoire lib. Le collecteur contient le code permettant d'obtenir la valeur réelle pour une propriété de prérequis. Il peut également utiliser les fonctions communes et les sous-routines pour obtenir la valeur si nécessaire.
Avant de commencer
Assurez-vous d'avoir revu l'ensemble des fonctions prédéfinies et
les sous-routines dans les annexes suivantes avant de créer les collecteurs.
Déterminez si vous pouvez utiliser chacun d'entre eux afin d'obtenir les valeurs réelles:
Déterminez si le collecteur doit vérifier que la propriété de prérequis existe et si elle n'existe pas, quelle autre information doit être recueillie.
Chaque vérification doit renvoyer une valeur, si elle existe ou pas. Par exemple :
- vérifiez si une variable d'environnement existe, comme le répertoire de base d'un produit. Exemple : TCR_HOME pour Tivoli Common Reporting
- vérifiez si la variable d'environnement contient un fichier JAR, du code binaire,
ou chemin d'accès, comme le chemin d'accès au JRE dans la PATH variable d'environnement.
- vérifiez la valeur réelle d'une variable d'environnement, comme le répertoire de base d'un produit. Exemple : TCR_HOME pour Tivoli Common Reporting.
- vérifiez si le produit est installé.
- vérifiez quelle version du produit est installée.
Procédure
- Créer un fichier VBScript. Enregistrer le fichier dans le ips_root/répertoire lib, avec la variante de la convention d'attribution de nom du fichier suivante:
[prefix_identifier.]property_name.vbs
Où :
- prefix_identifier est l'identificateur à préfixe pour une catégorie prédéfinie de propriétés de prérequis comme décrit dans Tableau 1.
- property_name est le nom de la propriété de prérequis et utilisé dans le nom du collelcteur.
Par exemple, mssqlVersion.vbs contient le code permettant d'obtenir la valeur réelle de la propriété de prérequis MS SQL Server sur la machine Windows.
- Utiliser un éditeur VBScript, permet au code d'obtenir la valeur pour la propriété de prérequis. Utilisez VBScript COM et des fonctions pour accéder aux éléments de l'environnement Windows et procédez à l'exécution dans l'environnement Windows Script Host. Assurez-vous que la vérification renvoie la sortie standard comme suit :
WScript.Echo "property_name=" & var_for_value
- property_name représente la propriété de prérequis telle qu'écrite dans le fichier de configuration ; par exemple, env.tcrhome.
- var_for_value représente la variable VBScript pour la valeur réelle obtenue par le collecteur pour la propriété de prérequis.
Pour vérifier si l'environnement TCR_HOME existe et renvoie la valeur réelle, pour laquelle le nom de la propriété de prérequis est env.tcrhome :
set wshShell = WScript.CreateObject("WScript.Shell")
tcr_home=WshShell.ExpandEnvironmentStrings("%TCR_HOME%")
WScript.Echo "env.tcrhome=" & tcr_home
Pour vérifier si le JRE est défini dans le chemin d'accès à la variable, pour laquelle le nom de la propriété de prérequis est 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)
Pour vérifier la version de Tivoli Directory Integrator installée, où le nom de la propriété de prérequis est 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
- Exécutez le collecteur VBScript afin de s'assurer qu'il n'existe pas d'erreurs d'exécution et de débogage si nécessaire.
- Créez un évaluateur personnalisé uniquement si les fonctions de comparaison standard ne peuvent pas comparer les valeurs réelles et prévues.