Re: Locating procedures within an EXE

From: Martin Harvey (Demon Account) (martin_at__nospam_pergolesi.demon.co.uk)
Date: 12/22/03


Date: Mon, 22 Dec 2003 01:41:49 +0000

On Sun, 21 Dec 2003 01:29:28 -0800, Jamie
<jamie_5_not_valid_after_5@charter.net> wrote:

>this is real native code generation here.
> we are not talking about VB or any other half wide language.
> there is no procedure/function name table in an EXE along with
>a list of entry points.
> you may find this in a DLL how ever.
>and i am not sure if the Export functions work in a EXE file..
> in any case you should not waste any more of your time trying to
>break down a EXE in that faction.
> simply putting it, EXE from Delphi is mostly pure CPU code., the only
>way you could even get some info would be to build your self a debugger
>that can scan the EXE file and generate CPU code looking for CALL
>statements.. i really don't think your looking to do that.
>

Further to this - I actually suspect that Delphi executables contain a
lot more symbol information in them than (for example) a C or C++
executable.

At the very least, you have all the RTTI information.

If the executable was build with Debug information (either Delphi
debug info, of TD32 debug info), then you should have huge amounts of
info about the type and size of everything.

The catch is, working out what the format of the information is, and
being able to read it.

If it wasn't built with debug info, then you're pretty much stuck.

MH.



Relevant Pages

  • Re: Debug info
    ... > I have a relatively large application which comprises of one EXE (quite ... > The vcl suite of packages however, cannot be re-built with debug info as we ... > than the BPL as the currently selected package in delphi and relying on the ...
    (borland.public.delphi.ide)
  • Re: Update #1 - Initialization Failure on Running Apps...
    ... I have exactly the same problem after actually compiling the application. ... so when using the "old" exe and debug info things are ... then repair again and I'm hoping that it'll download a fresh update. ...
    (borland.public.delphi.non-technical)
  • Re: Delphi strategy against Lazarus
    ... Delphi doesn't include a 'strip' program. ... Delphi without debug info to get a smaller executable. ... It doesn't change the EXE size and there is ...
    (borland.public.delphi.non-technical)
  • Re: Small executables
    ... > still surprises me how big executables, generated by Delphi, become. ... if you really want a self contained windows GUI app and you want to ... best way to write GUI applications for Win32 and i forgive the .exe ...
    (comp.lang.pascal.delphi.misc)
  • Re: Max forms
    ... delphi saves forms at the end of the exe file. ... to split the monolithic EXE into several executables, e.g. a core EXE and a ... Build your app with run-time packages as a test. ...
    (borland.public.delphi.language.objectpascal)