Partager via


Fonction CreateVersionStringFromModule

Crée une chaîne de version à partir d’un chemin CLR (Common Language Runtime) dans un processus cible.

Syntaxe

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

Paramètres

pidDebuggee
[in] Identificateur du processus dans lequel le CLR cible est chargé.

szModuleName
[in] Chemin complet ou relatif du CLR cible chargé dans le processus.

pBuffer
[out] Retour de la mémoire tampon pour le stockage de la chaîne de version pour le CLR cible.

cchBuffer
[in] Taille de pBuffer.

pdwLength
[out] Longueur de la chaîne de version retournée par pBuffer.

Valeur retournée

S_OK
La chaîne de version du CLR cible a été retournée avec succès dans pBuffer.

E_INVALIDARG
szModuleNamea la valeur Null, ou pBuffer est Null.cchBuffer pBuffer et cchBuffer doit être null ou non null.

HRESULT_FROM_WIN32(ERROR_INSUFFICIENT_BUFFER)
pdwLength est supérieur à cchBuffer. Il peut s’agir d’un résultat attendu si vous avez passé null pour les deux pBuffer et cchBufferque vous avez interrogé la taille de mémoire tampon nécessaire à l’aide pdwLengthde .

HRESULT_FROM_WIN32(ERROR_MOD_NOT_FOUND)
szModuleName ne contient pas de chemin d’accès à un CLR valide dans le processus cible.

E_FAIL (ou d’autres E_ codes de retour)
pidDebuggee ne fait pas référence à un processus valide ou à un autre échec.

Remarques

Cette fonction accepte un processus CLR identifié par pidDebuggee et un chemin d’accès de chaîne spécifié par szModuleName. La chaîne de version est retournée dans la mémoire tampon vers laquelle pBuffer pointe. Cette chaîne est opaque pour l’utilisateur de fonction ; autrement dit, il n’y a pas de signification intrinsèque dans la chaîne de version elle-même. Elle est utilisée uniquement dans le contexte de cette fonction et dans la fonction CreateDebuggingInterfaceFromVersion.

Cette fonction doit être appelée deux fois. Lorsque vous l’appelez la première fois, passez null pour les deux pBuffer et cchBuffer. Lorsque vous effectuez cette opération, la taille de la mémoire tampon nécessaire pBuffer est retournée dans pdwLength. Vous pouvez ensuite appeler la fonction une seconde fois, puis passer la mémoire tampon et pBuffer sa taille dans cchBuffer.

Spécifications

Plates-formes: Consultez les systèmes d’exploitation pris en charge par .NET.

En-tête : dbgshim.h

Bibliothèque : dbgshim.dll, libdbgshim.so, libdbgshim.dylib

Versions de .NET : Disponible depuis .NET Core 2.1