função CM_Add_Empty_Log_Conf (cfgmgr32.h)

A função CM_Add_Empty_Log_Conf cria uma configuração lógica vazia, para um tipo de configuração especificado e uma instância de dispositivo especificada, no computador local.

Sintaxe

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

Parâmetros

[out] plcLogConf

Endereço de um local para receber o identificador para uma configuração lógica vazia.

[in] dnDevInst

Identificador de instância de dispositivo fornecido pelo chamador associado ao computador local.

[in] Priority

Valor de prioridade de configuração fornecido pelo chamador. Esse deve ser um dos valores constantes listados na tabela a seguir. As constantes são listadas em ordem de prioridade, da mais alta para a mais baixa. (Para várias configurações com o mesmo valor ulFlags , o sistema tentará usar aquela com a prioridade mais alta primeiro.)

Constante de prioridade Definição
LCPRI_FORCECONFIG Resultado de uma configuração forçada.
LCPRI_BOOTCONFIG Resultado de uma configuração de inicialização.
LCPRI_DESIRED Configuração preferencial (melhor desempenho).
LCPRI_NORMAL Configuração viável (desempenho aceitável).
LCPRI_LASTBESTCONFIG Apenas para uso interno.
LCPRI_SUBOPTIMAL Não é uma configuração desejável, mas funcionará.
LCPRI_LASTSOFTCONFIG Apenas para uso interno.
LCPRI_RESTART O sistema deve ser reiniciado
LCPRI_REBOOT O sistema deve ser reiniciado (o mesmo que LCPRI_RESTART).
LCPRI_POWEROFF O sistema deve ser desligado e desligado.
LCPRI_HARDRECONFIG Um jumper deve ser alterado.
LCPRI_HARDWIRED A configuração não pode ser alterada.
LCPRI_IMPOSSIBLE A configuração não pode existir.
LCPRI_DISABLED Configuração desabilitada.

[in] ulFlags

Sinalizadores fornecidos pelo chamador que especificam o tipo da configuração lógica. Um dos sinalizadores a seguir deve ser especificado.

Sinalizadores de tipo de configuração Definições
BASIC_LOG_CONF Os descritores de recursos adicionados a essa configuração descreverão uma configuração básica.
FILTERED_LOG_CONF Não use. (Somente o gerenciador PnP pode criar uma configuração filtrada.)
ALLOC_LOG_CONF Não use. (Somente o gerenciador PnP pode criar uma configuração alocada.)
BOOT_LOG_CONF Os descritores de recursos adicionados a essa configuração descreverão uma configuração de inicialização.
FORCED_LOG_CONF Os descritores de recursos adicionados a essa configuração descreverão uma configuração forçada.
OVERRIDE_LOG_CONF Os descritores de recursos adicionados a essa configuração descreverão uma configuração de substituição.
 

Um dos sinalizadores de bit a seguir pode ser ORed com o sinalizador de tipo de configuração.

Sinalizadores de comparação de prioridade Definições
PRIORITY_EQUAL_FIRST Se várias configurações do mesmo tipo (ulFlags) tiverem a mesma prioridade (Prioridade), essa configuração será colocada no cabeçalho da lista.
PRIORITY_EQUAL_LAST (Padrão) Se várias configurações do mesmo tipo (ulFlags) tiverem a mesma prioridade (Prioridade), essa configuração será colocada na parte final da lista.

Retornar valor

Se a operação for bem-sucedida, a função retornará CR_SUCCESS. Caso contrário, ele retornará um dos códigos de erro prefixados por CR_ definidos em Cfgmgr32.h.

Nota Começando com Windows 8, CM_Add_Empty_Log_Conf retorna CR_CALL_NOT_IMPLEMENTED quando usado em um cenário Wow64. Para solicitar informações sobre os recursos de hardware em um computador local, é necessário implementar uma versão nativa da arquitetura do aplicativo usando as APIs de recurso de hardware. Por exemplo: um aplicativo AMD64 para sistemas AMD64.
 

Comentários

Chamar CM_Add_Empty_Log_Conf pode fazer com que os identificadores retornados por CM_Get_First_Log_Conf e CM_Get_Next_Log_Conf se tornem inválidos. Portanto, se você quiser obter configurações lógicas depois de chamar CM_Add_Empty_Log_Conf, seu código deverá chamar CM_Get_First_Log_Conf novamente e começar na primeira configuração.

Para remover uma configuração lógica criada por CM_Add_Empty_Log_Conf, chame CM_Free_Log_Conf.

O identificador recebido em plcLogConf deve ser liberado explicitamente chamando CM_Free_Log_Conf_Handle.

Os chamadores dessa função devem ter SeLoadDriverPrivilege. (Os privilégios são descritos na documentação do SDK do Microsoft Windows.)

Para obter informações sobre como usar identificadores de instância de dispositivo associados ao computador local, consulte CM_Get_Child.

Requisitos

Requisito Valor
Cliente mínimo com suporte Disponível no Microsoft Windows 2000 e versões posteriores do Windows.
Plataforma de Destino Área de Trabalho
Cabeçalho cfgmgr32.h (inclua Cfgmgr32.h)
Biblioteca Cfgmgr32.lib
DLL Cfgmgr32.dll

Confira também

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