The Windows SDk comes with Windows App Certification Kit (WACK) used for testing your app locally. This tool runs tests similar to the Windows Store certification tests.

The app is essential for verifying your app before the store upload. Most of the time, your app will pass all the tests. The problem arises when one of the test fails.

For me, the app was failing in the Crashes and hangs test. I tested the app manually and it was not crashing at all. So what was happening when I run the WACK tool?

The tool provides a crash dump file. Initially, I had no idea how do I use the dump file. After some web searching, I found an article that gave me some direction. Debugging a Windows 8.1 Store App Crash Dump.

Visual Studio 2013 and 2015 both support opening the dump file. When you open the dump file, it will show a error code and the dlls part of the crashing process.

By default the crash dump file will not contain any heap information. So you will not be able to debug from that dump file.

To enable the heap dumps, run the following command.

You can download the procdump tool via https://technet.microsoft.com/en-us/sysinternals/dd996900.aspx

Now run the WACK tool again. The procdump tool will also create a crash dump file that will contain lot more information about the crash.

Open this dump file (open the dump from the procdump folder not from the WACK tool) in Visual Studio. On the top right, there will be a debug link. Clicking the link will launch a debug session and raise the an exception.

All the information about the exception should be available in the watch window.

The call stack should give a location in source code where the error occurred. This should be sufficient to fix the error using regular source code.

I fixed two such error using the dumps. This was impossible to fix when debugging as the issue was related to timing. The particular scenario was not raised in debug mode which caused further complications.

Once you have procdump tool enabled, it should catch all such exceptions on any app.

If you would like to turn of the crash dumps, Delete the value from Debugger under 

HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AeDebug

and HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows NT\CurrentVersion\AeDebug

Hope this post helps you in figuring out the failures in your app or the error found by the WACK tool.


via WordPress for Windows app.

Advertisements

Share your thoughts

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s