업데이트: 2007년 11월
CLR(공용 언어 런타임)의 대상 항목과 상호 작용하기 위한 메서드를 제공합니다.
interface ICLRDataTarget : IUnknown {
HRESULT GetCurrentThreadID (
[out] ULONG32 *threadID
);
HRESULT GetImageBase (
[in, string] LPCWSTR imagePath,
[out] CLRDATA_ADDRESS *baseAddress
);
HRESULT GetMachineType (
[out] ULONG32 *machineType
);
HRESULT GetPointerSize (
[out] ULONG32 *pointerSize
);
HRESULT GetThreadContext (
[in] ULONG32 threadID,
[in] ULONG32 contextFlags,
[in] ULONG32 contextSize,
[out, size_is(contextSize)]
BYTE *context
);
HRESULT GetTLSValue (
[in] ULONG32 threadID,
[in] ULONG32 index,
[out] CLRDATA_ADDRESS *value
);
HRESULT ReadVirtual (
[in] CLRDATA_ADDRESS address,
[out, size_is(bytesRequested), length_is(*bytesRead)]
BYTE *buffer,
[in] ULONG32 bytesRequested,
[out] ULONG32 *bytesRead
);
HRESULT Request (
[in] ULONG32 reqCode,
[in] ULONG32 inBufferSize,
[in, size_is(inBufferSize)]
BYTE *inBuffer,
[in] ULONG32 outBufferSize,
[out, size_is(outBufferSize)]
BYTE *outBuffer
);
HRESULT SetThreadContext (
[in] ULONG32 threadID,
[in] ULONG32 contextSize,
[in, size_is(contextSize)]
BYTE *context
);
HRESULT SetTLSValue (
[in] ULONG32 threadID,
[in] ULONG32 index,
[in] CLRDATA_ADDRESS value
);
HRESULT WriteVirtual (
[in] CLRDATA_ADDRESS address,
[in, size_is(bytesRequested)]
BYTE *buffer,
[in] ULONG32 bytesRequested,
[out] ULONG32 *bytesWritten
);
};
메서드
메서드 |
설명 |
|---|---|
현재 스레드의 운영 체제 식별자를 가져옵니다. |
|
지정한 이미지의 기준 메모리 주소를 가져옵니다. |
|
대상 프로세스에서 사용하는 명령 집합 유형의 식별자를 가져옵니다. |
|
현재 대상에 대한 포인터의 크기(바이트)를 가져옵니다. |
|
지정한 식별자를 사용하여 스레드의 컨텍스트에 대한 포인터를 가져옵니다. |
|
지정한 스레드에 대해 TLS(스레드 로컬 저장소)의 지정한 인덱스 위치에 있는 값을 가져옵니다. |
|
지정한 가상 메모리 주소의 데이터를 지정한 버퍼로 읽어옵니다. |
|
구현에서 정의한 작업 요청을 위해 CLR(공용 언어 런타임) 데이터 액세스 서비스에 의해 호출됩니다. |
|
대상 프로세스에 있는 지정된 스레드의 현재 컨텍스트를 설정합니다. |
|
대상 프로세스에서 지정한 스레드의 TLS(스레드 로컬 저장소)에 값을 설정합니다. |
|
지정한 버퍼의 데이터를 지정한 가상 메모리 주소에 씁니다. |
설명
API 클라이언트(즉, 디버거)에서는 이 인터페이스를 특정 대상 항목에 맞도록 구현해야 합니다. 예를 들어 활성 프로세스의 구현은 메모리 덤프의 구현과는 다릅니다.
요구 사항
플랫폼:.NET Framework 시스템 요구 사항 참조
헤더: ClrData.idl
라이브러리: CorGuids.lib
.NET Framework 버전: 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0