Import Binary Module
Enterprise Architect enables you to reverse-engineer certain types of binary modules.
Code > Source Code > Import Code > Binary File
Right-click on Package | Code Engineering | Import Binary Module
Currently the permitted types are:
- Java Archive (.jar)
- .NET PE file (.exe, .dll) - Native Windows DLL and EXE files are not supported, only PE files containing .NET assembly data
- Intermediate Language file (.il)
Enterprise Architect creates the necessary Packages and diagrams during the import process; selecting the 'Do not import private members' checkbox excludes private members from libraries from being imported into the model.
When importing .NET files, you can import via reflection or via disassembly, or let the system select the best method - this might result in both types being used.
The reflection-based importer relies on a .NET program, and requires the .NET runtime environment to be installed.
The disassembler-based importer relies on a native Windows program called Ildasm.exe, which is a tool provided with the MS .NET SDK; the SDK can be downloaded from the Microsoft website.
A choice of import methods is available because some files are not compatible with reflection (such as mscorlib.dll) and can only be opened using the disassembler; however, the reflection-based importer is generally much faster.
You can also configure:
- Whether to Synchronize or Overwrite existing Classes when found; if a model Class is found matching the one in the file:
- Synchronize updates the model Class to include the details from the one in the file, which preserves information not represented in the
file, such as the location of Classes in diagrams
- Overwrite deletes the model Class and generates a new one from the file, which deletes and does not replace the additional information
- Whether to create a diagram for each Package
- What is shown on diagrams created by the import