using FAULT address of EXE sans .pdb in EXE with .pdb 
Author Message
 using FAULT address of EXE sans .pdb in EXE with .pdb

Hi,

An EXE, say Ver. 1.0, compiled without A and B crashed. I have the Dr.
Watson log (i.e FAULT address) and the "controlled" source code. If I
re-compile Ver. 1.0 with option A and B and debug using VC++ - how
reliable is the fault location returned by VC++?
A - Project -> Settings -> C/C++ Tab -> Debug Info: Program Database
B - Project -> Settings -> Link -> Generate Debug Info - TRUE

I had test this with some one other test app. - it was okay - pointing
to same location. Can I be sure this will work always?

Thanks,

Lawrence



Fri, 25 Jun 2004 13:36:36 GMT  
 using FAULT address of EXE sans .pdb in EXE with .pdb
It is reliable, but not reliable.

Given identical input it will produce identical code (although some header

information will be different). You can check this by disassembling.

However, many things can throw things off:

Different service pack for VC++
Different header file or third party library
Installing the Platform SDK
Enabling debug information (unless you're really careful)
Other things I'm sure

If debug information was previously turned off and you turn it on then the

location of code bytes will change, because this turns off the linker
optimizer.
Thus you have to reenable the linker optimizer with /opt:ref in the linker
options.

I'm not sure what you mean by "with option A and B". If you are changing
some
of the code generation settings or preprocessor defines then all bets are,
of course,
off.

In the future, of course, be sure to archive the .pdb file, along with the
.exe and
the source. This is much simpler and safer - although still frequently not
done.

Quote:

> Hi,

> An EXE, say Ver. 1.0, compiled without A and B crashed. I have the Dr.
> Watson log (i.e FAULT address) and the "controlled" source code. If I
> re-compile Ver. 1.0 with option A and B and debug using VC++ - how
> reliable is the fault location returned by VC++?
> A - Project -> Settings -> C/C++ Tab -> Debug Info: Program Database
> B - Project -> Settings -> Link -> Generate Debug Info - TRUE

> I had test this with some one other test app. - it was okay - pointing
> to same location. Can I be sure this will work always?

> Thanks,

> Lawrence



Fri, 25 Jun 2004 14:29:52 GMT  
 
 [ 2 post ] 

 Relevant Pages 

1. Performance of a release version of .exe with .pdb regarding -

2. Stuffing PDB info. into the EXE

3. release exe's get bigger when specifying pdb symbols

4. Q: EXE and PDB relationships

5. PDB API / COFF and PDB file formats

6. Own crash handler - Access to address Space - PDB file

7. Own crash handler - Access to address Space - PDB file

8. a.exe + b.exe = c.exe

9. redistributing cl.exe, link.exe, nmake.exe, etc.

10. cl.exe, link.exe, mscvrt.exe Madness...

11. How to call B.exe from A.exe and then stop A.exe

12. debugging using pdb files

 

 
Powered by phpBB® Forum Software