Função CM_Get_Child (cfgmgr32.h)

A função CM_Get_Child é usada para recuperar um identificador de instância do dispositivo para o primeiro nó filho de um nó de dispositivo especificado (devnode) na árvore de dispositivos do computador local.

Observação

No Windows Vista e versões posteriores do Windows, o modelo de propriedade do dispositivo unificado usa a chave de propriedadeDEVPKEY_Device_Children para representar os filhos do dispositivo. Consulte Recuperando relações de dispositivo para obter detalhes.

Sintaxe

CMAPI CONFIGRET CM_Get_Child(
  [out] PDEVINST pdnDevInst,
  [in]  DEVINST  dnDevInst,
  [in]  ULONG    ulFlags
);

Parâmetros

[out] pdnDevInst

Ponteiro fornecido pelo chamador para o identificador da instância do dispositivo para o nó filho que essa função recupera. O identificador recuperado está associado ao computador local. Consulte a seção Comentários .

[in] dnDevInst

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

[in] ulFlags

Não usado, deve ser zero.

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.

Comentários

Para enumerar todos os filhos de um devnode na árvore de dispositivos do computador local, primeiro chame CM_Get_Child para obter um identificador de instância de dispositivo para o primeiro nó filho e, em seguida, chame CM_Get_Sibling para obter identificadores para o restante dos filhos.

Usando identificadores de instância de dispositivo

O identificador de instância do dispositivo que você usa com funções do gerenciador de configurações PnP está associado a identificadores de computador, da seguinte maneira:

  • Todos os identificadores de instância de dispositivo local estão associados a um identificador de computador local com valor NULL.
  • Se você usar um identificador de computador remoto para obter um identificador de instância de dispositivo, o identificador de instância de dispositivo remoto resultante será associado ao identificador do computador remoto.
  • Um identificador de instância do dispositivo só pode ser usado com o identificador do computador ao qual ele está associado.
  • Um identificador de instância de dispositivo só poderá ser usado com outro identificador de instância de dispositivo se ambos os identificadores de instância do dispositivo estiverem associados ao mesmo identificador de computador.
Para obter um identificador de instância de dispositivo associado ao computador local, siga um destes procedimentos. Você também pode usar as funções de instalação do dispositivo para obter identificadores de instância de dispositivo local de um conjunto de informações do dispositivo associado ao computador local. Execute as seguintes etapas:
  1. Obtenha um conjunto de informações do dispositivo associado ao computador local. (Um identificador de instância de dispositivo obtido de um conjunto de informações do dispositivo está associado ao identificador do computador ao qual o conjunto de informações do dispositivo está associado. Você obtém o identificador do computador para um conjunto de informações de dispositivo do membro RemoteMachineHandle de sua estrutura SP_DEVINFO_LIST_DETAIL_DATA . Para um conjunto de informações de dispositivo local associado ao computador local, o valor de RemoteMachineHandle é NULL. Chame SetupDiGetDeviceInfoListDetail para obter uma estrutura SP_DEVINFO_LIST_DETAIL_DATA.)
  2. Obtenha uma estrutura de SP_DEVINFO_DATA para uma instância de dispositivo no conjunto de informações do dispositivo.
  3. Obtenha o identificador de instância do dispositivo para a instância do dispositivo do membro DevInst da estrutura SP_DEVINFO_DATA.

Requisitos

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

Confira também

CM_Get_Child_Ex

CM_Get_Parent

CM_Get_Parent_Ex

CM_Get_Sibling

CM_Get_Sibling_Ex

CM_Locate_DevNode

CM_Locate_DevNode_Ex

SP_DEVINFO_DATA

SP_DEVINFO_LIST_DETAIL_DATA

SetupDiGetDeviceInfoListDetail