Функция DismEnableFeature
Включает функцию в изображении. Признаки определяются по имени и при необходимости могут быть привязаны к пакету.
Синтаксис
HRESULT WINAPI DismEnableFeature(
_In_ DismSession Session,
_In_ PCWSTR FeatureName,
_In_opt_ PCWSTR Identifier,
_In_opt_ DismPackageIdentifier PackageIdentifier,
_In_ BOOL LimitAccess,
_In_opt_ PCWSTR *SourcePaths,
_In_opt_ UINT SourcePathCount,
_In_ BOOL EnableAll,
_In_opt_ HANDLE CancelEvent,
_In_opt_ DISM_PROGRESS_CALLBACK Progress,
_In_opt_ PVOID UserData
);
Параметры
Сеанс [in]
Допустимое DismSession. DismSession должен быть связан с изображением. Сеанс можно связать с изображением с помощью DismOpenSession.
FeatureName [in]
Имя включаемой функции. Чтобы включить несколько функций, разделите их имена точкой с запятой.
Идентификатор [in, необязательный]
Необязательный элемент. Абсолютный путь к файлу .cab или имя пакета для родительского пакета компонента, который необходимо включить.
PackageIdentifier [in, необязательный]
Необязательный элемент. Допустимое значение перечисления DismPackageIdentifier .
DismPackageName следует использовать, если параметр Identifier указывает на имя пакета, а DismPackagePath следует использовать, когда Идентификатор указывает на абсолютный путь к .cab файлу. Если поле идентификатора не равно NULL, необходимо указать допустимый параметр PackageIdentifier . Если поле Идентификатор имеет значение NULL, параметр PackageIdentifier игнорируется.
LimitAccess [in]
Этот параметр игнорируется, начиная с Windows 8.1 и Windows Server 2012 R2.
Windows 8 и Windows Server 2012:
Логическое значение, указывающее, следует ли связаться с клиентский компонент Центра обновления Windows (WU) в качестве исходного расположения для скачивания файлов, если они не найдены в других указанных расположениях. Перед проверкой WU DISM будет проверка для файлов в предоставленных SourcePaths и во всех расположениях, указанных в реестре групповой политикой. Если файлы, необходимые для включения этой функции, по-прежнему присутствуют на компьютере, этот флаг игнорируется.
Значение | Описание |
---|---|
TRUE | Не проверка wu для восстановления файлов. |
Ложь. | По умолчанию. Проверьте wu на наличие файлов восстановления. |
SourcePaths [in, необязательно]
Этот параметр игнорируется, начиная с Windows 8.1 и Windows Server 2012 R2.
Windows 8 и Windows Server 2012:
Список исходных расположений для проверка файлов, необходимых для включения этой функции.
SourcePathCount [в, необязательно]
Этот параметр игнорируется, начиная с Windows 8.1 и Windows Server 2012 R2.
Windows 8 и Windows Server 2012:
Указанное количество исходных расположений.
EnableAll [in]
Включите все зависимости компонента. Если указанный компонент или какая-либо из его зависимостей не может быть включена, ни одна из них не будет изменена по сравнению с существующим состоянием.
Значение | Описание |
---|---|
TRUE | Включите все зависимости компонента. |
Ложь. | Включите только указанную функцию. |
CancelEvent [in, необязательно]
Необязательный элемент. Вы можете задать CancelEvent для этой функции, чтобы отменить выполняемую операцию при получении от клиента сигнала. Если cancelEvent получено на этапе, когда операция не может быть отменена, операция продолжится и вернет код успешного выполнения. Если cancelEvent получено и операция отменена, состояние образа неизвестно. Перед продолжением необходимо проверить состояние образа или отменить изменения и начать снова.
Ход выполнения [в, необязательно]
Необязательный элемент. Указатель на определяемый клиентом DismProgressCallback.
UserData [in, optional]
Необязательный элемент. Особые пользовательские данные.
Возвращаемое значение
В случае успешного выполнения возвращает S_OK
.
Комментарии
Если компонент присутствует в базовом пакете, указывать сведения о пакете не нужно. Если компонент находится в необязательном пакете или пакете дополнительных компонентов, который уже был установлен в образе, укажите имя пакета в параметре Идентификатор и укажите DismPackageName в качестве PackageIdentifier. Если компонент не может быть включен из-за того, что родительский компонент не включен, возвращается специальный код ошибки. Вы можете использовать EnableAll , чтобы включить родительские функции при включении указанных функций, или DismGetFeatureParent для перечисления родительских функций и их включения.
Важно!
Если включенная функция не является компонентом базового пакета, необходимо добавить родительский необязательный пакет с DismAddPackage , прежде чем включать эту функцию. Не указывайте путь к .cab файлу необязательного пакета, который не был добавлен в изображение в параметре Identifier . Если указать пакет, который не был добавлен, и dismPackagePath в качестве PackageIdentifier, функция завершится успешно, но функция не будет включена.
Примечание
LimitAccess, SourcePaths, SourcePathCount и EnableAll поддерживаются только в Windows 8 и Windows Server 2012.
Пример
HRESULT hr = S_OK;
hr = DismEnableFeature(Session, “WindowsMediaPlayer”, NULL, PackageNone, TRUE, NULL, 0, FALSE, NULL, NULL, NULL);
Требования
Требование | Описание |
---|---|
Поддерживаемые платформы узлов | API DISM можно использовать в любой операционной системе, поддерживаемой пакетом средств оценки и развертывания Windows (Windows ADK). Дополнительные сведения см. в техническом справочнике по Windows ADK. |
Поддерживаемые платформы образов | Windows 7, Windows Server 2008 R2, Windows PE 3.0, Windows 8, Windows Server 2012, среда предустановки Windows (Windows PE) 4.0, Windows 8.1, Windows Server 2012 R2, Windows 10 Windows Server 2016 |
Минимальная версия клиента | Windows 7 [только классические приложения] |
Минимальная версия сервера | Windows Server 2008 R2 [только классические приложения] |
Заголовок | DismAPI.h |
Библиотека | DismAPI.lib |
DLL | DismAPI.dll |