다음을 통해 공유


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
pBuffer에 반환된 대상 CLR에 대한 버전 문자열입니다.

E_INVALIDARG
szModuleName이 null이거나 pBuffer 또는 cchBuffer가 null입니다. pBuffercchBuffer는 둘 다 null이거나 null이 아니어야 합니다.

HRESULT_FROM_WIN32(ERROR_INSUFFICIENT_BUFFER)
pdwLengthcchBuffer보다 큰 경우 이는 pBuffercchBuffer 둘 다에 대해 null을 전달하고 pdwLength를 사용하여 필요한 버퍼 크기를 쿼리한 경우의 예상 결과일 수 있습니다.

HRESULT_FROM_WIN32(ERROR_MOD_NOT_FOUND)
szModuleName이 대상 프로세스의 유효한 CLR에 대한 경로를 포함하지 않습니다.

E_FAIL(또는 기타 E_ 반환 코드)
pidDebuggee가 유효한 프로세스 또는 다른 실패를 참조하지 않습니다.

설명

이 함수는 pidDebuggee로 식별된 CLR 프로세스 및 szModuleName으로 지정된 문자열 경로를 수락합니다. pBuffer가 가리키는 버퍼에 버전 문자열이 반환됩니다. 이 문자열은 함수 사용자에게 불투명합니다. 즉, 버전 문자열 자체에는 내포된 의미가 없습니다. 전적으로 이 함수와 CreateDebuggingInterfaceFromVersion 함수의 컨텍스트에서 사용됩니다.

이 함수는 두 번 호출해야 합니다. 처음 호출할 때는 pBuffercchBuffer 둘 다에 대해 null을 전달합니다. 이렇게 하면 pBuffer에 필요한 버퍼의 크기가 pdwLength에 반환됩니다. 그런 다음 두 번째로 함수를 호출하고 버퍼에 pBuffer에, 해당 크기를 cchBuffer에 전달할 수 있습니다.

요구 사항

플랫폼:.NET 지원 운영 체제를 참조하세요.

헤더: dbgshim.h

라이브러리: dbgshim.dll, libdbgshim.so, libdbgshim.dylib

.NET 버전: .NET Core 2.1부터 사용 가능