DynamicILInfo.SetCode Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Задает основной текст кода связанного динамического метода.
Перегрузки
SetCode(Byte[], Int32) |
Задает основной текст кода связанного динамического метода. |
SetCode(Byte*, Int32, Int32) |
Задает основной текст кода связанного динамического метода. |
SetCode(Byte[], Int32)
- Исходный код:
- DynamicILGenerator.cs
- Исходный код:
- DynamicILGenerator.cs
- Исходный код:
- DynamicILGenerator.cs
Задает основной текст кода связанного динамического метода.
public:
void SetCode(cli::array <System::Byte> ^ code, int maxStackSize);
public void SetCode (byte[]? code, int maxStackSize);
public void SetCode (byte[] code, int maxStackSize);
member this.SetCode : byte[] * int -> unit
Public Sub SetCode (code As Byte(), maxStackSize As Integer)
Параметры
- code
- Byte[]
Массив, который содержит поток MSIL.
- maxStackSize
- Int32
Максимальное количество элементов в стеке операторов при выполнении метода.
Комментарии
Проверки допустимости в потоке MSIL не выполняются.
При повторном вызове этого метода первый поток MSIL заменяется вторым.
Для создания собственных метаданных и MSIL требуется знакомство с документацией по общеязыковой инфраструктуре (CLI), в частности с разделом II: определение и семантика метаданных и семантикой и разделом III. Набор инструкций CIL. Дополнительные сведения см. в статье ECMA 335 Common Language Infrastructure (CLI).
Применяется к
SetCode(Byte*, Int32, Int32)
- Исходный код:
- DynamicILGenerator.cs
- Исходный код:
- DynamicILGenerator.cs
- Исходный код:
- DynamicILGenerator.cs
Важно!
Этот API несовместим с CLS.
- Альтернативный вариант, совместимый с CLS
- System.Reflection.Emit.DynamicILInfo.SetCode(Byte[], Int32)
Задает основной текст кода связанного динамического метода.
public:
void SetCode(System::Byte* code, int codeSize, int maxStackSize);
[System.CLSCompliant(false)]
public void SetCode (byte* code, int codeSize, int maxStackSize);
[System.CLSCompliant(false)]
[System.Security.SecurityCritical]
public void SetCode (byte* code, int codeSize, int maxStackSize);
[<System.CLSCompliant(false)>]
member this.SetCode : nativeptr<byte> * int * int -> unit
[<System.CLSCompliant(false)>]
[<System.Security.SecurityCritical>]
member this.SetCode : nativeptr<byte> * int * int -> unit
Параметры
- code
- Byte*
Указатель на массив байтов, в котором содержится поток MSIL.
- codeSize
- Int32
Возвращает число байтов потока MSIL.
- maxStackSize
- Int32
Максимальное количество элементов в стеке операторов при выполнении метода.
- Атрибуты
Исключения
code
равно null
, а codeSize
больше 0.
Значение параметраcodeSize
меньше 0.
Комментарии
Проверки допустимости в потоке MSIL не выполняются.
При повторном вызове этого метода первый поток MSIL заменяется вторым.
Для создания собственных метаданных и MSIL требуется знакомство с документацией по общеязыковой инфраструктуре (CLI), в частности с разделом II: определение и семантика метаданных и семантикой и Раздел III. Набор инструкций CIL. Дополнительные сведения см. в статье ECMA 335 Common Language Infrastructure (CLI).