#1 楼
最好的免费工具是ILSpy,但它可以在Windows上运行。这为您提供了有限的选项列表:创建Windows虚拟机(使用virtualbox或vmware player)并在其中运行它
在Mac上安装WINE,以允许您运行.exe文件。
获取用于Mac的Visual Studio并使用ikdasm
,如果您感觉很硬,请在反汇编程序中打开它;)
我自己是IT专家对于第一个解决方案。简要检查一下,然后试试吧!
评论
对于第3点,没有称为ildasm的工具。 VS for Mac随附的工具称为ikdasm或monodis
–PawełŁukasik
17年5月21日在5:44
提醒一下!我纠正了。
–克里斯·齐卡洛斯(Chris Tsiakalos)
17年5月21日在8:23
#2 楼
Visual Studio for Mac可以完成这项工作。只需单击File / Open
,然后选择所需的executable or library
。它将打开Assembly Browser
窗口。如果需要更详细的代码,请将
Visibility
更改为All members
,将语言更改为C#
。评论
但是这种方式不会给您代码。仅方法的签名。
–PawełŁukasik
19年2月13日在21:39
@PawełŁukasik是的,你可以做的,只是看我更新的帖子。
–甘达雷斯
19年2月14日在22:20
对。我的错。
–PawełŁukasik
19年2月14日在22:24
#3 楼
您可以使用Jetbrains的Rider。它有30天的免费试用期。打开Rider并打开或创建C#项目
向.exe文件添加依赖项(自然,这也适用于.exe文件。 dll)。
在项目的类中,导入包并键入要检查的类。
对类名称执行Command + click或Command + B触发Rider的反编译选项。如有必要请确认。
缺点是我们必须对要反编译的每个类重复步骤4。
评论
看来您太快了。点4不完整,缺少5。
–PawełŁukasik
18年3月13日在8:10
评论
您尝试过github.com/aerror2/ILSpy-For-MacOSX还是tirania.org/blog/archive/2011/Feb-04.html。我做到了,但是在我构建项目并使用Mono运行.exe之后,出现错误。我得到了:未处理的异常:System.NullReferenceException:对象引用未设置为对象的实例。如果将来没有更简便的解决方案,我将来可能会调试该项目以查找问题。 :)
它取决于原始可执行文件的复杂性,但是通常,调试器是解决问题的方法。