PRB: Symbol Mismatch Causes Problems When Remotely Debugging

ID: Q123810


The information in this article applies to:


SYMPTOMS

When you use the remote debugging feature of the integrated debugger to debug an application on another computer, problems may occur if the debugging symbols on the remote machine do not match the symbols on the local machine.

The problems include not being able to watch variables, set breakpoints, or step through code. There may also be more subtle problems, such as incorrect values or source line numbering.

Problems most often occur with user-created .EXE and .DLL files, but they can also occur with system files. For example, when you remotely debug an application running on a computer that's running Windows NT version 3.1 from a computer running Windows NT version 3.5, the system debugging symbols are different, so things that rely on system debugging symbols (such as the callstack and OLE RPC debugging) may not function correctly.

This can also occur when debugging Win32-based applications on a computer running Win32s from a computer running Windows NT.


RESOLUTION

If this problem is occurring with non-system files, make sure both the remote and host computers contain updated copies of the .EXE, .DLL, and .PDB files.

By default, the program database (.PDB) files contain the debugging information for the .EXE or .DLL file. If this problem persists, you may want to link with /PDB:none to place the debugging information into the .EXE or .DLL file. This will reduce the number of files you need to maintain.


REFERENCES

For more information on remote debugging, please see "Debugging Remote Applications" section of the "Using the Debugger" chapter in the Visual C++ Books Online "Visual C++ User's Guide."

Additional query words:


Keywords          : kbDebug kbide 
Version           : 2.0 2.1 4.0 5.0
Platform          : NT WINDOWS 
Issue type        : kbprb 

Last Reviewed: July 22, 1999