Appendix E. Sample VBS

 <  Day Day Up  >  

This sample VBS lists all properties of all resources in a cluster. The VBS is referred to in Chapter 13, "High Availability in Windows Server 2003," in the "MS Cluster Resource" section.

 REM REM    Routine to print the parameter REM SUB HandleParameter ( strParameterName, objParameter ) WScript.Echo( "  " & strParameterName & ": " ) SELECT CASE VARTYPE( objParameter )     CASE vbEmpty         WScript.Echo( "   IsEmpty" )     CASE vbNull         WScript.Echo( "   IsNull" )     CASE vbInteger         WScript.Echo( "   Integer = " & objParameter & " - " & _  HEX( objParameter ) )     CASE vbLong         WScript.Echo( "   Long = " & objParameter & " - " & _  HEX( objParameter ) )     CASE vbSingle         WScript.Echo( "   ???Single = " & objParameter )     CASE vbDouble         WScript.Echo( "   ???Double = " & objParameter )     CASE vbCurrency         WScript.Echo( "   ???Currency = " & objParameter )     CASE vbDate         WScript.Echo( "   Date = " & objParameter )     CASE vbString         WScript.Echo( "   String = " & objParameter )     CASE vbObject         WScript.Echo( "   Object type = " & TYPENAME( objParameter ) )     CASE vbError         WScript.Echo( "   ???Error" )     CASE vbBoolean            Wscript.Echo( "   Boolean = " & objParameter )     CASE vbVariant         WScript.Echo( "   Variant = " & objParameter )     CASE vbDataObject         WScript.Echo( "   ???Data Access Object" )     CASE vbByte         WScript.Echo( "   Byte = " & objParameter & " - " & _  HEX( objParameter ) )     CASE ELSE         IF IsArray(objParameter) THEN             nWhat = VARTYPE( objParameter ) - vbArray             SELECT CASE nWhat                 CASE vbEmpty      WScript.Echo ( "    Empty Array" )                 CASE vbNull       WScript.Echo ( "    Null Array" )                 CASE vbInteger    CALL DoNumericArray ( _ "    Integer Array" , objParameter )                  CASE vbLong       CALL DoNumericArray ( _ "    Long Array" , objParameter )                 CASE vbSingle     CALL DoArray ( _ "    Single Array" , objParameter )                 CASE vbDouble     CALL DoArray ( _ "    Double Array" , objParameter )                 CASE vbCurrency   CALL DoArray ( _ "    Currency Array" , objParameter )                 CASE vbDate       CALL DoArray ( _ "    Date Array" , objParameter )                 CASE vbString     CALL DoArray ( _ "    String Array" , objParameter )                 CASE vbObject     WScript.Echo ( _ "    Object Array type = " & _ TYPENAME( objParemeter ) )                 CASE vbError      WScript.Echo ( _ "    ???Array of Error" )                 CASE vbBoolean    CALL DoNumericArray ( _ "    Boolean Array" ,  objParameter )                 CASE vbVariant    CALL DoArray ( _ "    Variant Array" , objParameter )                 CASE vbDataObject WScript.Echo ( _ "    ???Array of Object" )                 CASE vbByte       CALL DoNumericArray ( _ "    Byte Array" , objParameter )                 CASE ELSE             END SELECT         ELSE             WScript.Echo ( "    Unhandled VARTYPE=" & nWhat )         END IF END SELECT END SUB REM REM    Handle numeric Array REM SUB DoNumericArray ( strDescription , objParameter ) nCount = 0 FOR EACH Item IN objParameter     nCount = nCount + 1     WScript.Echo( strDescription & "( " & nCount & " ) = " & Item & _ " - " & HEX( Item ) ) NEXT END SUB REM REM    Handle generic Array REM SUB DoArray ( strDescription , objParameter ) nCount = 0 FOR EACH Item IN objParameter     nCount = nCount + 1     WScript.Echo( strDescription & "( " & nCount & " ) = " & Item ) NEXT END SUB REM REM    Main to handle all MSCluster_Resource Properties REM DIM ResourceSet, Resource, PropertySet, Property SET ResourceSet = GetObject( "winmgmts://./root/MSCluster" )._ InstancesOf( "MSCluster_Resource" ) WScript.Echo ( "Resource:" ) FOR EACH Resource IN ResourceSet     CALL HandleParameter( "Resource.Caption" , Resource.Caption )     CALL HandleParameter( "Resource.Characteristics" , _   Resource.Characteristics )     CALL HandleParameter( "Resource.CoreResource" , _   Resource.CoreResource )     CALL HandleParameter( "Resource.CryptoCheckpoints" , _   Resource.CryptoCheckpoints )     CALL HandleParameter( "Resource.DebugPrefix" , _   Resource.DebugPrefix )     CALL HandleParameter( "Resource.DeleteRequiresAllNodes" , _   Resource.DeleteRequiresAllNodes )     CALL HandleParameter( "Resource.Description" , _   Resource.Description )     CALL HandleParameter( "Resource.Flags" , Resource.Flags )     CALL HandleParameter( "Resource.InstallDate" , _   Resource.InstallDate )     CALL HandleParameter( "Resource.IsAlivePollInterval" , _   Resource.IsAlivePollInterval )     CALL HandleParameter( "Resource.LoadBalAnalysisInterval" , _   Resource.LoadBalAnalysisInterval )     CALL HandleParameter( "Resource.LoadBalMinMemoryUnits" , _   Resource.LoadBalMinMemoryUnits )     CALL HandleParameter( "Resource.LoadBalMinProcessorUnits" , _   Resource.LoadBalMinProcessorUnits )     CALL HandleParameter( "Resource.LoadBalSampleInterval" , _   Resource.LoadBalSampleInterval )     CALL HandleParameter( "Resource.LoadBalStartupInterval" , _   Resource.LoadBalStartupInterval )     CALL HandleParameter( "Resource.LocalQuorumCapable" , _   Resource.LocalQuorumCapable )     CALL HandleParameter( "Resource.LooksAlivePollInterval" , _   Resource.LooksAlivePollInterval )     CALL HandleParameter( "Resource.Name" , Resource.Name )     CALL HandleParameter( "Resource.PendingTimeout" , _   Resource.PendingTimeout )     CALL HandleParameter( "Resource.PersistentState" , _   Resource.PersistentState )     WSCript.Echo( "  Resource.PrivateProperties:")     SET PropertySet = Resource.PrivateProperties     FOR EACH Property IN PropertySet.Properties_         CALL HandleParameter( "  Resource.PrivateProperty->" & _  Property.Name , Property.Value )     NEXT     CALL HandleParameter( "Resource.QuorumCapable" , _   Resource.QuorumCapable )     CALL HandleParameter( "Resource.RegistryCheckpoints" , _   Resource.RegistryCheckpoints )     CALL HandleParameter( "Resource.ResourceClass" , _   Resource.ResourceClass )     CALL HandleParameter( "Resource.RestartAction" , _   Resource.RestartAction )     CALL HandleParameter( "Resource.RestartPeriod" , _   Resource.RestartPeriod )     CALL HandleParameter( "Resource.RestartThreshold" , _   Resource.RestartThreshold )     CALL HandleParameter( "Resource.RetryPeriodOnFailure" , _   Resource.RetryPeriodOnFailure )     CALL HandleParameter( "Resource.SeparateMonitor" , _   Resource.SeparateMonitor )     CALL HandleParameter( "Resource.State" , Resource.State )     CALL HandleParameter( "Resource.Status" , Resource.Status )     CALL HandleParameter( "Resource.SubClass" , Resource.SubClass )     CALL HandleParameter( "Resource.Type" , Resource.Type ) NEXT SET ResourceSet = NOTHING SET Resource = NOTHING SET PropertySet = NOTHING SET Property = NOTHING 

 <  Day Day Up  >  


Windows Server 2003 on Proliants. Deployment Techniques and Management Tools for System Administrators
Windows Server 2003 on Proliants. Deployment Techniques and Management Tools for System Administrators
ISBN: B004C77T6A
EAN: N/A
Year: 2004
Pages: 214

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net