CM_Add_Empty_Log_Conf-Funktion (cfgmgr32.h)

Die funktion CM_Add_Empty_Log_Conf erstellt eine leere logische Konfiguration für einen angegebenen Konfigurationstyp und ein angegebenes Gerät instance auf dem lokalen Computer.

Syntax

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

Parameter

[out] plcLogConf

Adresse eines Speicherorts, an dem das Handle für eine leere logische Konfiguration empfangen werden soll.

[in] dnDevInst

Vom Aufrufer bereitgestelltes Gerät instance Handle, das an den lokalen Computer gebunden ist.

[in] Priority

Vom Aufrufer bereitgestellter Konfigurationsprioritätswert. Dies muss einer der konstanten Werte sein, die in der folgenden Tabelle aufgeführt sind. Die Konstanten werden in der Reihenfolge der Priorität aufgeführt, von der höchsten bis zur niedrigsten. (Bei mehreren Konfigurationen mit demselben ulFlags-Wert versucht das System zuerst, die mit der höchsten Priorität zu verwenden.)

Prioritätskonstante Definition
LCPRI_FORCECONFIG Ergebnis einer erzwungenen Konfiguration.
LCPRI_BOOTCONFIG Ergebnis einer Startkonfiguration.
LCPRI_DESIRED Bevorzugte Konfiguration (bessere Leistung).
LCPRI_NORMAL Funktionsfähige Konfiguration (akzeptable Leistung).
LCPRI_LASTBESTCONFIG Nur zur internen Verwendung.
LCPRI_SUBOPTIMAL Keine wünschenswerte Konfiguration, aber sie funktioniert.
LCPRI_LASTSOFTCONFIG Nur zur internen Verwendung.
LCPRI_RESTART Das System muss neu gestartet werden.
LCPRI_REBOOT Das System muss neu gestartet werden (wie LCPRI_RESTART).
LCPRI_POWEROFF Das System muss heruntergefahren und ausgeschaltet werden.
LCPRI_HARDRECONFIG Ein Jumper muss geändert werden.
LCPRI_HARDWIRED Die Konfiguration kann nicht geändert werden.
LCPRI_IMPOSSIBLE Die Konfiguration kann nicht vorhanden sein.
LCPRI_DISABLED Deaktivierte Konfiguration.

[in] ulFlags

Vom Aufrufer bereitgestellte Flags, die den Typ der logischen Konfiguration angeben. Eines der folgenden Flags muss angegeben werden.

Konfigurationstypflags Definitionen
BASIC_LOG_CONF Ressourcendeskriptoren, die dieser Konfiguration hinzugefügt werden, beschreiben eine grundlegende Konfiguration.
FILTERED_LOG_CONF Nicht verwenden. (Nur der PnP-Manager kann eine gefilterte Konfiguration erstellen.)
ALLOC_LOG_CONF Nicht verwenden. (Nur der PnP-Manager kann eine zugeordnete Konfiguration erstellen.)
BOOT_LOG_CONF Ressourcendeskriptoren, die dieser Konfiguration hinzugefügt werden, beschreiben eine Startkonfiguration.
FORCED_LOG_CONF Ressourcendeskriptoren, die dieser Konfiguration hinzugefügt werden, beschreiben eine erzwungene Konfiguration.
OVERRIDE_LOG_CONF Ressourcendeskriptoren, die dieser Konfiguration hinzugefügt werden, beschreiben eine Außerkraftsetzungskonfiguration.
 

Eines der folgenden Bitflags kann mit dem Konfigurationstypflag ausgelöst werden.

Prioritätsvergleichsflags Definitionen
PRIORITY_EQUAL_FIRST Wenn mehrere Konfigurationen desselben Typs (ulFlags) die gleiche Priorität (Priorität) haben, wird diese Konfiguration an den Anfang der Liste gesetzt.
PRIORITY_EQUAL_LAST (Standard) Wenn mehrere Konfigurationen desselben Typs (ulFlags) die gleiche Priorität (Priorität) haben, wird diese Konfiguration am Ende der Liste platziert.

Rückgabewert

Wenn der Vorgang erfolgreich ist, gibt die Funktion CR_SUCCESS zurück. Andernfalls wird einer der in Cfgmgr32.h definierten Fehlercodes mit CR_ Präfix zurückgegeben.

Hinweis Ab Windows 8 gibt CM_Add_Empty_Log_Conf bei Verwendung in einem Wow64-Szenario CR_CALL_NOT_IMPLEMENTED zurück. Um Informationen zu den Hardwareressourcen auf einem lokalen Computer anzufordern, muss eine architekturnative Version der Anwendung mithilfe der Hardwareressourcen-APIs implementiert werden. Beispiel: Eine AMD64-Anwendung für AMD64-Systeme.
 

Hinweise

Das Aufrufen CM_Add_Empty_Log_Conf kann dazu führen, dass die von CM_Get_First_Log_Conf und CM_Get_Next_Log_Conf zurückgegebenen Handles ungültig werden. Wenn Sie also logische Konfigurationen nach dem Aufruf CM_Add_Empty_Log_Conf abrufen möchten, muss Ihr Code CM_Get_First_Log_Conf erneut aufrufen und bei der ersten Konfiguration beginnen.

Um eine von CM_Add_Empty_Log_Conf erstellte logische Konfiguration zu entfernen, rufen Sie CM_Free_Log_Conf auf.

Das in plcLogConf empfangene Handle muss explizit durch Aufrufen CM_Free_Log_Conf_Handle freigegeben werden.

Aufrufer dieser Funktion müssen über SeLoadDriverPrivilege verfügen. (Berechtigungen werden in der dokumentation Microsoft Windows SDK beschrieben.)

Informationen zur Verwendung von Geräte- instance Handles, die an den lokalen Computer gebunden sind, finden Sie unter CM_Get_Child.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Verfügbar in Microsoft Windows 2000 und höheren Versionen von Windows.
Zielplattform Desktop
Kopfzeile cfgmgr32.h (include Cfgmgr32.h)
Bibliothek Cfgmgr32.lib
DLL Cfgmgr32.dll

Weitere Informationen

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