none
Problem Running Application Verifier: Windows Embedded CE 6.0 RRS feed

  • Question

  • I'm trying to run the Application Verifier to track down a memory leak in one of our drivers.  If anyone knows what I am doing wrong that would be greatly appreciated.

    System Details

    • Windows Embedded CE 6.0 R3
    • QFEs up to October 2013 applied
    • ARM Processor
    • Host OS Windows XP SP3 and Windows 7

    I started by following the directions here: http://msdn.microsoft.com/en-us/library/ee505802%28v=winembedded.60%29.aspx

    Steps I followed:

    1. Select "SHIP" Build
    2. Enable KITL in OS Design Properties
    3. Disable Kernel Debugger in OS Design Properties
    4. Perform "Clean Sysgen" via "Build"->"Advanced Build Commands"->"Clean SysGen" menu
    5. Open Build Window
    6. set VERIFY_MODULES=MyDriver.dll
    7. set VERIFY_OPTIONS=EnableFanOut NoMapFiles IgnoreNullFree
    8. set VERIFY_SHIMS=shim_heap.dll shim_hleak.dll
    9. set IMGSHIMENABLE=1
    10. Copy Application Verifier Files to C:\WINCE600\OSDesigns\...\RelDir\SHIP\ *
    11. makeimg **
    12. Download OS To Target Device
    13. Execute "loadext shim_heap.dll" ***

    * I tried to use the recommended batch file Getappverif_check.bat but it complained that it could not find the .dll files.  I copied the files that it listed that it could not find manually to the Flat Release Dir and moved to step 11.  The files that I copied are: appverif.exe, shim_verifier.exe shim_heap.dll shim_hleak.dll shim_usergdi.dll htracker.dll symhlp.dll verifhlp.dll vlog.dll

    If I re-run Getappverif_check.bat after manually copying files to the Flat Release Dir and re-running makeimg it gives me a different error of "Error:  The system was unable to find the specified registry key or value"

    ** verify.txt  is not created in the Flat Release Directory as the MSDN documentation specifies.

    *** The following is the result of issuing the command:
    Windows CE>loadext shim_heap.dll
    Shell: Error unable to load shim_heap.dll : Error 126

    Observations:

    • verify.txt does not get generated by makeimg
    • .dll files for application verifier confirmed to exist in \Release on device when OS downloaded via KITL.
    • Driver to be analyzed listed in platform.bib
    • Behavior is the same under Windows 7 x64 and Windows XP SP3
    • Application Verifier will run if started manually when system boots, but I need to validate a driver loaded during init.

    Questions:

    1. Where can I find the format of verify.txt so that I can try to manually create the file?
    2. Any ideas as to why verify.txt is not being created?
    3. I am assuming that I do not need a DEBUG build or the Kernel Debugger enabled, is this assumption correct?

    Thank you,

    Brad

    Wednesday, January 15, 2014 7:57 PM