업데이트: 2007년 11월
동적 코드 컴파일에 사용할 수 있는 메서드를 제공합니다.
interface ICeeGen : IUnknown {
HRESULT AddSectionReloc (
HCEESECTION section,
ULONG offset,
HCEESECTION relativeTo,
CeeSectionRelocType relocType
);
HRESULT AllocateMethodBuffer (
ULONG cchBuffer,
UCHAR **lpBuffer,
ULONG *RVA
);
HRESULT ComputePointer (
HCEESECTION section,
ULONG RVA,
UCHAR **lpBuffer
);
HRESULT EmitString (
LPWSTR lpString,
ULONG *RVA
);
HRESULT GenerateCeeFile ();
HRESULT GenerateCeeMemoryImage (
void **ppImage
);
HRESULT GetIlSection (
HCEESECTION *section
);
HRESULT GetIMapTokenIface (
IUnknown **pIMapToken
);
HRESULT GetMethodBuffer (
ULONG RVA,
UCHAR **lpBuffer
);
HRESULT GetSectionBlock (
HCEESECTION section,
ULONG len,
ULONG align = 1,
void **ppBytes = 0
);
HRESULT GetSectionCreate (
const char *name,
DWORD flags,
HCEESECTION *section
);
HRESULT GetSectionDataLen (
HCEESECTION section,
ULONG *dataLen
);
HRESULT GetString (
ULONG RVA,
LPWSTR *lpString
);
HRESULT GetStringSection (
HCEESECTION *section
);
HRESULT TruncateSection (
HCEESECTION section,
ULONG len
);
};
메서드
메서드 |
설명 |
|---|---|
코드베이스에 .reloc 명령을 추가합니다. |
|
메서드에 대한 지정된 크기의 버퍼를 만들고 메서드의 상대 가상 주소를 가져옵니다. |
|
지정한 코드 섹션에 대한 버퍼를 결정합니다. |
|
지정된 문자열을 코드베이스로 내보냅니다. |
|
현재 이 ICeeGen으로 로드된 코드베이스를 포함하는 코드베이스 파일을 생성합니다. |
|
코드베이스에 대한 이미지를 메모리에 생성합니다. |
|
지정된 핸들에서 참조하는 Intermediate Language 코드베이스의 섹션을 가져옵니다. |
|
지정한 토큰에서 참조하는 인터페이스를 가져옵니다. |
|
지정한 상대 가상 주소의 메서드에 대한 적절한 크기의 버퍼를 가져옵니다. |
|
코드베이스의 섹션 블록을 가져옵니다. |
|
지정한 이름과 플래그 값을 사용하여 코드 섹션을 생성하고 가져옵니다. |
|
지정한 섹션의 길이를 가져옵니다. |
|
지정한 상대 가상 주소에 저장된 문자열을 가져옵니다. |
|
지정한 핸들에서 참조하는 코드 섹션의 문자열 표현을 가져옵니다. |
|
지정한 코드 섹션을 지정한 길이로 잘라냅니다. |
요구 사항
플랫폼:.NET Framework 시스템 요구 사항 참조
헤더: Cor.h
라이브러리: MsCorEE.dll에서 리소스로 사용됨
.NET Framework 버전: 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0, 1.1, 1.0