Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
[Aplica-se somente ao KMDF]
O método WdfPdoInitAssignInstanceID atualiza a ID da instância para um dispositivo filho.
Sintaxe
NTSTATUS WdfPdoInitAssignInstanceID(
[in] PWDFDEVICE_INIT DeviceInit,
[in] PCUNICODE_STRING InstanceID
);
Parâmetros
[in] DeviceInit
Um ponteiro para uma estrutura WDFDEVICE_INIT.
[in] InstanceID
Um ponteiro para uma estrutura UNICODE_STRING que contém uma ID de instância cadeia de caracteres. O driver pode alocar o buffer da cadeia de caracteres do pool de páginas.
Valor de retorno
Se a operação for bem-sucedida, o método retornará STATUS_SUCCESS. Os valores de retorno adicionais incluem:
| Código de retorno | Descrição |
|---|---|
|
O driver está inicializando um FDO em vez de um PDO. |
|
O driver não pôde alocar espaço para armazenar a cadeia de caracteres de ID da instância. |
O método também pode retornar outros valores NTSTATUS .
Observações
Para obter mais informações sobre IDs de instância, consulte cadeias de caracteres de identificação do dispositivo.
O driver deve chamar WdfPdoInitAssignInstanceID antes de chamar WdfDeviceCreate. Para obter mais informações sobre como chamar WdfDeviceCreate, consulte Criando um objeto de dispositivo framework.
Exemplos
O exemplo de código a seguir converte o número de série de um dispositivo em uma cadeia de caracteres Unicode e registra a cadeia de caracteres Unicode como a ID da instância do dispositivo.
DECLARE_UNICODE_STRING_SIZE(instanceID, INSTANCEID_LENGTH);
status = RtlIntegerToUnicodeString(
SerialNo,
BASE_DEC,
&instanceID
);
status = WdfPdoInitAssignInstanceID(
pDeviceInit,
&instanceID
);
Requisitos
| Requisito | Valor |
|---|---|
| da Plataforma de Destino | Universal |
| versão mínima do KMDF | 1.0 |
| cabeçalho | wdfpdo.h (inclua Wdf.h) |
| Biblioteca | Wdf01000.sys (consulte o Controle de Versão da Biblioteca da Estrutura.) |
| IRQL | PASSIVE_LEVEL |
| regras de conformidade de DDI | ChildDeviceInitAPI(kmdf), DriverCreate(kmdf), InitFreeDeviceCallback(kmdf),InitFreeDeviceCreate(kmdf), InitFreeNull(kmdf), KmdfIrql(km, KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf), PdoDeviceInitAPI (kmdf), PdoInitFreeDeviceCallback(kmdf), PdoInitFreeDeviceCreate(kmdf) |