_Класс среды Win32

Класс WMI _ среды Win32 представляет среду или системный параметр среды в системе Windows. Запрос к этому классу Возвращает переменные среды, найденные в:

HKey _ _ \ \ \ Управление \ \ средой сессионманажер в системе локального компьютера CurrentControlSet

и

HKey _ \ < Пользовательская > \ Среда

Следующий пример синтаксиса — упрощенный MOF-код, который включает все наследуемые свойства. Свойства перечислены в алфавитном порядке, а не в MOF.

Синтаксис

[Dynamic, Provider("CIMWin32"), Privileges("SeRestorePrivilege"), UUID("{8502C4D2-5FBB-11D2-AAC1-006008C78BC7}"), SupportsCreate, CreateBy("PutInstance"), SupportsDelete, DeleteBy("DeleteInstance"), SupportsUpdate, AMENDMENT]
class Win32_Environment : CIM_SystemResource
{
  string   Caption;
  string   Description;
  datetime InstallDate;
  string   Status;
  string   Name;
  boolean  SystemVariable;
  string   UserName;
  string   VariableValue;
};

Члены

Класс _ среды Win32 имеет следующие типы членов:

Свойства

Класс _ среды Win32 имеет следующие свойства.

Заголовок

Тип данных: строка

Тип доступа: только для чтения

Квалификаторы: maxlen (64), DisplayName ("Caption")

Краткое текстовое описание объекта.

Это свойство наследуется от CIM _ манажедсистемелемент.

Описание

Тип данных: строка

Тип доступа: только для чтения

Квалификаторы: DisplayName ("Описание")

Текстовое описание объекта.

Это свойство наследуется от CIM _ манажедсистемелемент.

InstallDate

Тип данных: DateTime

Тип доступа: только для чтения

Квалификаторы: маппингстрингс (MIF. DMTF | ComponentID | 001,5 "), DisplayName (" Дата установки ")

Указывает, когда был установлен объект. Отсутствие значения не означает, что объект не установлен.

Это свойство наследуется от CIM _ манажедсистемелемент.

Name

Тип данных: строка

Тип доступа: чтение и запись

Квалификаторы: override ("имя"), Key, маппингстрингс ("Win32Registry | System \ \ CurrentControlSet \ \ Control \ \ Session Manager \ \ Environment")

Символьная строка, указывающая имя переменной среды на основе Windows. Указав имя переменной, которая еще не существует, приложение создает новую переменную среды.

Пример: "Path"

Состояние

Тип данных: строка

Тип доступа: только для чтения

Квалификаторы: maxlen (10), DisplayName ("состояние")

Строка, указывающая текущее состояние объекта. Можно определить операционное и нерабочее состояние. Оперативное состояние может включать "ОК", "деградация" и "пред Fail". "Пред-Fail" указывает, что элемент работает правильно, но прогнозирует сбой (например, жесткий диск с поддержкой SMART).

Нерабочее состояние может включать "Error", "starting", "остановка" и "обслуживание". "Служба" может применяться при зеркальном отображении дисков, перезагрузке списка разрешений пользователя или выполнении других административных задач. Не вся такая работа находится в оперативном режиме, но управляемый элемент не является ни "ОК", ни в одном из других состояний.

Это свойство наследуется от CIM _ манажедсистемелемент.

В эти значения входят:

ОК ("ОК")

Ошибка ("ошибка")

Пониженная работоспособность (пониженная работоспособность)

Неизвестно ("неизвестно")

Пред-ошибка ("пред Fail")

Запуск ("Запуск")

Остановка ("остановка")

Служба ("служба")

Пренапряжению ("напряжению")

Невосстановление ("невосстановление")

Нет контакта ("нет контакта")

Потеря связи ("потеря связи")

системвариабле

Тип данных: логический

Тип доступа: только для чтения

Квалификаторы: маппингстрингс ("Win32Registry | System \ \ CurrentControlSet \ \ Control \ \ Configuration Manager \ \ Environment")

Указывает, является ли переменная системной переменной. Системная переменная задается операционной системой и не зависит от параметров среды пользователя.

UserName

Тип данных: строка

Тип доступа: только для чтения

Квалификаторы: Key, maxlen (260), маппингстрингс ("Win32Registry | система \ \ CurrentControlSet \ \ управляющего \ \ сеанса диспетчером сеансов \ \ ")

Имя владельца параметра среды. Он имеет значение для параметров, характерных для системы Windows (в отличие от конкретного пользователя) и параметров пользователя по умолчанию.

Пример: "JSmith"

вариаблевалуе

Тип данных: строка

Тип доступа: чтение и запись

Квалификаторы: маппингстрингс ("Win32Registry | System \ \ CurrentControlSet \ \ Control \ \ Configuration Manager \ \ Environment")

Заполнитель переменной среды на основе Windows. Такие сведения, как каталог файловой системы, могут изменяться с компьютера на компьютер. Операционная система заменяет заполнители для них.

Пример: "% SystemRoot%"

Комментарии

Класс _ среды Win32 является производным от CIM _ системресаурце. Этот класс можно использовать для поиска путей к специальным папкам, таким как системная папка или программные файлы на удаленном компьютере. Вот некоторые примеры: WINDIR, системный_корневой_каталог, ProgramFiles и UserProfile. Win32 _ Среда по сути возвращает сведения о том, что можно найти в:

HKey _ _ \ \ \ Управление \ \ средой сессионманажер в системе локального компьютера CurrentControlSet

и

HKey _ \ < Пользовательская > \ Среда

Вызывающий процесс, использующий этот класс, должен иметь привилегию SE _ reside _ Name на компьютере, где размещается реестр. Например, если перечислить этот класс на локальном компьютере, учетная запись, под которой выполняется приложение, должна иметь эту привилегию. Дополнительные сведения см. в разделе выполнение привилегированных операций.

Примеры

В примере переменных среды на компьютере на основе Perl для получения сведений обо всех переменных среды на компьютере используется инструментарий WMI.

В следующем примере кода VBScript перечисляются переменные среды на локальном компьютере.

strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colVar = objWMIService.ExecQuery("Select * from Win32_Environment")
For Each objVar in colVar
    Wscript.Echo "Description: " & objVar.Description & VBNewLine _
               & "Name: " & objVar.Name & VBNewLine _
               & "System Variable: " & objVar.SystemVariable & VBNewLine _
               & "User Name: " & objVar.UserName & VBNewLine _
               & "Variable Value: " & objVar.VariableValue 
Next

Следующий пример кода на языке VBScript изменяет переменную среды с именем BUILD _ на значение, введенное пользователем. В скрипте предполагается, что _ переменная типа сборки уже существует. Если он не существует, сценарий завершается. Входное значение проверяется: оно должно быть "Build1", "Build2" или "Build3", а другое значение не принимается. Функция VBScript Укасе делает нечувствительным к входу регистр. Если значение, введенное в, не является одним из трех допустимых значений, сценарий завершается.

On Error Resume Next
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select * from Win32_Environment")
Found = False
For Each objItem in colItems
    If objItem.Name = "BUILD_TYPE" Then
    Found = True
    Change = UCase(InputBox("BUILD_TYPE currently = " & objItem.VariableValue & VBNewLine _
                          & "Change options are Build1, Build2, Build3 "))
        If UCase(Change) = "BUILD1" OR Change = "BUILD2" OR Change = "BUILD3" Then
            objItem.VariableValue = Change
            objItem.Put_
        WScript.Echo "BUILD_TYPE changed to " & objItem.VariableValue
        Else 
        WScript.Echo "No input or unacceptable input." & " No change to BUILD_TYPE"
        End If
    End If
Next
If Found = False Then
    WScript.Echo "User-defined environment variable BUILD_TYPE not found."
End If

Требования

Требование Значение
Минимальная версия клиента
Windows Vista
Минимальная версия сервера
Windows Server 2008
Пространство имен
Корневой \ CIMV2
MOF
CIMWin32. mof
DLL
CIMWin32.dll

См. также раздел

_СИСТЕМРЕСАУРЦЕ CIM

Классы операционной системы