Menu

Following is a list of questions received around the general usage of Application Verifier. Click on the question to see the response:

What is Application Verifier?

How do I uninstall Application Verifier?

How do I start Application Verifier?

Where are the logs stored?

Which platforms are supported?

What should I do if I have problems while using the Application Verifier?

Does Application Verifier verify managed code?

Why doesn't Application Verifier work with shsmp.dll?

What is Application Verifier?

Application Verifier is a runtime verification tool used to find bugs in Microsoft Windows-applications. Since it is a runtime tool the application code needs to be exercised in order to be verified. Good test coverage is therefore essential.

The typical usage scenario of Application Verifier is to enable it for the applications of interest (see questions below for how to do that) and then run all the tests you have written for your application. You will get a notification for any bug found in the form of a debugger break or a verifier log entry.

How do I uninstall Application Verifier?

To uninstall the Application Verifier, access the control panel by clicking Start, select Add or Remove Programs, then Remove a program, click Application Verifier, and then click Remove.

How do I start Application Verifier?

After installing Application Verifier you can either start it by accessing it in your list of programs OR by typing Appverif.exe on a command line. To do this, go to a command prompt or the Run box of the Startup menu. Type appverif.exe and then press Enter. This will start Application Verifier.

The Appverifer.exe binary is installed in the system directory and is used to make the tool settings.

Where are the logs stored?

The logs are stored in %USERPROFILE%\AppVerifierLogs

Which platforms are supported?

Application Verifier can be used on the following Windows platforms:

  • Windows XP

  • Windows Server 2003

  • Windows Vista

Application Verifier supports x86, X64 and IA64 platforms.

Please note that Windows 2000 and WinPE are not supported.

What should I do if I have problems while using the Application Verifier?

First, make sure you are running the latest release.

Second, check to see if the issue is already known by the team (see the help files).

Third, send a request to microsoft.public.win32.programmer.tools newsgroup and the team will respond as best as they can.

Does Application Verifier verify managed code?

AppVerifier cares about the interfaces between the operating system and the application. As a result, unless your managed code is performing interop against native APIs that have to do with Heaps, Handles, Critical Section, etc. your test cases are not going to give you any interaction with the interfaces that are verified.

We recommend leveraging the Managed Debugging Assistants for verifying your managed code. Please read more about them on MSDN.

Why doesn't Application Verifier work with shsmp.dll

It is a known issue that Application Verifier will not validate any file with the name 'shsmp.dll'. This is because there is a problem while running smartheap that causes a crash. Our workaround is to block this DLL. We are working on a long term solution so that this can be verified. Please check back in future releases.