我有一些使用单文件选项()构建的,我需要在它们上使用反汇编程序,但是没有一个反汇编工具(例如dn间谍、il间谍、ildasm等等)。工作,因为这些实际上是嵌入.NET程序集的本机二进制文件,如Microsoft中所解释的那样。
例如,尝试对这些二进制文件输出error: 'example.exe' has no valid CLR header and cannot be disassembled。
如何从这些单个文件实例中提取.NET dll,以便我可以对它们进行反汇编?或者,还有其他方法来解压缩这些.NET单个文件实例吗?
使用Visual 2015中的Roslyn,我可以将对象实例转换为源代码吗?我可以创建一个像".ToSourceCode()“这样的扩展方法,如下所示?
class Foo { }
class Program
{
static string classSourceCode = "class Foo { }";
static void Main()
{
var instance = new Foo();
var instanceSourceCode = instance.GetType().ToSourceCode(
我对MSIL的工作非常好奇。据我所知,在编译时,CLR会将其代码转换为MSIL,以便提供一些优化,然后由JIT将其转换为机器码。
例如,如果我们有:
using (TextWriter w = File.CreateText("log.txt"))
{
w.WriteLine("This is line one");
}
它将在MSIL中转换为以下代码:
TextWriter w = File.CreateText("log.txt");
try
{
w.WriteLine("Thi
我用解压缩了一个代码库,代码是C#编写的。当我构建解决方案时,会出现以下错误消息:
'.....IEditorVirtualButtonBehaviour.get_gameObject()' explicit method implementation cannot implement '.....IEditorVirtualButtonBehaviour.gameObject.get' because it is an accessor
Script.cs
GameObject IEditorVirtualButtonBehaviour.get_gameObj