Вопросы по теме 'cil'

Можно ли косвенно загрузить тип значения в стек
В Microsoft IL для вызова метода для типа значения требуется косвенная ссылка. Допустим, у нас есть ILGenerator с именем «il», и в настоящее время у нас есть Nullable на вершине стека, если мы хотим проверить, имеет ли он значение, мы можем выдать...
3465 просмотров
schedule 02.01.2023

Как дополнительные параметры VB.NET работают «внутри»? Являются ли они CLS-совместимыми?
Допустим, у нас есть следующее объявление метода: Public Function MyMethod(ByVal param1 As Integer, _ Optional ByVal param2 As Integer = 0, _ Optional ByVal param3 As Integer = 1) As Integer Return param1 + param2 + param3 End...
4717 просмотров
schedule 27.05.2022

Какова цель кода операции CIL nop?
Я просматриваю MSIL и замечаю множество nop в MSIL. В статье MSDN говорится, что они не предпринимают никаких действий и используются для заполнения пространства, если код операции исправлен. Они используются гораздо чаще в сборках отладки, чем...
48307 просмотров
schedule 09.06.2022

Почему компилятор C# явно объявляет все интерфейсы, реализуемые типом?
Компилятор С#, кажется, явно отмечает все интерфейсы, которые он реализует, и реализует его базовые классы. Спецификации CLI говорят, что это не обязательно. Я видел, что некоторые другие компиляторы не выдают это явно, и, похоже, это работает...
332 просмотров
schedule 09.12.2023

Ссылка «это» в динамическом обработчике событий
В моем классе myClass я использую Reflection.Emit для динамического написания обработчика событий для одного из членов класса myClass. Я сделал это успешно. Теперь я хочу изменить обработчик событий, чтобы он вызывал один из методов экземпляра в...
418 просмотров

Средство установки свойств MSIL — доступ к полю значения
У меня есть следующий сеттер-метод, но объект, который я поместил в value , не передается вызываемому методу: .method public hidebysig specialname instance void set_SeatingCapacity(int32 'value') cil managed { .custom instance void...
356 просмотров
cil
schedule 01.08.2023

Какие процессоры могут работать с CIL
Какие процессоры могут работать с Common Intermediate Language (CIL), ранее известным как Microsoft Intermediate Language ( МСИЛ)? Очевидно, что любая машина, на которой может работать Microsoft Windows с .net, соответствует требованиям, а также...
918 просмотров
cil
schedule 08.01.2023

Использование Reflection.Emit для соответствия существующему конструктору
Во-первых, вот код C# и дизассемблированный IL: public class Program<T> { private List<T> _items; public Program(T x, [Microsoft.Scripting.ParamDictionary] Microsoft.Scripting.IAttributesCollection col) { _items =...
644 просмотров
schedule 31.12.2022

Где я могу найти информацию о методах Get, Set и Address для многомерных экземпляров System.Array в .NET?
System.Array служит базовым классом для всех массивов в Общеязыковая среда выполнения (CLR). Согласно этой статье : Для каждого конкретного типа массива среда выполнения добавляет три специальных метода: Get / Set / Address . и...
599 просмотров
schedule 09.04.2023

Как записать в файл код MSIL
У меня есть веб-страница aspx, которая использует мою сборку (которая выполняет пользовательскую аутентификацию). Я хотел бы изменить код MSIL (только с помощью инструментов ILDASM/ILASM) моей сборки, чтобы что-то регистрировать в файле. Я...
552 просмотров
schedule 28.01.2023

Как распространять приложения C# на компьютеры с неизвестной версией .Net?
Я написал небольшое приложение, которое мне нужно распространить на более чем 700 компьютеров, проблема в том, что компьютеры могут работать под управлением любой версии Windows (хотя, скорее всего, XP или лучше) с любой версией .Net framework,...
1034 просмотров
schedule 08.02.2023

Какова потеря производительности для большого .maxstack?
Я работаю над написанием компилятора, и одна из особенностей этого компилятора заключается в том, что он автоматически генерирует методы GetHashCode(), Equals(object) и Equals({this value type}) для типов значений. Прямо сейчас реализация...
77 просмотров

Есть ли в MSIL инструкции ROL и ROR?
Я написал тип Int128, и он отлично работает. Я думал, что смогу улучшить его производительность с помощью простой идеи: улучшить операции переключения, которые немного неуклюжи. Поскольку они активно используются при умножении и делении, их...
2406 просмотров
schedule 11.06.2023

Как реализованы явные реализации интерфейса в IL?
Я рассматривал явные реализации интерфейса в IL. Метод Method в следующем классе (интерфейс IA имеет один Method() на нем): public class B : IA object IA.Method() { /* code */ } } компилируется в следующую сигнатуру...
213 просмотров
schedule 19.02.2022

FSharp.Core не оптимизирован?
Недавно я проверил производительность приложения F # и, копаясь в CIL, обнаружил, что FSharp.Core (для .NET v4.0) содержит несколько инструкций nop, множество неиспользуемых переменных и переменных, которые только записываются/читаются один раз с...
333 просмотров
schedule 21.01.2024

В чем разница между ldsfld и ldstr в IL?
Я прочитал статью о String.Empty vs "" и сам тестирую. Различия между ними приведены ниже. String.Empty L_0001: ldsfld string [mscorlib]System.String::Empty "" L_0001: ldstr "" После того, как я поговорил с друзьями, они...
4565 просмотров
schedule 21.09.2022

Есть ли способ использовать объекты и функции IronPython (скомпилированные в сборку) из кода C#?
В документации IronPython.net говорится, что MSIL в сборке не совместим с CLS, но есть ли обходной путь?
294 просмотров

Утечки памяти MSIL
Мы используем пользовательский класс RuntimeDataBuilder , который динамически создает тип .NET в памяти с помощью Reflection.Emit для создания простых методов получения/установки свойств для информации, которую мы получаем от универсального WCF...
263 просмотров
schedule 03.06.2022

Есть ли примеры компиляции кода CIL из проекта Visual Studio?
Я понимаю, что его спросили и ответили, что Visual Studio не поддерживает проекты CIL/MSIL. В проекте MSBuildContrib есть задача ILASM, позволяющая компилировать файлы IL во время сборки. Googled не нашел примеров того, как использовать эту...
2885 просмотров
schedule 04.07.2022

Поведение делегата CIL с конфликтующей статичностью целевого метода
Этот вопрос потребует небольшого введения. Я работаю над проектом безопасности, который будет анализировать сборки CIL и отклонять те, которые делают определенные определенные «плохие» вещи, а также позволять хост-приложению предоставлять «ворота»...
354 просмотров
schedule 08.05.2023