cil 相关问题

Common Intermediate Language是.NET Framework和Mono使用的面向对象的汇编语言。 .NET语言编译为CIL,CIL被组装成具有字节码样式格式的目标代码。

如何编写更高效的代码?或者,为什么反编译器生成的代码看起来效率不如我编写的代码? [已关闭]

在编写我的库时,我使用了一系列三元表达式: 公共 INumber Level1() { INumber 编号 = Level2(); 下一个(); 返回 txt==“-”? 新的减法(数字,列夫...

回答 2 投票 0

为什么我的反编译器生成的 C# 与我编写的不同?

在编写我的库时,我使用了一系列三元表达式: 然而,当我反编译代码时,我发现它变成了一个糟糕的实现(在我看来): 当我测试我的代码时,测试通过了...

回答 2 投票 0

装箱系统.RuntimeArgumentHandle

我正在开发 MSIL 代码的解释器。当谈到装箱时,有一些已知的限制,例如,不可能对类似于 byref 的结构进行装箱。 关于 System.RuntimeArgumentHan...

回答 1 投票 0

IL 操作码在 .NET 运行时源代码中的实现位置和方式

我正在研究 call 与 callvirt 操作码以及一路上遇到的所有问题。 您可以在网上阅读说明,但是当您遇到这种情况时 callvirt 指令调用后期绑定方法...

回答 1 投票 0

.NET 反射发出 - 我在 MSIL 中编写此方法时做错了什么?

我正在尝试使用 C# 中的反射发射动态创建一个委托,该委托返回对象上定义的所有属性值的列表。 我从这里给出的例子开始: http...

回答 1 投票 0

如何处理安装 SELinux 策略时的错误

现在我正在尝试安装我制定的 SELinux 策略。 但我遇到了如下错误: 无法解析 /var/lib/selinux/targeted/tmp/modules/400/mypolicy/cil:303 处的 filecon 语句 semodule:失败!

回答 2 投票 0

c# 中的编译器优化质量很差

我不知道为什么,但我看了标准 C# 编译器(VS2015)生成的 IL,它在发布模式下明显没有优化。 我测试的代码非常简单: 静态无效主(s...

回答 1 投票 0

通过 C# EMIT IL 创建/分配对象

IL 新手...尝试创建 IL: 目标创建实例(源src) { Dest d = new Dest(); d.测试=src.测试; 返回d; } 这是我到目前为止所拥有的: 构造函数信息 = typeof(Dest).

回答 2 投票 0

如何解析IL字节中的方法调用?

我知道如何使用 System.Reflection API,但不知道如何解析 IL(中间语言),尽管我确实知道如何解析 x86 操作码的价值。 现在我想找到

回答 1 投票 0

使用 Harmony 修补 Unity 游戏异步方法的真实内容

使用 dotPeek,我能够看到一个我想要更改其一部分的方法,特别是将 CreateLobbyAsync 中的 4 更改为另一个整数。 公共异步无效StartHost() { if (!(bool) (UnityEng...

回答 1 投票 0

尝试使用 il.Emit 进行 Memory.Slice 时出现未定义的行为

我正在尝试编写一个动态方法,该方法采用 ReadOnlyMemory 并处理它。但当我试图分割记忆时,我经历了非常奇怪的行为。好像争论...

回答 1 投票 0

在.NET IL中是否可以将接口的属性和事件直接实现为方法?

在我的反射 C# 代码中,我迭代接口上的方法并发出一个类,a) 被声明为实现接口 b) 实现了 GetMethods() 返回的所有方法。 ...

回答 2 投票 0

如何使用 ILGenerator 为 ref 局部变量发出 IL?

以下 C# 代码片段: 整数x = 10; 引用 int y = 引用 x; 被编译成这个IL: .locals 初始化 ( [0] int32x, [1] int32&y ) ldc.i4.s 10 stloc.0 ldloca.s 0 stloc.1 雷特 我如何创建一个

回答 1 投票 0

当泛型类型限制为类时,CIL 显示“box”操作

我有以下方法: public static bool EquivalentTo(这个T?当前,T?比较) 其中 T :类 { if(当前为空&&比较为空) // 两者都为空...

回答 1 投票 0

C#编译器是否能够优化像someEnumerable.Count()这样的语句< 2?

假设我有这样的代码: if (someEnumerable.Count() < 2) { // Do something } Would this result in someEnumerable being iterated over fully, or would evaluation complete if Count() reaches a

回答 1 投票 0

ILWeaving 帮助 - [ValidSystemPath] 属性

问题 我正在使用 Mono.Cecil 来 IL Weave 字符串属性获取器,这些获取器具有我的自定义 [ValidSystemPath] 属性。该属性的目的是确保该属性只返回 va...

回答 1 投票 0

How to compile CIL code (intermediate code used on .NET) using ilasm for Linux and OSX?

我使用 runtime.win-x64.Microsoft.NETCore.ILAsm nuget 来获取 ilasm.exe 来编译我的 CIL 代码。它为 windows .exe PE 正确编译了所有内容,但显然它没有为 Li 编译...

回答 2 投票 0

MSIL检查

我有一些字节格式的 MSIL(反射的 GetMethodBody() 的结果),我想分析一下。我想在 MSIL 中找到使用 new 运算符创建的所有类。关于如何...的任何想法

回答 4 投票 0

微软如何从DLL的元数据中隐藏C#内部类?

这一切都始于我想分析CVE-2017-8759周围的代码。我知道这个CVE的修复是在System.Runtime.Remoting.dll里面的一个名为WsdlParser.cs的类中,它是.Net ...的一部分。

回答 1 投票 1

如何将MSIL或CIL编写并编译成可执行文件?

我目前正在学习一点MSILCIL代码,我想编译一个用MSIL编写的基本的Hello World。然而我遇到了一些麻烦。一开始我看了这篇文章。然后我把代码放在 ...

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.