[<<Previous Entry]
[^^Up^^]
[Next Entry>>]
[Menu]
[About The Guide]
Files produced during decompilation
Rescue5 reads and writes information from and to a number of
different files during decompilation.
1) Files containing recovered source code
MAIN.UDF
Created to contain the first user-defined non init or exit
procedure encountered.
LIB.UDF
Created to contain the procedures below the /s threshold not
included in a <procedure>.UDF file (see below).
<procedure name>.UDF
Each procedure over the /s threshold is written into a
separate source file. Procedures that are interdependent
through referencing common static variables or procedures are
grouped together in the same file.
Duplicate file names are resolved by having an ordinal number
inserted into the name.
ORPHAN.UDF
Unreferenced individual static procedures will be placed in a
file called ORPHAN.UDF. ORPHAN files are rare since the
procedures they contain are "dead" code.
MODULEnnn.UDF
A MODULE file is created for each group of interrelated
static procedures that call each other but are never called
from anywhere else. MODULE files are rare since the
procedures they contain are "dead" code.
[path\]<original PRG name>.SRC
Code that was compiled with the CA-Clipper /b switch is
recovered into file(s) with the same name as the original
.PRG file, but with a .SRC extension.
If the original .PRG was compiled in a specific directory,
Rescue5 will create an equivalent directory for the recovered
file, using the output directory as root. Drive names are
converted to directory names by the drive letter being
prefaced the word 'drive_'. Relative paths are resolved to
absolute.
For example, assume the .EXE contains the code from two .PRG
files of the same name but different paths:
clipper f:\lib\source\myprog.prg /b /n clipper
g:\lib\source\myprog.prg /b /n
If these are recovered with the command line:
rescue myapp.exe /omyapp
Rescue5 will create:
c:\rescue5\myapp\drive_f\lib\source\myprog.src
c:\rescue5\myapp\drive_g\lib\source\myprog.src
2) Configuration files
VARIABLE.UDT / <user defined file>
Variable base name definition files are read by Rescue5 on
the first pass and are used to create the <EXE name>.VAR
file for the .EXE being decompiled.
Variable base name files can be created or modified with a
text editor.
<.EXE name>.GRP
Rescue5 creates a grouping file for the .EXE being
decompiled during the first pass. The file can be modified
with a text editor, and is read by Rescue5 during subsequent
passes.
During subsequent passes Rescue5 uses the contents of the
<EXE name>.GRP file to determine which procedures to write
into which source files.
Note that Rescue5 ignores entries for groups that were
originally compiled with the CA-Clipper /b switch (these are
always placed in .SRC files with the same name as the
original .PRG).
<.EXE name>.VAR
During the first pass Rescue5 uses the definitions in the
VARIABLE.UDT file to generate names for local and static
variables, writing the suggested names into the <.EXE
name>.VAR file. The file can be modified with a text
editor, and is read by Rescue5 during subsequent passes.
During subsequent passes Rescue5 uses the contents of the
<EXE name>.VAR file to determine static and local variable
names, which are written into the recovered source.
A <.EXE name>.VAR file is not written if all the source code
in the application was compiled with the CA-Clipper /b
switch, since Rescue5 recovers local and static variable
names from the debugger information.
3) Other files
ERROR
If any errors occur during decompilation Rescue5 will write
them into a file called ERROR.
<.EXE name>.RMK
<.EXE name>.LNK
RMake and linker script files with which to rebuild the
application.
REPORT
The REPORT file lists some overall statistics about the
application, the states of Rescue5 settings and the contents
of each of the source modules recovered.
This page created by ng2html v1.05, the Norton guide to HTML conversion utility.
Written by Dave Pearson