delphi .dcu file format

Need to know delphi .dcu file format
Who is Participating?
rwilson032697Connect With a Mentor Commented:

DCU files are similar to OBJ files in that they are the machine code version of the source code for a unit. DCU files are then run through the linker to produce the final .EXE.

Borland/Inprise have never released the format of TPU/DCU files, mainly to preserve their ability to change it when they need to. With a lot of effort you could reverse engineer it but I can't think of an example where it would be worth it (and you still have the problem with the decompiled code I mention below).

OBJ files are a standard object file format and are described in the Microsoft literature.

Basically if you need to decompile a DCU/OBJ it's for one of two reasons. (1) You are trying to crack some software or (2) You have lost the source. If (1) thats not ethical :-), if (2) bad luck - even if you could decompile it the resulting code would not look anything like the original code (especially if optimization as enabled) and would be a worse result than rewriting the code.




The dcu file format has not been released by Inprise (BORLAND) as it (they say) is always changing, I think that they can't release the format as then shareware components etc would not really work as you could decompile the .dcu back to .pas format...this is just on instance of the file format not been released...


i also don't think, there is no description avaiable, Borland haven't even released the former
TPU-Format in Turbo PAscal
Free Tool: Path Explorer

An intuitive utility to help find the CSS path to UI elements on a webpage. These paths are used frequently in a variety of front-end development and QA automation tasks.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

the delphi compiler can generate .obj files instead of .dcu file (go to project options | linker | output object files). i think the .obj file format is described rather good.
DCU is a simple Delphi unit that has been compiled and I guess it's a resource file.. Noe exactly sure, but there is nothing wrong with a simplew guess, is it???

viktor, dcu's are not resource files. i tried to load them with the resource editor of visual studio, and it didn't recognize the files as resource binaries. in my opinion, dcu's are similar to obj's and just have a different format.
yeah. maybe your are right....

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.