Поделиться через


Класс WMI сервера SMS_Program

Класс SMS_Program инструментария управления Windows (WMI) — это класс сервера поставщика SMS в Configuration Manager, который представляет программу или команду для запуска при распространении программного обеспечения на клиентский компьютер.

Следующий синтаксис упрощен в коде MOF и включает все унаследованные свойства.

Синтаксис

Class SMS_Program : SMS_BaseClass  
{  
     UInt32 ActionInProgress;  
     String ApplicationHierarchy;  
     String CommandLine;  
     String Comment;  
     String DependentProgram;  
     String Description;  
     UInt32 DeviceFlags;  
     String DiskSpaceReq;  
     String DriveLetter;  
     UInt32 Duration;  
     UInt8 ExtendedData[];  
     UInt32 ExtendedDataSize;  
     UInt8 Icon[];  
     UInt32 IconSize;  
     UInt8 ISVData[];  
     UInt32 ISVDataSize;  
     String ISVString;  
     String MSIFilePath  
     String MSIProductID  
     String PackageID;  
     String PackageName  
     UInt32 PackageType  
     String PackageVersion  
     UInt32 ProgramFlags;  
     String ProgramName;  
     String RemovalKey;  
     String Requirements;  
     UInt32 SecuredTypeID  
     SMS_OS_Details SupportedOperatingSystems[];  
     UInt32   TransformReadiness=0;   
     Datetime TransformAnalysisDate;   
     String   TransformDtID;   
     String WorkingDirectory;  
};  

Методы

Класс SMS_Program не определяет методы.

Свойства

ActionInProgress
Тип данных: UInt32

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

Квалификаторы: [чтение, перечисление]

Текущее действие, выполняеме в пакете, связанном с программой, Configuration Manager. Возможные значения:

Значение Описание
0 Ни один
1 UPDATE
2 Добавить
3 DELETE

Используйте это свойство в предложении WHERE для фильтрации программ, помеченных для удаления, но еще не удаленных. Дополнительные сведения см. в разделе Примечания далее в этом разделе.

ApplicationHierarchy
Тип данных: String

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

Квалификаторы: Нет

Иерархия приложений для программы. Значение по умолчанию — "".

CommandLine
Тип данных: String

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

Квалификаторы: Нет

Командная строка, которая запускается при запуске программы. Значение по умолчанию — "".

Comment
Тип данных: String

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

Квалификаторы: Нет

Комментарий, описывающий программу в консоли Configuration Manager. Значение по умолчанию — "".

DependentProgram
Тип данных: String

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

Квалификаторы: Нет

Отформатированная текстовая строка, определяющая любую программу, которая должна быть запущена перед запуском этой программы. Формат определяется как <PackageID>;< ProgramName>. Если программа находится в том же пакете, вызывающее приложение может просто указать ;;< ProgramName>. Значение по умолчанию — "".

Зависимость сохраняется только при первом запуске программы. После запуска программы зависимость игнорируется. Например, нельзя создать повторяющееся запланированное задание, для которого сохраняется зависимость для каждого запуска программы.

Description
Тип данных: String

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

Квалификаторы: Нет

Не используется.

DeviceFlags
Тип данных: UInt32

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

Квалификаторы: Нет

Флаги, описывающие устройство, связанное с программой. Возможные значения:

Шестнадцатеричный (бит) Описание
0x01000000 (24) Всегда назначайте программу клиенту.
0x02000000 (25) Назначьте, только если устройство в настоящее время подключено к подключению с высокой пропускной способностью (по умолчанию более 60 КБ/с).
0x04000000 (26) Назначьте только в том случае, если устройство закреплено, то есть подключено к рабочему столу, использующим ActiveSync.

DiskSpaceReq
Тип данных: String

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

Квалификаторы: Нет

Приблизительное место на диске, необходимое программе. Формат "< size><KB| МБ| ГБ>". Значение по умолчанию — "".

Эти сведения используются в консоли Configuration Manager и в объявлении для предоставления оповещений о требованиях к свободному месту на диске программы. Затем пользователь может принять объявление или выполнить некоторые задачи по управлению дисками.

DriveLetter
Тип данных: String

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

Квалификаторы: [SizeLimit("1"), Range("a-z")]

Буква диска (один символ в диапазоне a–z), с которой программа сопоставляется и из которой выполняется. Значение по умолчанию — "".

Duration
Тип данных: UInt32

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

Квалификаторы: Нет

Приблизительная длительность выполнения программы на клиентском компьютере (в минутах). Укажите это значение как целое число, большее или равное 0 (по умолчанию) или как Неизвестно (не рекомендуется). Если для свойства задано значение Неизвестно, Configuration Manager задает максимально допустимое время выполнения в 720 минут (12 часов). Дополнительные сведения см. в разделе Примечания далее в этом разделе.

Примечание.

На клиентских компьютерах указанное значение для опубликованных программ отображается в Run Advertised Programs панель управления.

ExtendedData
Тип данных: UInt8 Array

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

Квалификаторы: [большой, ленивый]

BLOB-объект XML для развертывания образа.

ExtendedDataSize
Тип данных: UInt32

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

Квалификаторы: [ленивый]

Расширенный размер данных в байтах. Значение по умолчанию равно 0.

Icon
Тип данных: UInt8 Array

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

Квалификаторы: [большой]

Сведения о значке, связанные со значком программы, отображаемые в консоли Configuration Manager.

IconSize
Тип данных: UInt32

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

Квалификаторы: [ленивый]

Размер значка программы в байтах. Присвойте этому свойству значение 0, чтобы очистить значок.

ISVData
Тип данных: UInt8 Array

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

Квалификаторы: [большой, ленивый]

Сведения, позволяющие одному независимого поставщика программного обеспечения хранить данные, SMS_Program связанные с объектом.

Для данных ISV нет ограничений или определенных форматов. Однако важно не перезаписывать свойство после установления владения isv. Приложение должно сначала прочитать существующие данные в этом свойстве. Если данные не принадлежат приложению, их не следует изменять. Необходимо включить идентификатор в данные для программы, чтобы можно было легко установить владение.

ISVDataSize
Тип данных: UInt32

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

Квалификаторы: [ленивый]

Размер (в байтах) данных, хранящихся в ISVData. Значение по умолчанию равно 0.

ISVString
Тип данных: String

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

Квалификаторы: нет

Строка для расширения партнера.

MSIFilePath
Тип данных: String

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

Квалификаторы: Нет

Путь к файлу пакета установщика Windows, с которым связана программа. Значение по умолчанию — "".

MSIProductID
Тип данных: String

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

Квалификаторы: Нет

Идентификатор продукта пакета установщика Windows, с которым связана программа. Значение по умолчанию — "".

PackageID
Тип данных: String

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

Квалификаторы: [ключ, Not_null]

Идентификатор существующего пакета, с которым связывается программа. Дополнительные сведения см. в разделе Примечания далее в этом разделе.

PackageName
Тип данных: String

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

Квалификаторы: [Нет]

Имя пакета, которому принадлежит программа.

PackageType
Тип данных: String

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

Квалификаторы: [Нет]

Тип пакета, к которому принадлежит программа.

Значение Описание
0 Обычный пакет распространения программного обеспечения.
3 Пакет драйвера.
4 Пакет последовательности задач.
5 Пакет обновления программного обеспечения.
6 Пакет параметров устройства.
257 Пакет изображений.
258 Пакет образа загрузки.
259 Пакет установки операционной системы.

PackageVersion
Тип данных: String

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

Квалификаторы: [Нет]

Версия пакета, к которому принадлежит программа.

ProgramFlags
Тип данных: UInt32

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

Квалификаторы: [биты]

Флаги, определяющие характеристики установки программы. Ниже перечислены возможные значения. Значения по умолчанию: EVERYUSER, USEUNCPATH, USERCONTEXT и UNATTENDED.

Примечание.

При использовании SMS_Program программным способом убедитесь, что конфликтующие значения не выбраны. Например, NOUSERLOGGEDIN и USERCONTEXT не должны использоваться вместе.

Возможные значения:

Шестнадцатеричный (бит) Описание
0x00000001 (0) AUTHORIZED_DYNAMIC_INSTALL. Программа авторизована для динамической установки.
0x00000002 (1) USECUSTOMPROGRESSMSG. В последовательности задач отображается пользовательское сообщение пользовательского интерфейса хода выполнения.
0x00000010 (4) DEFAULT_PROGRAM. Это программа по умолчанию
0x00000020 (5) DISABLEMOMALERTONRUNNING. Отключает оповещения MOM во время запуска программы.
0x00000040 (6) MOMALERTONFAIL. Создает оповещение MOM в случае сбоя программы.
0x00000080 (7) RUN_DEPENDANT_ALWAYS. Если задано значение , то эта программа всегда должна выполняться с немедленной зависимостью.
0x00000100 (8) WINDOWS_CE. Указывает программу устройства. Если этот параметр задан, программа не предлагается клиентам настольных компьютеров.
0x00000200 (9) Этот параметр не используется.
0x00000400 (10) ОБРАТНЫЙ ОТСЧЕТ. Диалоговое окно обратного отсчета не отображается.
0x00000800 (11) FORCERERUN. Этот параметр не используется.
0x00001000 (12) ОТКЛЮЧЕН. Программа отключена.
0x00002000 (13) АВТОМАТИЧЕСКОЙ. Эта программа не требует взаимодействия с пользователем.
0x00004000 (14) USERCONTEXT. Программа может запускаться только в том случае, если пользователь вошел в систему.
0x00008000 (15) ADMINRIGHTS. Программа должна быть запущена от имени учетной записи локального администратора.
0x00010000 (16) EVERYUSER. Программа должна запускаться каждым пользователем, для которого она действительна. Допустимо только для обязательных заданий.
0x00020000 (17) NOUSERLOGGEDIN. Программа запускается только в том случае, если пользователь не вошел в систему.
0x00040000 (18) OKTOQUIT. Программа перезагрузит компьютер.
0x00080000 (19) OKTOREBOOT. Configuration Manager перезапускает компьютер после успешного выполнения программы.
0x00100000 (20) USEUNCPATH. Используйте UNC-путь (без буквы диска) для доступа к точке распространения.
0x00200000 (21) PERSISTCONNECTION. Сохраняет подключение к диску, указанному в свойстве DriveLetter. Битовый флаг USEUNCPATH не должен быть задан.
0x00400000 (22) RUNMINIMIZED. Запустите программу как свернутое окно.
0x00800000 (23) RUNMAXIMIZED. Запустите программу как развернутое окно.
x010000000 (24) СКРЫТЬWINDOW. Скрыть окно программы.
0x02000000 (25) OKTOLOGOFF. Выйдите из системы пользователя после успешного завершения программы.
0x04000000 (26) RUNACCOUNT. Этот параметр не используется.
0x08000000 (27) ANY_PLATFORM. Проверка переопределения для поддержки платформы.
0x10000000 (28) STILL_RUNNING. Этот параметр не используется.
0x20000000 (29) SUPPORT_UNINSTALL. Запустите удаление из раздела реестра по истечении срока действия объявления.
0x40000000 (30) Платформа не поддерживается.
0x80000000 (31) SHOW_IN_ARP. Этот параметр не используется.

ProgramName
Тип данных: String

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

Квалификаторы: [ключ, Not_null]

Уникальное имя, представляющее эту программу.

RemovalKey
Тип данных: String

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

Квалификаторы: Нет

Раздел реестра, определяющий сценарий удаления для программы. Скрипт должен находиться в HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall пути реестра. Значение по умолчанию — "".

Requirements
Тип данных: String

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

Квалификаторы: Нет

Описание дополнительных требований программы. Значение по умолчанию — "".

SecuredTypeID
Тип данных: UInt32

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

Квалификаторы: [Нет]

Защищенный тип связанного пакета.

SupportedOperatingSystems
Тип данных: SMS_OS_Details Array

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

Квалификаторы: [ленивый]

SMS_OS_Details объекты класса WMI сервера , представляющие операционные системы, в которых может выполняться программа.

Если в свойстве ProgramFlags не указано ANY_PLATFORM, необходимо указать одну или несколько поддерживаемых операционных систем. Класс WMI сервера SMS_SupportedPlatforms определяет список платформ, которые Configuration Manager поддерживать.

TransformAnalysisDate
Тип данных: DateTime

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

Квалификаторы: [Нет]

Только для внутреннего использования.

TransformDtID
Тип данных: String

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

Квалификаторы: [Нет]

Только для внутреннего использования.

TransformReadiness
Тип данных: UInt32

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

Квалификаторы: [Нет]

Только для внутреннего использования.

WorkingDirectory
Тип данных: String

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

Квалификаторы: Нет

Расположение, из которого запускается программа. Значение по умолчанию — "".

Рабочий каталог может быть абсолютным путем на клиенте или путем относительно папки точки распространения, содержащей пакет. Если рабочий каталог не указан, Configuration Manager использует папку точки распространения по умолчанию.

Замечания

Для этого класса не существует специальных квалификаторов классов. Дополнительные сведения о квалификаторах классов и квалификаторах свойств, включенных в раздел Свойства, см. в разделе квалификаторы классов и свойств Configuration Manager.

Программа всегда связана с родительским пакетом и обычно представляет программу установки для пакета. Обратите внимание, что с одним пакетом можно связать несколько программ. Приложение использует свойство для PackageID создания этой связи. Приложение не может изменить это свойство после SMS_Program создания объекта. Чтобы связать программу с другим пакетом, приложение должно удалить объект и создать новый объект с новым PackageID значением.

Когда приложение удаляет SMS_Program объект, он не удаляется до тех пор, пока не будут удалены связанные с ним компоненты, такие как объявления. Вместо этого Configuration Manager задает ActionInProgress для свойства значение DELETE (3), чтобы пометить программу для удаления. Чтобы убедиться, что запрос не извлекает программы, помеченные для удаления, добавьте этот случай в предложение WHERE.

Важно!

Если для коллекции, в которой выполняется программа, используются периоды обслуживания, может возникнуть конфликт, если значение свойства больше запланированного Duration периода обслуживания. Если для этого свойства задано значение Неизвестно, программа запускается во время периода обслуживания, но продолжает выполняться до завершения или сбоя после закрытия периода обслуживания.

Рекомендуется не задавать свойству Duration значение Unknown, так как это свойство используется для следующих двух важных целей:

  • Мониторинг результатов программы.

  • Чтобы определить, будет ли программа запущена при определении периодов обслуживания на клиентских компьютерах.

    Если приложение задает Duration свойство , но время выполнения программы превышает эту длительность, Configuration Manager прекращает мониторинг программы, но не завершает программу. Это позволяет Configuration Manager продолжать работу с другими функциями распространения программного обеспечения, такими как запуск других объявленных программ. Руководитель не выполняет следующие действия:

  • Остановите программу.

  • Освободите все диски, сопоставленные с объявленной программой.

  • Бесплатные сетевые подключения для объявленной программы.

  • Бесплатные ресурсы операционной системы, используемые Configuration Manager при запуске объявленных программ.

    Дополнительные сведения см. в разделе Об обслуживании Windows.

Требования

Требования к среде выполнения

Дополнительные сведения см. в разделе Требования к среде выполнения сервера Configuration Manager.

Требования к разработке

Дополнительные сведения см. в разделе Требования к разработке сервера Configuration Manager.

См. также

Класс WMI сервера SMS_Package
Создание пакета
Создание программы