Compartilhar via


Função WdfDriverRetrieveVersionString (wdfdriver.h)

[Aplica-se a KMDF e UMDF]

O método WdfDriverRetrieveVersionString recupera uma cadeia de caracteres Unicode que identifica a versão do Kernel-Mode Driver Framework com a qual o driver está sendo executado.

Sintaxe

NTSTATUS WdfDriverRetrieveVersionString(
  [in] WDFDRIVER Driver,
  [in] WDFSTRING String
);

Parâmetros

[in] Driver

Um identificador para o objeto de driver da estrutura do driver que o driver obteve de uma chamada anterior para wdfDriverCreate ou WdfGetDriver.

[in] String

Um identificador para um objeto de cadeia de caracteres de estrutura que o driver obteve de uma chamada anterior para WdfStringCreate. A estrutura atribui a cadeia de caracteres de versão ao objeto de cadeia de caracteres.

Valor de retorno

WdfDriverRetrieveVersionString retornará STATUS_SUCCESS se a operação for bem-sucedida. Caso contrário, esse método poderá retornar um dos seguintes valores:

Código de retorno Descrição
STATUS_INSUFFICIENT_RESOURCES
A estrutura não pôde alocar um buffer para a cadeia de caracteres Unicode.
 

Esse método também pode retornar outros valores NTSTATUS .

Uma verificação de bugs do sistema ocorre se o identificador de do Driver for inválido.

Observações

O driver pode chamar WdfDriverRetrieveVersionString se quiser exibir uma cadeia de caracteres que identifique a versão da biblioteca de estruturas. O formato da cadeia de caracteres pode mudar de uma versão para outra, portanto, o driver não deve tentar interpretar o formato ou o conteúdo da cadeia de caracteres.

Para obter mais informações sobre versões de biblioteca, consulte de Controle de Versão da Biblioteca da Estrutura.

Exemplos

O exemplo de código a seguir cria um objeto de cadeia de caracteres, atribui a cadeia de caracteres de versão ao objeto e exibe a cadeia de caracteres se um depurador estiver em execução.

WDFSTRING string;
UNICODE_STRING us;

status = WdfStringCreate(
                         NULL,
                         WDF_NO_OBJECT_ATTRIBUTES,
                         &string
                         );
if (NT_SUCCESS(status)) {
    status = WdfDriverRetrieveVersionString(
                                            driver,
                                            string
                                            );
    if (NT_SUCCESS(status)) {
        WdfStringGetUnicodeString(
                                  string,
                                  &us
                                  );
        DbgPrint(
                 "WDF Version string:  %wZ\n",
                 &us
                 );
    }
    WdfObjectDelete(string);
}

Requisitos

Requisito Valor
da Plataforma de Destino Universal
versão mínima do KMDF 1.0
versão mínima do UMDF 2.0
cabeçalho wdfdriver.h (inclua Wdf.h)
Biblioteca Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF)
IRQL PASSIVE_LEVEL
regras de conformidade de DDI DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf)

Consulte também

WdfDriverCreate

WdfDriverIsVersionAvailable

do WdfGetDriver

WdfObjectDelete

WdfStringCreate

WdfStringGetUnicodeString