Поделиться через


Функция CreateVersionStringFromModule

Создает строку версии из пути среды CLR в целевом процессе.

Синтаксис

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

Параметры

pidDebuggee
[in] Идентификатор процесса, в котором загружается целевая среда CLR.

szModuleName
[in] Полный или относительный путь к целевой среде CLR, загруженной в процессе.

pBuffer
[out] Возвращаемый буфер для хранения строки версии для целевой среды CLR.

cchBuffer
[in] pBufferРазмер .

pdwLength
[out] Длина строки версии, возвращаемой pBuffer.

Возвращаемое значение

S_OK
Строка версии для целевой среды CLR успешно возвращена pBuffer.

E_INVALIDARG
szModuleName имеет значение NULL или pBuffercchBuffer имеет значение NULL. pBuffer и cchBuffer должны иметь значение NULL или не null.

HRESULT_FROM_WIN32(ERROR_INSUFFICIENT_BUFFER)
pdwLength больше cchBuffer. Это может быть ожидаемым результатом, если вы передали значение NULL для обоих pBuffer и cchBuffer, и запросили необходимый размер буфера с помощью pdwLength.

HRESULT_FROM_WIN32(ERROR_MOD_NOT_FOUND)
szModuleName не содержит путь к допустимой среде CLR в целевом процессе.

E_FAIL (или другие E_ коды возврата)
pidDebuggee не ссылается на допустимый процесс или другой сбой.

Замечания

Эта функция принимает процесс CLR, который определяется pidDebuggee и строковым путем, указанным в szModuleName. Строка версии возвращается в буфере, на который pBuffer указывает. Эта строка непрозрачна для пользователя-функции; то есть в самой строке версии нет встроенного значения. Он используется исключительно в контексте этой функции и функции CreateDebuggingInterfaceFromVersion.

Эта функция должна вызываться дважды. При первом вызове передайте значение NULL для обоих pBuffer и cchBuffer. При этом размер буфера, необходимого для pBuffer этого, будет возвращен в pdwLength. Затем можно вызвать функцию во второй раз и передать буфер и pBuffer его размер.cchBuffer

Требования

Платформ: См. сведения о поддерживаемых операционных системах .NET.

Заголовок: dbgshim.h

Библиотека: dbgshim.dll, libdbgshim.so, libdbgshim.dylib

Версии .NET: Доступно с версии .NET Core 2.1