You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
232 lines
8.0 KiB
232 lines
8.0 KiB
dim objSWbemLocator
|
|
dim objSWbemServices
|
|
dim objSWbemObjectSet
|
|
dim objSWbemObject
|
|
dim objSWbemObject2
|
|
dim objSWbemObject3
|
|
dim objSWbemObjectPath
|
|
dim objSWbemProperty
|
|
dim objSWbemPropertySet
|
|
dim objSWbemMethod
|
|
dim objSWbemMethodSet
|
|
dim objSWbemLastError
|
|
dim objSWbemNamedValueSet
|
|
dim objSWbemSink
|
|
dim InParameters
|
|
dim NewParameters
|
|
dim rc
|
|
dim Temp
|
|
dim CRLF
|
|
dim Keys
|
|
dim Names
|
|
dim value
|
|
dim NTEvent
|
|
|
|
const WBEM_NO_ERROR = 0
|
|
const wbemErrFailed = -2147217407
|
|
const wbemErrNotFound = -2147217406
|
|
const wbemErrAccessDenied = -2147217405
|
|
const wbemErrProviderFailure = -2147217404
|
|
const wbemErrTypeMismatch = -2147217403
|
|
const wbemErrOutOfMemory = -2147217402
|
|
const wbemErrInvalidContext = -2147217401
|
|
const wbemErrInvalidParameter = -2147217400
|
|
const wbemErrNotAvailable = -2147217399
|
|
const wbemErrCriticalError = -2147217398
|
|
const wbemErrInvalidStream = -2147217397
|
|
const wbemErrNotSupported = -2147217396
|
|
const wbemErrInvalidSuperclass = -2147217395
|
|
const wbemErrInvalidNamespace = -2147217394
|
|
const wbemErrInvalidObject = -2147217393
|
|
const wbemErrInvalidClass = -2147217392
|
|
const wbemErrProviderNotFound = -2147217391
|
|
const wbemErrInvalidProviderRegistration = -2147217390
|
|
const wbemErrProviderLoadFailure = -2147217389
|
|
const wbemErrInitializationFailure = -2147217388
|
|
const wbemErrTransportFailure = -2147217387
|
|
const wbemErrInvalidOperation = -2147217386
|
|
const wbemErrInvalidQuery = -2147217385
|
|
const wbemErrInvalidQueryType = -2147217384
|
|
const wbemErrAlreadyExists = -2147217383
|
|
const wbemErrOverrideNotAllowed = -2147217382
|
|
const wbemErrPropagatedQualifier = -2147217381
|
|
const wbemErrPropagatedProperty = -2147217380
|
|
const wbemErrUnexpected = -2147217379
|
|
const wbemErrIllegalOperation = -2147217378
|
|
const wbemErrCannotBeKey = -2147217377
|
|
const wbemErrIncompleteClass = -2147217376
|
|
const wbemErrInvalidSyntax = -2147217375
|
|
const wbemErrNondecoratedObject = -2147217374
|
|
const wbemErrReadOnly = -2147217373
|
|
const wbemErrProviderNotCapable = -2147217372
|
|
const wbemErrClassHasChildren = -2147217371
|
|
const wbemErrClassHasInstances = -2147217370
|
|
const wbemErrQueryNotImplemented = -2147217369
|
|
const wbemErrIllegalNull = -2147217368
|
|
const wbemErrInvalidQualifierType = -2147217367
|
|
const wbemErrInvalidPropertyType = -2147217366
|
|
const wbemErrValueOutOfRange = -2147217365
|
|
const wbemErrCannotBeSingleton = -2147217364
|
|
const wbemErrInvalidCimType = -2147217363
|
|
const wbemErrInvalidMethod = -2147217362
|
|
const wbemErrInvalidMethodParameters = -2147217361
|
|
const wbemErrSystemProperty = -2147217360
|
|
const wbemErrInvalidProperty = -2147217359
|
|
const wbemErrCallCancelled = -2147217358
|
|
const wbemErrShuttingDown = -2147217357
|
|
const wbemErrPropagatedMethod = -2147217356
|
|
const wbemErrUnsupportedParameter = -2147217355
|
|
const wbemErrMissingParameter = -2147217354
|
|
const wbemErrInvalidParameterId = -2147217353
|
|
const wbemErrNonConsecutiveParameterIds = -2147217352
|
|
const wbemErrParameterIdOnRetval = -2147217351
|
|
const wbemErrInvalidObjectPath = -2147217350
|
|
const wbemErrOutOfDiskSpace = -2147217349
|
|
const wbemErrRegistrationTooBroad = -2147213311
|
|
const wbemErrRegistrationTooPrecise = -2147213310
|
|
const wbemErrTimedout = -2147209215
|
|
|
|
const wbemFlagReturnImmediately = 16
|
|
const wbemFlagReturnWhenComplete = 0
|
|
const wbemFlagBidirectional = 0
|
|
const wbemFlagForwardOnly = 14
|
|
const wbemFlagNoErrorObject = 28
|
|
const wbemFlagReturnErrorObject = 0
|
|
const wbemFlagSendStatus = 128
|
|
const wbemFlagDontSendStatus = 0
|
|
|
|
const wbemCimtypeSint8 = 16
|
|
const wbemCimtypeUint8 = 17
|
|
const wbemCimtypeSint16 = 2
|
|
const wbemCimtypeUint16 = 18
|
|
const wbemCimtypeSint32 = 3
|
|
const wbemCimtypeUint32 = 19
|
|
const wbemCimtypeSint64 = 20
|
|
const wbemCimtypeUint64 = 21
|
|
const wbemCimtypeReal32 = 4
|
|
const wbemCimtypeReal64 = 5
|
|
const wbemCimtypeBoolean = 11
|
|
const wbemCimtypeString = 8
|
|
const wbemCimtypeDatetime = 101
|
|
const wbemCimtypeReference = 102
|
|
const wbemCimtypeChar16 = 103
|
|
const wbemCimtypeObject = 13
|
|
|
|
const wbemAuthenticationLevelDefault = 0
|
|
const wbemAuthenticationLevelNone = 1
|
|
const wbemAuthenticationLevelConnect = 2
|
|
const wbemAuthenticationLevelCall = 3
|
|
const wbemAuthenticationLevelPkt = 4
|
|
const wbemAuthenticationLevelPktIntegrity = 5
|
|
const wbemAuthenticationLevelPktPrivacy = 6
|
|
|
|
const wbemImpersonationLevelAnonymous = 1
|
|
const wbemImpersonationLevelIdentify = 2
|
|
const wbemImpersonationLevelImpersonate = 3
|
|
const wbemImpersonationLevelDelegate = 4
|
|
|
|
on error resume next
|
|
|
|
|
|
CRLF = Chr(13) & Chr(10)
|
|
|
|
WScript.Echo "WBEM Script Started"
|
|
|
|
'***********************************************************************
|
|
'*
|
|
'* WbemSink_OnObjectPut
|
|
'*
|
|
'***********************************************************************
|
|
|
|
sub WbemSink_OnObjectPut(pObject, pAsyncContext)
|
|
|
|
dim context
|
|
|
|
WScript.Echo "OnObjectPut CallBack Called"
|
|
|
|
end sub
|
|
|
|
'***********************************************************************
|
|
'*
|
|
'* WbemSink_OnProgress
|
|
'*
|
|
'***********************************************************************
|
|
|
|
sub WbemSink_OnProgress(liUpperBound, liCurrent, sMessage, pAsyncContext)
|
|
|
|
dim context
|
|
|
|
WScript.Echo "OnProgress CallBack Called"
|
|
|
|
end sub
|
|
|
|
'***********************************************************************
|
|
'*
|
|
'* WbemSink_OnCompleted
|
|
'*
|
|
'***********************************************************************
|
|
|
|
sub WbemSink_OnCompleted(hResult, pErrorObject, pAsyncContext)
|
|
WScript.Echo "OnCompleted CallBack Called [", hResult, "]"
|
|
end sub
|
|
|
|
'***********************************************************************
|
|
'*
|
|
'* WbemSink_OnObjectReady
|
|
'*
|
|
'***********************************************************************
|
|
|
|
sub WbemSink_OnObjectReady(pObject, pAsyncContext)
|
|
WScript.Echo "OnObjectReady CallBack Called: ", pObject.Path_.RelPath
|
|
end sub
|
|
|
|
'***********************************************************************
|
|
'*
|
|
'*
|
|
'*
|
|
'***********************************************************************
|
|
Set objSWbemLocator = nothing
|
|
Set objSWbemLocator = WScript.CreateObject("WbemScripting.SWbemLocator")
|
|
if err.number <> 0 then
|
|
ErrorString err.number, "Set objSWbemLocator = WScript.CreateObject('WbemScripting.SWbemLocator')","create a locator"
|
|
end if
|
|
'***********************************************************************
|
|
'*
|
|
'*
|
|
'*
|
|
'***********************************************************************
|
|
Set objSWbemServices = nothing
|
|
Set objSWbemServices = objSWbemLocator.ConnectServer(,"root\cimv2")
|
|
if err.number <> 0 then
|
|
ErrorString err.number, "Set objSWbemServices = objSWbemLocator.ConnectServer(,'root\cimv2')","connect to server"
|
|
end if
|
|
'***********************************************************************
|
|
'*
|
|
'*
|
|
'*
|
|
'***********************************************************************
|
|
Set objSWbemSink = WScript.CreateObject("WbemScripting.SWbemSink","WbemSink_")
|
|
if err.number <> 0 then
|
|
ErrorString err.number, "Set objSWbemSink = WScript.CreateObject('WbemScripting.SWbemSink','WbemSink_')","create a sink"
|
|
end if
|
|
'***********************************************************************
|
|
'*
|
|
'*
|
|
'*
|
|
'***********************************************************************
|
|
objSWbemServices.Security_.ImpersonationLevel = wbemImpersonationLevelImpersonate
|
|
WScript.Echo objSWbemServices.Security_.ImpersonationLevel
|
|
'***********************************************************************
|
|
'*
|
|
'*
|
|
'*
|
|
'***********************************************************************
|
|
'AssociatorsOfAsync(objAsyncNotify As Object, strObjectPath As String, [strAssocClass As String], [strResultClass As String], [strResultRole As String], [strRole As String], [bClassesOnly As Boolean = False], [bSchemaOnly As Boolean = False], [strRequiredAssocQualifier As String], [strRequiredQualifier As String], [iFlags As Long], [objNamedValueSet As Object], [objAsyncContext As Object])
|
|
objSWbemServices.AssociatorsOfAsync objSWbemSink, "Win32_service.Name=""NetDDE""", ,,,,,,,,wbemFlagSendStatus
|
|
if err.number <> 0 then
|
|
WScript.Echo err.number, "objSWbemServices.AssociatorsOfAsync 'Win32_service.Name=''NetDDE''', objSWbemSink","create a sink"
|
|
end if
|
|
|
|
WScript.Echo "WBEM Script Hanging"
|
|
|
|
WScript.Quit
|