IDebugDataSpaces4::ReadMultiByteStringVirtualWide 메서드(dbgeng.h)

ReadMultiByteStringVirtualWide 메서드는 대상에서 null로 끝나는 멀티바이트 문자열을 읽고 유니코드로 변환합니다.

구문

HRESULT ReadMultiByteStringVirtualWide(
  [in]            ULONG64 Offset,
  [in]            ULONG   MaxBytes,
  [in]            ULONG   CodePage,
  [out, optional] PWSTR   Buffer,
  [in]            ULONG   BufferSize,
  [out, optional] PULONG  StringBytes
);

매개 변수

[in] Offset

프로세스의 가상 주소 공간에서 문자열의 위치를 지정합니다.

[in] MaxBytes

대상에서 읽을 최대 바이트 수를 지정합니다.

[in] CodePage

대상에서 읽은 멀티바이트 문자열을 유니코드 문자열로 변환하는 데 사용할 코드 페이지를 지정합니다. 예를 들어 CP_ACP ANSI 코드 페이지입니다.

[out, optional] Buffer

대상에서 문자열을 받습니다. BufferNULL이면 이 정보가 반환되지 않습니다.

[in] BufferSize

버퍼 버퍼의 크기를 문자 단위로 지정합니다.

[out, optional] StringBytes

대상에 있는 문자열의 크기(바이트)를 받습니다. StringBytesNULL이면 이 정보가 반환되지 않습니다.

반환 값

반환 코드 Description
S_OK
메서드를 성공적으로 수행했습니다.
S_FALSE
메서드가 성공하지 못했습니다.
E_INVALIDARG
대상에서 MaxBytes 를 읽은 후 null 종결자를 찾을 수 없습니다.
 

이 메서드는 오류 값을 반환할 수도 있습니다. 자세한 내용은 반환 값을 참조하세요.

설명

엔진은 대상에서 MaxBytes 까지 읽어 null 종결자를 찾습니다. 문자열에 BufferSize 문자보다 많은 문자가 있는 경우 버 에 맞게 문자열이 잘립니다.

S_OK 반환되더라도 버퍼가 문자열을 저장할 만큼 크지 않았을 수 있습니다. 이 경우 버 에 맞게 문자열이 잘립니다. 버퍼에 하나 이상의 문자에 대한 공간이 있는 경우 잘린 문자열은 null로 종료됩니다. 호출이 반환된 후 검사 *StringBytes가 BufferSize보다 큰지 확인합니다.

요구 사항

요구 사항
대상 플랫폼 데스크톱
머리글 dbgeng.h(Dbgeng.h, Winnls.h 포함)

추가 정보

IDebugDataSpaces4

ReadMultiByteStringVirtual

ReadUnicodeStringVirtualWide