função CM_Get_Child_Ex (cfgmgr32.h)

[Começando com Windows 8 e Windows Server 2012, essa função foi preterida. Em vez disso, use CM_Get_Child .]

A função CM_Get_Child_Ex é usada para recuperar um identificador de instância de dispositivo para o primeiro nó filho de um nó de dispositivo especificado (devnode) em uma árvore de dispositivos local ou de um computador remoto.

Sintaxe

CMAPI CONFIGRET CM_Get_Child_Ex(
  [out]          PDEVINST pdnDevInst,
  [in]           DEVINST  dnDevInst,
  [in]           ULONG    ulFlags,
  [in, optional] HMACHINE hMachine
);

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 identificador do computador fornecido pelo hMachine. Consulte a seção Comentários .

[in] dnDevInst

Identificador de instância de dispositivo fornecido pelo chamador associado ao identificador do computador fornecido pelo hMachine.

[in] ulFlags

Não usado, deve ser zero.

[in, optional] hMachine

Identificador de computador fornecido pelo chamador ao qual o identificador de instância do dispositivo fornecido pelo chamador está associado.

Nota Não há suporte para o uso dessa função para acessar computadores remotos, começando com Windows 8 e Windows Server 2012, pois essa funcionalidade foi removida.
 

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 em uma árvore de dispositivos local ou de um computador remoto, primeiro chame CM_Get_Child_Ex para obter um identificador para o primeiro nó filho e, em seguida, chame CM_Get_Sibling_Ex para obter identificadores para o resto 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 do 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 está associado.
  • Um identificador de instância do 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.
Use CM_Connect_Machine para obter um identificador de computador remoto para uso com identificadores de instância de dispositivo remoto.

Para obter um identificador de instância de dispositivo local ou remoto, siga um destes procedimentos.

Você também pode usar as funções de instalação do dispositivo para obter identificadores de instância do dispositivo. Execute as seguintes etapas:
  1. Obter um conjunto de informações do dispositivo.
  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.
  4. Obtenha o identificador do computador ao qual o identificador da instância do dispositivo está associado. 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 . (Chame SetupDiGetDeviceInfoListDetail para obter uma estrutura SP_DEVINFO_LIST_DETAIL_DATA.)
A funcionalidade para acessar computadores remotos foi removida em sistemas operacionais Windows 8 e Windows Server 2012 e posteriores, portanto, você não pode acessar computadores remotos durante a execução nessas versões do Windows.

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_Get_Child

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