Константы API для создания скриптов
WMI использует несколько типов констант в параметре iflags вызовов методов в API скриптов для WMI.
Приложения Visual Basic могут включать библиотеку типов для API скриптов Wbemdisp.tlb. Скрипты не могут получить доступ к константам в библиотеке типов, если они не используют <теги REFERENCE> или <OBJECT> из формата XML-файла узла сценариев Windows (WSH), как описано в разделе Использование библиотеки типов сценариев WMI. В противном случае скрипт должен использовать значение константы .
Константы
-
Определите уровни проверки подлинности безопасности.
-
Определите, как выполняется операция записи в класс или экземпляр.
-
Определите допустимые типы CIM для значения свойства.
-
Определите параметры для сравнения объектов и используются SWbemObject.CompareTo_.
-
Определяет флаг безопасности, используемый в качестве параметра в вызовах метода SWbemLocator.ConnectServer при сбое подключения к WMI на удаленном компьютере.
-
Определите ошибки, которые могут быть возвращены API скриптов для вызовов WMI .
-
Определяет константы, используемые SWbemServices.ExecQuery, SWbemServices.ExecQueryAsync, SWbemServices.SubclassesOf и SWbemServices.InstancesOf.
-
Определите уровни олицетворения безопасности. Эти константы используются с SWbemSecurity.
-
Определите допустимые форматы текста объекта, которые будут использоваться SWbemObjectEx.GetText_.
-
Определите привилегии. Эти константы используются с SWbemSecurity для предоставления привилегий, необходимых для некоторых операций.
-
Определите глубину перечисления или запроса, которая определяет количество объектов, возвращаемых вызовом.
-
Определяет содержимое созданного текста объекта и используется SWbemObject.GetObjectText_.
-
Определяет константы времени ожидания. Эта константа используется SWbemEventSource.NextEvent.
Объединение флагов
Вы можете объединить флаги, чтобы повлиять на несколько аспектов вызова API.
Например, чтобы создать полусинхронный вызов, параметр iFlags в вызове SWbemServices.ExecQuery_ должен содержать два флага: WbemFlagReturnImmediately и WbemFlagForwardOnly. Значение WbemFlagReturnImmediately равно 16, а WbemFlagForwardOnly — 32. Так как доступ к константам по имени невозможен, значения этих флагов объединяются, создавая значение iFlags 48.
В следующем примере скрипта показан вызов .
On Error Resume Next
For Each obj in GetObject("WinMgmts:").ExecQuery _
("SELECT * FROM Win32_NTLogEvent WHERE _ LogFile='Application'",,48)
count = count + 1
Next
Не все флаги можно объединить, так как многие из них являются взаимоисключающими и могут привести к непредсказуемым результатам.
Связанные темы