從目標進程中的 Common Language Runtime (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。 如果您已針對 pBuffer 和 cchBuffer傳遞 Null,而且使用 pdwLength查詢必要的緩衝區大小,這可能是預期的結果。
HRESULT_FROM_WIN32(ERROR_MOD_NOT_FOUND)
szModuleName 不包含目標進程中有效 CLR 的路徑。
E_FAIL (或其他 E_ 傳回碼)
pidDebuggee 不會參考有效的進程或其他失敗。
備註
此函式會接受 所 pidDebuggee 識別的CLR進程,以及所 szModuleName指定的字串路徑。 版本字串會在指向的緩衝區 pBuffer 中傳回。 此字串對函式使用者不透明;也就是說,版本字串本身沒有內在意義。 它只用於此函式的內容和 CreateDebuggingInterfaceFromVersion 函式。
此函式應該呼叫兩次。 當您第一次呼叫它時,請針對 pBuffer 和 cchBuffer傳遞 null。 當您這樣做時,所需的緩衝區 pBuffer 大小將會在 中 pdwLength傳回。 接著,您可以第二次呼叫 函式,並在 中 pBuffer 傳入緩衝區及其大小 cchBuffer。
需求
平臺: 請參閱 .NET 支援的作系統。
標頭: dbgshim.h
連結庫: dbgshim.dll、libdbgshim.so、libdbgshim.dylib
.NET 版本: 自 .NET Core 2.1 起提供