Microsoft DebugDiag - Quick Guide for ProjectWise crash issues

 Product(s):ProjectWise Explorer Client
 Area: Crash / Exception
 Original Author:Sangameshwar Pendalwar


In many circumstances, ProjectWise issues can be caused by other applications or Windows components that interfere with ProjectWise’s optimal functioning. In some cases, ProjectWise exception logs and minidump files cannot be generated or are not sufficient for understanding the root cause of the issue. In these cases, Windows debugging tools are required for a thorough investigation.

Steps to debug in case of a crash

01. Set a user environment variable named – PW_TRAP for PW 
Control Panel->System->Advanced->Environment Variables->User variables->
Keep Value tab none as indicated below-

02. The user will need to install DebugDiag on the machine where the issue can be reproduced. 
Download and install (with default options) the latest 32-bit or 64-bit DebugDiag (depending on your Operating System) from the Microsoft site. 
Download Debug Diagnostic Tool v2 Update 3.2 from Official Microsoft Download Center 
Once you click the above link, you will be redirected to the DebugDiag download page. 
Download and install the DebugDiag tool.

03. Start DebugDiag: Start->Recently added->DebugDiag 2 Collection 

See screenshot below- 

Please note that ProjectWise Explorer needs to be running so that the executable process can be selected in the next step. 

04. Select Rule Type->Crash->Next 

05. Select Target Type->A specific process->Next

06. Select Target"->Selected Process-> pwc.exe -> Next

[NOTE: The pwc.exe will not appear in the task list if it is not already running. As for startup crashes, the “pwc.exe” can be typed into the “Selected Process” field.]

For PWC.exe as below-

07. Advanced Configuration (Optional)->Action type for unconfigured first chance exceptions->Log Stack Trace->Action limit->200

NOTE: You can skip the option for “breakpoints” and “page heap” for now 

08. In the Advanced Configuration (Optional)->click Next
09. On the Select Dump Location and Rule Name (Optional) page

Provide a “Rule Name” as shown and note the location where dump files will be written.   
Keep the default path or browse to a new location. ->Next 

The default location for dumps is as below-

C:\Program Files\DebugDiag\Logs\Crash rule for all instances of pwc.exe

10. Be sure to check on “Activate the rule now” then Click Finish.  

The following dialog will be presented. Click YES to continue.  
The rule is now created.

11. Reproduce the issue 
12. Navigate in Windows Explorer to the location defaulted or specified in step 9 above.  

On the folder name, of the rule you specified in step 9 ("Crash rule for all instances of pwc.exe"),
Right-click send to compressed folder and upload to Bentley via FTP or ShareFile.

When you have finished collecting dumps be sure to remove the Crash Rule using these steps: 

  1. Start DebugDiag: Start->All Programs->Debug Diagnostics Tool 2->DebugDiag 2
  2. Select "Crash rule for all instances of pwc.exe"
  3. "Remove Rule"
  4. File-> Exit
  5. Unset the user environment variable named PW_TRAP

NOTE: It is important to remove the rule. Otherwise, DebugDiag will keep on logging ProjectWise crashes or hangs, and log files can fill up your disk space. Also, the same can be done for any other processes that need a deeper look to investigate the crash.