ICeeGen Interface
Provides methods for dynamic code compilation.
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
);
};
Methods
Method |
Description |
---|---|
Adds a .reloc instruction to the code base. |
|
Creates a buffer of the specified size for a method, and gets the relative virtual address of the method. |
|
Determines the buffer for the specified code section. |
|
Emits the specified string into the code base. |
|
Generates a code-base file that contains the code base currently loaded into this ICeeGen. |
|
Generates an image in memory for the code base. |
|
Gets the section of the intermediate language code base referenced by the specified handle. |
|
Gets the interface referenced by the specified token. |
|
Gets a buffer of the appropriate size for the method at the specified relative virtual address. |
|
Gets a section block of the code base. |
|
Generates and gets a code section using the specified name and flag values. |
|
Gets the length of the specified section. |
|
Gets the string stored at the specified relative virtual address. |
|
Gets a string representation of the code section referenced by the specified handle. |
|
Truncates the specified code section by the specified length. |
Requirements
Platforms: See .NET Framework System Requirements.
Header: Cor.h
Library: Used as a resource in MsCorEE.dll
.NET Framework Versions: 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0, 1.1, 1.0