Visual C++ (native)
7 minute read

This document explains how your Microsoft Visual C++ application can be modified to provide full debug information on the BugSplat website when it crashes.

If you haven't already, please login to the BugSplat website. New users will need to create a free account here before proceeding.

Then Download and unzip the BugSplat software development kit for Microsoft Visual C++.

To get a feel for the BugSplat service before enabling your application, feel free to experiment with the myConsoleCrasher sample application. You can find the Visual Studio project file located in your download folder at ...\BugSplatNative\BugSplat\samples\myConsoleCrasher\myConsoleCrasher.vcxproj.

Run the sample application without the debugger attached to post a sample crash report to our public "Fred" database.

You may also want to browse the BugSplat Native API documentation.

Creating defect reports using your own application

Add BugSplat to your application as follows-

  1. Include BugSplat.h.
  2. Create an instance of MiniDmpSender following the example in myConsoleCrasher. The MiniDmpSender constructor requires three parameters: BugSplat database, application name and version. The BugSplat database is created and selected on the Databases page. Typically, you will create a new database for each major release of your product. You supply application name and version to match your product release. These same values must be used when uploading symbol files for your application.
  3. Link your application to BugSplat.lib.
  4. Add BsSndRpt.exe, BugSplat.dll, and BugSplatRC.dll to your applications installer.

You should modify your build settings so that symbol files are created for release builds, e.g.,

Integrating BugSplat with C++ Integrating BugSplat with C++

Note: To get fully detailed call stacks and variable names for each crash on the BugSplat website, every time you build a release version of your application for distribution or internal testing, you should upload all .exe, .dll, and .pdb files for your product at on the Symbols Page. Better yet, use the SendPdbs application as part of your build process to automate symbol upload to BugSplat.

Test your application by forcing a crash and verifying that the BugSplat dialog appears and that crashes are posted to your BugSplat account.

Finally, make sure to check that symbol names in the call stack are resolved correctly. If they aren’t, double-check that the correct version of symbol files and all executables for your application have been uploaded on the Symbols Page.