대상 프로세스의 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이거나 null인 경우
pBuffer 은 cchBuffer null이거나 null이 아닌 것이어야 합니다.
HRESULT_FROM_WIN32(ERROR_INSUFFICIENT_BUFFER)
pdwLength이 cchBuffer보다 큽니다. 둘 다 pBuffer 에 대해 null을 전달하고 cchBuffer를 사용하여 pdwLength필요한 버퍼 크기를 쿼리한 경우 예상되는 결과일 수 있습니다.
HRESULT_FROM_WIN32(ERROR_MOD_NOT_FOUND)
szModuleName 는 대상 프로세스에서 유효한 CLR에 대한 경로를 포함하지 않습니다.
E_FAIL (또는 기타 E_ 반환 코드)
pidDebuggee 는 유효한 프로세스 또는 기타 오류를 참조하지 않습니다.
비고
이 함수는 식별되는 CLR 프로세스와 에 의해 pidDebuggeeszModuleName지정된 문자열 경로를 허용합니다. 버전 문자열은 가리키는 버퍼 pBuffer 에 반환됩니다. 이 문자열은 함수 사용자에게 불투명합니다. 즉, 버전 문자열 자체에는 본질적인 의미가 없습니다. 이 함수는 이 함수 및 CreateDebuggingInterfaceFromVersion 함수의 컨텍스트에서만 사용됩니다.
이 함수는 두 번 호출해야 합니다. 처음 호출할 때 둘 다 pBuffer 에 대해 null을 전달합니다 cchBuffer. 이렇게 하면 필요한 pBuffer 버퍼의 크기가 반환 pdwLength됩니다. 그런 다음 함수를 두 번째로 호출하고 버퍼 pBuffer 와 해당 크기를 전달합니다 cchBuffer.
요구 사항
플랫폼:.NET 지원 운영 체제를 참조하세요.
헤더: dbgshim.h
라이브러리: dbgshim.dll, libdbgshim.so, libdbgshim.dylib
.NET 버전: .NET Core 2.1 이후 사용 가능
.NET