ILSpy-For-MacOSX
ILSpy-For-MacOSX copied to clipboard
ILSpy for Mac OS X ,Linux and any mono supported platform
Overview:
Make ILSpy a command line tools for MacOsx ,Linux and any mono supported platform, because ILSpy does not work in MacOsx.
It's import from https://github.com/icsharpcode/ILSpy So thanks to ILSpy Contributors: Daniel Grunwald David Srbecky Ed Harvey Siegfried Pammer Artur Zgodzinski Eusebiu Marcu Pent Ploompuu
They did a great work.
New Features for ILSpy-ForMacOSX:
- add Couroutine decompiling feature for mono's dll, the original ILSPY always failed for mono's dll which mostly uses in Unity3D's game.
- works on command line;
- Decompile all dll in the input arguments and generate the project files and solution files just simply by one simple command line. I like that style instead of a GUI. It's better that reading the codes in the IDE than reading it in the ILSpy GUI, more features help you understand the decompiled codes.
Usage: ILSpyMac [options] directory/to/all/your/dll made it run at all platform support mono. by aerror 2015/11/27 options: -a Decompile yield. OFF if exists this option, default ON. -b Decompile anonymous methods/lambdas. OFF if exists this option, default ON. -c Decompile asyncwait. OFF if exists this option, default ON. -d Decompile automatic events. OFF if exists this option, default ON. -e Decompile expression trees. OFF if exists this option, default ON. -f Decompile automatic properties. OFF if exists this option, default ON. -g Decompile using statements if. OFF exists this option, default ON. -h Decompile foreach statements. OFF if exists this option, default ON. -i Decompile lock statements if. OFF exists this option, default ON. -j Decompile SwitchStatement On String. OFF if exists this option, default ON. -k Decompile Using Declarations. OFF if exists this option, default ON. -l References dll path which dll will be loaded but not decompile , they use as References. -n Solution Name -r Decompile query Expressions. OFF if exists this option, default ON. -s Decompile fully Qualify Ambiguous Type Names. OFF if exists this option, default ON. -t Output language type, accept il or csharp, default is csharp. -p Use variable names from debug symbols, if available. OFF if exists this option, default ON. -x Use C# 3.0 object/collection initializers. OFF if exists this option, default ON. -y Include XML documentation comments in the decompiled code. OFF if exists this option, default ON. -z Fold braces. ON if exists this option, default OFF -C class Name -D Ony specitfied files to do decompiling in the Directory , should be the last option, for examaple: ILSpyMac -n Example /directory/to/all/your/dll -D main.dll Example: ILSpyMac -n Example -l /directory/to/Rerences/dll /directory/to/all/your/dll
How to build:
Open the ILSpyMac.sln by MonoDevelop or Xamarin, then click the build button.
.NET 4.0 required.
Check your Mono.Framework at /Library/Frameworks, it should looks like:
ll /Library/Frameworks/Mono.framework/Versions/ total 8 drwxr-xr-x 13 root admin 442 11 28 22:36 3.10.0 drwxr-xr-x@ 12 root admin 408 9 29 05:51 4.0.4 lrwxr-xr-x 1 root admin 49 11 28 22:37 Current -> /Library/Frameworks/Mono.framework/Versions/4.0.4