次の方法で共有


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
);

パラメーター

Session [in]
有効な DismSession。 DismSession はイメージに関連付けられている必要があります。 セッションをイメージに関連付けるには、DismOpenSession を使用します。

FeatureName [in]
有効にする機能の名前。 複数の機能を有効にするには、各機能名をセミコロンで区切ります。

Identifier [in、オプション]
省略可能。 .cab ファイルへの絶対パスまたは有効にする機能の親パッケージのパッケージ名。

PackageIdentifier [in、オプション]
省略可能。 有効な DismPackageIdentifier 列挙値。 Identifier パラメーターがパッケージ名を指している場合は、DismPackageName を使用します。また、Identifier が .cab ファイルの絶対パスを指している場合は、DismPackagePath を使用します。 Identifier フィールドが NULL ではない場合は、有効な PackageIdentifier パラメーターを指定する必要があります。 Identifier フィールドが NULL の場合、PackageIdentifier パラメーターは無視されます。

LimitAccess [in]
このパラメーターは、Windows 8.1 および Windows Server 2012 R2 以降では無視されます。

Windows 8 および Windows Server 2012:

他の指定場所に何も見つからない場合に、ファイルのダウンロード元として Windows Update (WU) に接続するかどうかを示すブール値。 DISM は、WU をチェックする前に、指定されている SourcePaths のファイルと、グループ ポリシーによってレジストリ内で指定されているすべての場所にあるファイルをチェックします。 機能を有効にするために必要なファイルがコンピューターにまだ存在する場合は、このフラグは無視されます。

Value 説明
TRUE WU で修復ファイルをチェックしません。
FALSE 既定値。 WU で修復ファイルをチェックします。

SourcePaths [in、オプション]
このパラメーターは、Windows 8.1 および Windows Server 2012 R2 以降では無視されます。

Windows 8 および Windows Server 2012:

機能を有効にするために必要なファイルをチェックするソースの場所の一覧。

SourcePathCount [in、オプション]
このパラメーターは、Windows 8.1 および Windows Server 2012 R2 以降では無視されます。

Windows 8 および Windows Server 2012:

指定されたソースの場所の数。

EnableAll [in]
機能のすべての依存関係を有効にします。 指定した機能またはその依存関係のいずかを有効にできない場合、それらのいずれも既存の状態から変更されません。

Value 説明
TRUE 機能のすべての依存関係を有効にします。
FALSE 指定した機能のみを有効にします。

CancelEvent [in、オプション]
任意。 この関数に対して CancelEvent を設定すると、クライアントからシグナルが送信されたときに進行中の操作をキャンセルできます。 操作をキャンセルできない段階で CancelEvent を受信した場合、操作は続行され、成功コードが返されます。 CancelEvent を受信し、操作がキャンセルされた場合、イメージの状態は不明です。 続行する前にイメージの状態を確認するか、変更を破棄してからもう一度開始する必要があります。

Progress [in、オプション]
任意。 クライアント定義の DismProgressCallback へのポインター。

UserData [in、オプション]
任意。 ユーザー定義のカスタム データ。

戻り値

成功すると S_OK が返されます。

解説

Foundation パッケージに機能が存在する場合は、パッケージ情報を指定する必要はありません。 その機能が、イメージに既にインストールされているオプション パッケージ内または機能パック内にある場合は、Identifier パラメーターにパッケージ名を指定し、PackageIdentifier として DismPackageName を指定します。親機能が有効になっていないために機能を有効にできない場合は、特別なエラー コードが返されます。 EnableAll を使用すると、指定した機能を有効にする際に親機能も有効にすることができます。また、DismGetFeatureParent を使用すると、親機能を列挙して、最初にそれを有効にすることができます。

重要

有効にする機能が、Foundation パッケージのコンポーネントではない場合は、その機能を有効にする前に DismAddPackage を使用して親オプション パッケージを追加する必要があります。 イメージに追加されていないオプション パッケージの .cab ファイルへのパスを、Identifier パラメーターで指定しないでください。 追加されていないパッケージを指定し、PackageIdentifier として DismPackagePath を指定した場合、関数は正常に完了しますが、機能が有効にはなりません。

Note

LimitAccessSourcePathsSourcePathCount、および EnableAll は、Windows 8 および Windows Server 2012 でのみサポートされています。

HRESULT hr = S_OK;
hr = DismEnableFeature(Session, “WindowsMediaPlayer”, NULL, PackageNone, TRUE, NULL, 0, FALSE, NULL, NULL, NULL);

必要条件

要件 説明
サポートされているホスト プラットフォーム DISM API は、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 [デスクトップ アプリのみ]
Header DismAPI.h
ライブラリ DismAPI.lib
[DLL] DismAPI.dll

関連項目

DismAddPackage

DismDisableFeature

DismGetFeatures

DismGetFeatureInfo