次の方法で共有


ICeeGen

更新 : 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
    );
        
};

メソッド

メソッド

説明

ICeeGen::AddSectionReloc メソッド

.reloc 命令をコード ベースに追加します。

ICeeGen::AllocateMethodBuffer メソッド

指定したサイズのメソッド用のバッファを作成し、そのメソッドの相対仮想アドレスを取得します。

ICeeGen::ComputePointer メソッド

指定したコード セクションのバッファを判断します。

ICeeGen::EmitString メソッド

指定した文字列をコード ベースで出力します。

ICeeGen::GenerateCeeFile メソッド

この ICeeGen に現在読み込まれているコード ベースを含めるコードベース ファイルを生成します。

ICeeGen::GenerateCeeMemoryImage メソッド

コード ベースのメモリ内にイメージを生成します。

ICeeGen::GetIlSection メソッド

指定されたハンドルが参照する中間言語コード ベースのセクションを取得します。

ICeeGen::GetIMapTokenIface メソッド

指定したトークンで参照されるインターフェイスを取得します。

ICeeGen::GetMethodBuffer メソッド

指定した相対仮想アドレスのメソッドに適したサイズのバッファを取得します。

ICeeGen::GetSectionBlock メソッド

コード ベースのセクション ブロックを取得します。

ICeeGen::GetSectionCreate メソッド

指定した名前およびフラグ値を使用してコード セクションを生成し、取得します。

ICeeGen::GetSectionDataLen メソッド

指定したセクションの長さを取得します。

ICeeGen::GetString メソッド

指定した相対仮想アドレスに格納されている文字列を取得します。

ICeeGen::GetStringSection メソッド

指定したハンドルが参照するコード セクションの文字列形式を取得します。

ICeeGen::TruncateSection メソッド

指定したコード セクションを指定した長さだけ切り詰めます。

必要条件

プラットフォーム : 「.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

参照

その他の技術情報

メタデータ インターフェイス