CM_Add_Empty_Log_Conf関数 (cfgmgr32.h)

CM_Add_Empty_Log_Conf関数は、指定した構成の種類と指定したデバイス インスタンスの空の論理構成をローカル コンピューターに作成します。

構文

CMAPI CONFIGRET CM_Add_Empty_Log_Conf(
  [out] PLOG_CONF plcLogConf,
  [in]  DEVINST   dnDevInst,
  [in]  PRIORITY  Priority,
  [in]  ULONG     ulFlags
);

パラメーター

[out] plcLogConf

空の論理構成へのハンドルを受け取る場所のアドレス。

[in] dnDevInst

ローカル コンピューターにバインドされている呼び出し元が指定したデバイス インスタンス ハンドル。

[in] Priority

呼び出し元が指定した構成の優先順位の値。 これは、次の表に示す定数値のいずれかである必要があります。 定数は、優先度の高い順に一覧表示されます。 (同じ ulFlags 値を持つ複数の構成の場合、システムは優先順位が最も高いものを最初に使用しようとします)。

優先度定数 定義
LCPRI_FORCECONFIG 強制構成の結果。
LCPRI_BOOTCONFIG ブート構成の結果。
LCPRI_DESIRED 推奨される構成 (パフォーマンスの向上)。
LCPRI_NORMAL 実行可能な構成 (許容されるパフォーマンス)。
LCPRI_LASTBESTCONFIG 内部使用専用です。
LCPRI_SUBOPTIMAL 望ましい構成ではありませんが、動作します。
LCPRI_LASTSOFTCONFIG 内部使用専用です。
LCPRI_RESTART システムを再起動する必要がある
LCPRI_REBOOT システムを再起動する必要があります (LCPRI_RESTARTと同じです)。
LCPRI_POWEROFF システムをシャットダウンして電源をオフにする必要があります。
LCPRI_HARDRECONFIG ジャンパーを変更する必要があります。
LCPRI_HARDWIRED 構成を変更できません。
LCPRI_IMPOSSIBLE 構成は存在できません。
LCPRI_DISABLED 無効な構成。

[in] ulFlags

論理構成の種類を指定する呼び出し元が指定したフラグ。 次のいずれかのフラグを指定する必要があります。

構成の種類のフラグ 定義
BASIC_LOG_CONF この構成に追加されたリソース記述子では、 基本的な構成について説明します。
FILTERED_LOG_CONF 使用しないでください。 ( フィルター処理された構成を作成できるのは PnP マネージャーだけです)。
ALLOC_LOG_CONF 使用しないでください。 ( 割り当てられた構成を作成できるのは PnP マネージャーだけです)。
BOOT_LOG_CONF この構成に追加されたリソース記述子では、 ブート構成について説明します。
FORCED_LOG_CONF この構成に追加されたリソース記述子は、 強制構成を記述します。
OVERRIDE_LOG_CONF この構成に追加されたリソース記述子では、 オーバーライド構成について説明します。
 

次のビット フラグの 1 つは、構成の種類フラグを持つ ORed です。

優先度比較フラグ 定義
PRIORITY_EQUAL_FIRST 同じ種類 (ulFlags) の複数の構成に同じ優先度 (優先度) がある場合、この構成はリストの先頭に配置されます。
PRIORITY_EQUAL_LAST (既定値)同じ種類の複数の構成 (ulFlags) の優先度 (Priority) が同じ場合、この構成は一覧の末尾に配置されます。

戻り値

操作が成功した場合、関数はCR_SUCCESSを返します。 それ以外の場合は、 Cfgmgr32.h で定義されているCR_プレフィックス付きのエラー コードのいずれかを返します。

メモWindows 8以降、wow64 シナリオで使用すると、CM_Add_Empty_Log_ConfはCR_CALL_NOT_IMPLEMENTEDを返します。 ローカル コンピューター上のハードウェア リソースに関する情報を要求するには、ハードウェア リソース API を使用してアーキテクチャネイティブ バージョンのアプリケーションを実装する必要があります。 例: AMD64 システム用の AMD64 アプリケーション。
 

注釈

CM_Add_Empty_Log_Confを呼び出すと、CM_Get_First_Log_Confによって返されるハンドルが無効になり、CM_Get_Next_Log_Confが発生する可能性があります。 したがって、 CM_Add_Empty_Log_Confを呼び出した後に論理構成を取得する場合は、コードで CM_Get_First_Log_Conf をもう一度呼び出し、最初の構成から開始する必要があります。

CM_Add_Empty_Log_Confによって作成された論理構成を削除するには、CM_Free_Log_Confを呼び出します。

plcLogConf で受信したハンドルは、CM_Free_Log_Conf_Handleを呼び出して明示的に解放する必要があります。

この関数の呼び出し元には SeLoadDriverPrivilege が必要です。 (特権については、Microsoft Windows SDKドキュメントを参照してください。

ローカル コンピューターにバインドされているデバイス インスタンス ハンドルの使用については、「 CM_Get_Child」を参照してください。

要件

要件
サポートされている最小のクライアント Microsoft Windows 2000 以降のバージョンの Windows で使用できます。
対象プラットフォーム デスクトップ
Header cfgmgr32.h (Cfgmgr32.h を含む)
Library Cfgmgr32.lib
[DLL] Cfgmgr32.dll

こちらもご覧ください

CM_Add_Empty_Log_Conf_Ex

CM_Free_Log_Conf

CM_Free_Log_Conf_Handle

CM_Get_Child

CM_Get_First_Log_Conf

CM_Get_Next_Log_Conf