I am using the ILDASM utility to disassembly assemblies (our own).
(We use this to compare different build outputs against each other by stripping the unique content out of the disassenmbled files before running a hash calculation to compare the content).
Some of the assemblies are up to 5,900KB in size and this results in a System out of memory exception - this while the ILDASM tool is processing the assembly.
Is there a limit to the assembly size you can disassemble?
Update: I don't use the tool as is, I start it as a process in code (as part of a custom tool):
Where assemblyFilePath is the path to the >5MB assembly:
var startInfo = new ProcessStartInfo(ILDasmFileLocation, string.Format("/all /text \"{0}\"", assemblyFilePath))
{
WindowStyle = ProcessWindowStyle.Hidden,
CreateNoWindow = true,
UseShellExecute = false,
RedirectStandardOutput = true
};
using (var process = Process.Start(startInfo))
{
string output = process.StandardOutput.ReadToEnd();
// Use the disassembled output
}