Tool to analyze the executable
===

is there a tool that analyzes the executable and detects:
    - the programming language used (compiler),
    - frameworks used (Qt, Gtk, .Net, WxWidgets etc),
    - other useful information (compression, etc.).

I know it is quite hard to tell the programming language sometimes (especially in C or Pascal exes), but it is possible to tell the language or compiler used? (Delphi generates exes differently, VB6 too for instance).

It may be possible eg. with dependency analysis of the dlls, headers etc.

Thanks.