CM_Add_Empty_Log_Conf, fonction (cfgmgr32.h)
La fonction CM_Add_Empty_Log_Conf crée une configuration logique vide, pour un type de configuration spécifié et un instance d’appareil spécifié, sur l’ordinateur local.
Syntaxe
CMAPI CONFIGRET CM_Add_Empty_Log_Conf(
[out] PLOG_CONF plcLogConf,
[in] DEVINST dnDevInst,
[in] PRIORITY Priority,
[in] ULONG ulFlags
);
Paramètres
[out] plcLogConf
Adresse d’un emplacement pour recevoir le handle dans une configuration logique vide.
[in] dnDevInst
Handle de instance d’appareil fourni par l’appelant qui est lié à l’ordinateur local.
[in] Priority
Valeur de priorité de configuration fournie par l’appelant. Il doit s’agir de l’une des valeurs constantes répertoriées dans le tableau suivant. Les constantes sont répertoriées dans l’ordre de priorité, du plus élevé au plus bas. (Pour plusieurs configurations avec la même valeur ulFlags , le système tente d’utiliser d’abord celle qui a la priorité la plus élevée.)
Constante de priorité | Définition |
---|---|
LCPRI_FORCECONFIG | Résultat d’une configuration forcée. |
LCPRI_BOOTCONFIG | Résultat d’une configuration de démarrage. |
LCPRI_DESIRED | Configuration préférée (meilleures performances). |
LCPRI_NORMAL | Configuration utilisable (performances acceptables). |
LCPRI_LASTBESTCONFIG | À usage interne uniquement. |
LCPRI_SUBOPTIMAL | Ce n’est pas une configuration souhaitable, mais elle fonctionnera. |
LCPRI_LASTSOFTCONFIG | À usage interne uniquement. |
LCPRI_RESTART | Le système doit être redémarré |
LCPRI_REBOOT | Le système doit être redémarré (identique à LCPRI_RESTART). |
LCPRI_POWEROFF | Le système doit être arrêté et mis hors tension. |
LCPRI_HARDRECONFIG | Un cavalier doit être modifié. |
LCPRI_HARDWIRED | La configuration ne peut pas être modifiée. |
LCPRI_IMPOSSIBLE | La configuration ne peut pas exister. |
LCPRI_DISABLED | Configuration désactivée. |
[in] ulFlags
Indicateurs fournis par l’appelant qui spécifient le type de la configuration logique. L’un des indicateurs suivants doit être spécifié.
Indicateurs de type de configuration | Définitions |
---|---|
BASIC_LOG_CONF | Les descripteurs de ressources ajoutés à cette configuration décrivent une configuration de base. |
FILTERED_LOG_CONF | Ne pas utiliser. (Seul le gestionnaire PnP peut créer une configuration filtrée.) |
ALLOC_LOG_CONF | Ne pas utiliser. (Seul le gestionnaire PnP peut créer une configuration allouée.) |
BOOT_LOG_CONF | Les descripteurs de ressources ajoutés à cette configuration décrivent une configuration de démarrage. |
FORCED_LOG_CONF | Les descripteurs de ressources ajoutés à cette configuration décrivent une configuration forcée. |
OVERRIDE_LOG_CONF | Les descripteurs de ressources ajoutés à cette configuration décrivent une configuration de remplacement. |
L’un des indicateurs de bits suivants peut être ORed avec l’indicateur de type de configuration.
Indicateurs de comparaison de priorité | Définitions |
---|---|
PRIORITY_EQUAL_FIRST | Si plusieurs configurations du même type (ulFlags) ont la même priorité (Priorité), cette configuration est placée en tête de la liste. |
PRIORITY_EQUAL_LAST | (Par défaut) Si plusieurs configurations du même type (ulFlags) ont la même priorité (Priorité), cette configuration est placée à la fin de la liste. |
Valeur retournée
Si l’opération réussit, la fonction retourne CR_SUCCESS. Sinon, elle retourne l’un des codes d’erreur préfixés CR_ définis dans Cfgmgr32.h.
Remarques
L’appel de CM_Add_Empty_Log_Conf peut rendre les handles retournés par CM_Get_First_Log_Conf et CM_Get_Next_Log_Conf non valides. Par conséquent, si vous souhaitez obtenir des configurations logiques après avoir appelé CM_Add_Empty_Log_Conf, votre code doit appeler à nouveau CM_Get_First_Log_Conf et démarrer à la première configuration.
Pour supprimer une configuration logique créée par CM_Add_Empty_Log_Conf, appelez CM_Free_Log_Conf.
Le handle reçu dans plcLogConf doit être explicitement libéré en appelant CM_Free_Log_Conf_Handle.
Les appelants de cette fonction doivent avoir SeLoadDriverPrivilege. (Les privilèges sont décrits dans la documentation Microsoft Windows SDK.)
Pour plus d’informations sur l’utilisation de handles de instance d’appareil liés à l’ordinateur local, consultez CM_Get_Child.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Disponible dans Microsoft Windows 2000 et versions ultérieures de Windows. |
Plateforme cible | Desktop (Expérience utilisateur) |
En-tête | cfgmgr32.h (inclure Cfgmgr32.h) |
Bibliothèque | Cfgmgr32.lib |
DLL | Cfgmgr32.dll |