Begin with the Delphi-specific environment
Identify executable architecture and likely compiler generation, then inventory imported APIs, runtime BPLs, third-party DLLs, resources and embedded form data. Delphi applications may be statically linked and expose few external imports while still containing extensive framework and component behavior.
- Extract version information, icons, strings, forms/resources and configuration names.
- Map BDE, Firebird/InterBase, ODBC or custom database access.
- Observe file, registry, network and device interaction under controlled workflows.
- Correlate user actions with modules, windows, errors and data changes.
Realistic outcomes
| Objective | Useful deliverable |
|---|---|
| Reproduce deployment | Package/DLL, configuration and data dependency map |
| Replace one function | Input/output and state behavior specification |
| Recover database access | Connection model, schema clues and query/transaction observations |
| Investigate failure | Startup/runtime trace tied to the failing boundary |
Related paths
If the immediate symptom is launch failure, use the Delphi startup guide. BDE coupling belongs in Delphi BDE migration. Broader methods are described in legacy executable analysis and the reverse-engineering pillar.
Evidence to provide
Executable and all adjacent files, installer, database/configuration, access to a known workflow, screenshots, errors and any surviving DCUs/BPLs/source fragments.