Partilhar via


Função CreateVersionStringFromModule

Cria uma cadeia de caracteres de versão a partir de um caminho CLR (Common Language Runtime) em um processo de destino.

Sintaxe

HRESULT CreateVersionStringFromModule (
    [in]  DWORD      pidDebuggee,
    [in]  LPCWSTR    szModuleName,
    [out, size_is(cchBuffer),
    length_is(*pdwLength)] LPWSTR Buffer,
    [in]  DWORD      cchBuffer,
    [out] DWORD*     pdwLength
);

Parâmetros

pidDebuggee
[em] Identificador do processo no qual o CLR de destino é carregado.

szModuleName
[em] Caminho completo ou relativo para o CLR de destino que é carregado no processo.

pBuffer
[saídas] Buffer de retorno para armazenar a cadeia de caracteres de versão para o CLR de destino.

cchBuffer
[em] Tamanho de pBuffer.

pdwLength
[saídas] Comprimento da cadeia de caracteres de versão retornada por pBuffer.

Valor devolvido

S_OK
A cadeia de caracteres de versão para o CLR de destino foi retornada com êxito no pBuffer.

E_INVALIDARG
szModuleName é nulo, ou ou pBuffercchBuffer é nulo. pBuffer e cchBuffer ambos devem ser nulos ou não nulos.

HRESULT_FROM_WIN32(ERROR_INSUFFICIENT_BUFFER)
pdwLength é maior que cchBuffer. Este pode ser um resultado esperado se você tiver passado nulo para ambos e pBuffercchBuffer, e consultado o tamanho do buffer necessário usando pdwLength.

HRESULT_FROM_WIN32(ERROR_MOD_NOT_FOUND)
szModuleName não contém um caminho para um CLR válido no processo de destino.

E_FAIL (ou outros E_ códigos de retorno)
pidDebuggee não se refere a um processo válido ou outra falha.

Observações

Esta função aceita um processo CLR que é identificado por pidDebuggee e um caminho de cadeia de caracteres que é especificado por szModuleName. A cadeia de caracteres de versão é retornada no buffer que pBuffer aponta para. Esta cadeia de caracteres é opaca para o usuário da função; ou seja, não há um significado intrínseco na cadeia de caracteres da versão em si. Ele é usado somente no contexto desta função e da função CreateDebuggingInterfaceFromVersion.

Esta função deve ser chamada duas vezes. Quando você chamá-lo pela primeira vez, passe null para ambos e pBuffercchBuffer. Quando você fizer isso, o tamanho do buffer necessário para pBuffer será retornado em pdwLength. Em seguida, você pode chamar a função uma segunda vez e passar o buffer e pBuffer seu tamanho em cchBuffer.

Requisitos

Plataformas: Consulte Sistemas operacionais suportados pelo .NET.

Cabeçalho: dbgshim.h

Biblioteca: dbgshim.dll, libdbgshim.so, libdbgshim.dylib

Versões do .NET: Disponível desde o .NET Core 2.1