RAPID PUBLISHING ARTICLES PROVIDE INFORMATION DIRECTLY FROM WITHIN THE MICROSOFT SUPPORT ORGANIZATION. THE INFORMATION CONTAINED HEREIN IS CREATED IN RESPONSE TO EMERGING OR UNIQUE TOPICS, OR IS INTENDED SUPPLEMENT OTHER KNOWLEDGE BASE INFORMATION.
You have created an application with trace messages (for instance, using
OutputDebugString
(http://msdn2.microsoft.com/en-us/library/aa363362.aspx)
), but need to test it on a machine where Visual Studio is not installed, and wish to see the debug strings somehow.
The application runs, but there is no output window that displays the debug strings.
OutputDebugString and
DbgPrint
(http://msdn2.microsoft.com/en-us/library/ms792790.aspx)
(and other macros that ultimately wrap these API functions) direct their output to a debugger. If one is not installed, the output is not sent anywhere.
Install a debugger. Microsoft provides the powerful WinDbg debugger at no charge, and it can be used to view the debug string outputs. There are also third-party utilities which can be purchased to provide this output (Use Live Search to locate others).
For the WinDbg solution, follow these steps:
1. Install
Debugging Tools for Windows
(http://www.microsoft.com/whdc/DevTools/Debugging/default.mspx)
on the machine where you wish to test.
2. This will install WinDbg in the folder where debugging tools are installed.
3. Go to folder debugging tools for windows and open WinDbg.
4. Do one of the following:
- Launch the executable externally, then in WinDbg go to File->Attach to Process.
- Launch the executable from within WinDbg, using File->Open Executable.
5. Type g command in WinDbg to resume execution.
6. Now you can see trace statements in WinDbg’s screen.
MICROSOFT AND/OR ITS SUPPLIERS MAKE NO REPRESENTATIONS OR WARRANTIES ABOUT THE SUITABILITY, RELIABILITY OR ACCURACY OF THE INFORMATION CONTAINED IN THE DOCUMENTS AND RELATED GRAPHICS PUBLISHED ON THIS WEBSITE (THE “MATERIALSâ€) FOR ANY PURPOSE. THE MATERIALS MAY INCLUDE TECHNICAL INACCURACIES OR TYPOGRAPHICAL ERRORS AND MAY BE REVISED AT ANY TIME WITHOUT NOTICE.
TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, MICROSOFT AND/OR ITS SUPPLIERS DISCLAIM AND EXCLUDE ALL REPRESENTATIONS, WARRANTIES, AND CONDITIONS WHETHER EXPRESS, IMPLIED OR STATUTORY, INCLUDING BUT NOT LIMITED TO REPRESENTATIONS, WARRANTIES, OR CONDITIONS OF TITLE, NON INFRINGEMENT, SATISFACTORY CONDITION OR QUALITY, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE, WITH RESPECT TO THE MATERIALS.