IL Editor
-
Friday, March 09, 2007 9:47 PM
Hi,
Am searching for MSIL Editor with Intellisense support, anyone have an idea?
Thanks,
Best Regards,
MAS
All Replies
-
Tuesday, April 17, 2007 12:30 PM
At present, we don't find such tools as MSIL Editor with Intellisense support.
Even though these tools (ILDasm, Reflector, .Net ILEditor and LSW DotNet-Lab) only can disassemble or decompile .NET components, not edit MSIL, moreover not support Intellisense.
As for editing MSIL, we can dump assembly file to IL file by the ILDASM utility and recompile it to assembly file by the ILASM utility,
The two utilities are included in the .NET SDK.
- C:\Program Files\Microsoft Visual Studio 8\VC>ildasm <enter>.
- Open your assembly e.g. my.dll
- After opening the file, select File->Dump. Ensure all checkboxes are selected and then click OK.
- You will be prompted to save it as an IL file. I recommend creating a new directory to save as my.IL
- Open my.IL by your favourite editing tool (I use Visual Studio .NET 2005/2003).
- Edit your my.IL and then save it.
- C:\Program Files\Microsoft Visual Studio 8\VC>ilasm /DLL X:\Folder\my.IL <ente
Relevant thread: http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=1441225&SiteID=1
-
Monday, January 04, 2010 3:57 PM
ildasm and ilasm will do it for you. You don't really need an editor for the kind of work you would need change the IL for.
e.g., I had to patch some parts of an old DLL (I did have a compatible version of the source code to work with) and what I did was that I used ildasm as Martin Xie explains and dumped the IL.
I did the same with a newer version of the DLL and copied over method IL-implementations from the newer file to the older that I had to change.
You don't really need a fancy editor for something like this, and you can easily use any .NET language compiler to create IL templates and cut & paste it all together in notepad.
I verified the results with the .NET Reflector (checked that things looked the same in both DLLs) and then published the thing without any problems.

