0 items - $0.00
Follow softwareverify on Twitter

 

C++ Performance Validator x64 / x86 Change History

Version 5.63, 20th July 2019
Version 5.63 includes the following functionality:

  • Addiition of option to query Symbol Path Truncation data from Tools menu.
  • Launching applications, injecting into applications, waiting for applications, working with services and abandoning applications all moved onto their own Launch menu.
  • Improvement to source code file location detection, removal of some redundant steps.
  • Support for SetThreadDescription and GetThreadDescription thread naming APIs introduced with Windows 10.
  • Bug fixes for using undocumented Windows internals to get data about threads.

Version 5.62, 11th July 2019
Version 5.62 includes the following functionality:

  • Launching from batch file now lets you monitor any application launched from the batch file, not just the first application. Launch counts greater than 1 are also supported.
  • Bug fix for monitoring applications launched from batch files.
  • Diagnostic warning when search path is too long - paths that are too long cause Microsoft's DbgHelp.dll to crash.
  • Bug fix, remove duplicate local symbol store directory from symbol path.
  • Performance improvement for reading symbols of exe/dlls in write protected directories.
  • Misc bug fixes.

Version 5.61, 19th June 2019
Version 5.61 includes the following functionality:

  • Diagnostic tab now has two subtabs. One for diagnostic data. The other to display the output of stdout/stderr if you've opted to collect this data.
  • Bug fix for C++ Parser.
  • Bug fix for ordinal handling.

Version 5.60, 4th June 2019
Version 5.60 includes the following functionality:

  • First run wizard will now take paths and symbol server settings from the selected Visual Studio's Debugging > Symbols section to populate Bug Validator's settings.
  • Thread names are now taken from both CreateThread(), _beginthreadex() and _beginthread(). All threads now have human readable names as well as thread ids.
  • Bug fix for Visual Studio discovery.
  • Bug fix for ordinal -> name conversion (affects MFC libraries if symbol handlers not enabled).

Version 5.59, 23rd May 2019
Version 5.59 includes the following functionality:

  • Launch dialog and launch wizard now support the provision of an optional input file and an optional output file (to simulate piping data in/out from a file on the command prompt).

Version 5.58, 5th May 2019
Version 5.58 includes the following functionality:

  • Mitigation for trying to access file on a not-present removable drive - if debug info points to a location on a removable drive that isn't present, OS file access times jump 250x - we've added code to detect this on critical paths and fail without trying to access the file. Prevent seemingly random unexpected slowdowns.
  • Minor bug fixes to do with Visual Studio 2017/2019 detection.

Version 5.57, 29th April 2019
Version 5.57 includes the following functionality:

  • Support for Visual Studio 2019.
  • Addition of informational dialogs on the Call Graph and Call Tree views to explain why no data might have been displayed.
  • Bug fixes for C++ Parser.

Version 5.56, 13th April 2019
Version 5.56 includes the following functionality:

  • Improvements to how a DLL is determined to be a Microsoft DLL. Additional checks.
  • Improvements to service callback example.
  • Updated help return codes documentation.

Version 5.55, 3rd April 2019
Version 5.55 includes the following functionality:

  • Bug fix for race condition in some cached data stores. Quite rare for you to see this bug (we've seen it once in 17 years).

Version 5.54, 30th March 2019
Version 5.54 includes the following functionality:

  • Performance improvements to various parts of instrumentation.
  • Bug fix for global hook detector crash with sysfer.dll (McAfee anti-virus) during shutdown when run with -hideUI option.

Version 5.53, 21st March 2019
Version 5.53 includes the following functionality:

  • Addition of dbgcore.dll to the list of known Microsoft debugging DLLs - stops incorrect warning about missing PDB file.
  • Settings for call tree threshold and call graph threshold.

Version 5.52, 9th March 2019
Version 5.52 includes the following functionality:

  • Modified settings behaviour to reduce dbgHelp.dll loadability testing.

Version 5.51, 4th March 2019
Version 5.51 includes the following functionality:

  • Changed installer to not require administrator rights.

Version 5.50, 1st March 2019
Version 5.50 includes the following functionality:

  • Bug fix to UI Global Hook Defeat mechanism. Stopped notification of DLLs with no Company Name.
  • UX Fix. Combo boxes in grids will no longer forcibly realign the cell if just the cell border is not visible. Sounds like a small thing, but really improves usability.
  • Addition to Service API svlPVStub_SetServiceCallbackThreshold(DWORD threshold); Threshold sets the number of seconds between calls to service callback threshold. 0..15. Default is 1.
  • Performance improvement for stack walking.
  • Visual Studio discovery performance improvement.

Version 5.49, 22nd February 2019
Version 5.49 includes the following functionality:

  • Improvement for working with services - service control handler callback is called more often to inform the service control handler that code is still running and has not hung.
  • Minor improvement for string handling, small performance improvement.
  • Bug fix for potential buffer overflow with TDS symbol processing.
  • Bug fix for potential buffer overflow with PDB symbol processing.

Version 5.48, 16th February 2019
Version 5.48 includes the following functionality:

  • Bug fix for C++ parser.
  • Bug fix for stack buffer overrun.
  • Bug fix for COFF symbol reading that could cause a crash (depending on the COFF data).

Version 5.47, 2nd February 2019
Version 5.47 includes the following functionality:

  • Bug fixes from static analysis.

Version 5.46, 27th January 2019
Version 5.46 includes the following functionality:

  • Bug fix for sorting on the Statistics tab.
  • .
  • Callstack View: Thread names automatically assigned to threads if not supplied by code.
  • UX: Moved auto update controls from Statistics view onto a separate dialog.
  • UX: Moved auto update controls from Callstack view onto a separate dialog.
  • Minor performance improvements.

Version 5.45, 17th January 2019
Version 5.45 includes the following functionality:

  • 80% performance improvement in our source code parser. Less CPU, less memory usage.

Version 5.44, 8th January 2019
Version 5.44 includes the following functionality:

  • Maintenance release.

Version 5.43, 18th December 2018
Version 5.43 includes the following functionality:

  • Bug fix for unwanted tracing data.

Version 5.42, 7th December 2018
Version 5.42 includes the following functionality:

  • Bug fix for session has ended and finished processnig data detection - our previous method didn't account for processes ending unexpectedly.
  • Minor UX changes.

Version 5.41, 29th November 2018
Version 5.41 includes the following functionality:

  • Minor changes to text.
  • Maintenance changes to various UI controls to improve functionality.

Version 5.40, 14th November 2018
Version 5.40 includes the following functionality:

  • Bug fix for installing and running on Windows XP, Windows Vista, Windows 7 and server equivalent versions.
  • UX change to supported Visual Studio versions selector. Now checks if the particular DbgHelp.dll is deployable on this OS and does not list it if it won't load on this OS. Useful for the most recent DbgHelp.dll that only runs on Windows 8 and Windows 10.

Version 5.39, 6th November 2018
Version 5.39 includes the following functionality:

  • Bug fix for monitoring child processes.
  • Symbol search path displayed on Diagnostics tab.

Version 5.38, 31st October 2018
Version 5.38 includes the following functionality:

  • Bug fix for overly optimized symbol path caching which broke symbol loading in some cases. This is a recommended download.
  • Bug fix for enumerating processes.
  • When launching processes with a native (unmanaged) entry point we now pass the Validator GUI process id directly as an argument. This allows multiple fast launches by different Validators to work without any potential interference from other Validators.

Version 5.37, 18th October 2018
Version 5.37 includes the following functionality:

  • Updated return code values. The values were off by one. This will not affect most users unless you are relying on the return codes when running from the command line.

Version 5.36, 5th October 2018
Version 5.36 includes the following functionality:

  • Bug fix to data transport. There was a race condition that meant that some sessions didn't record data.

Version 5.35, 2nd October 2018
Version 5.35 includes the following functionality:

  • Bug fix for automatic software updates. If you cancelled an in-progress automatic software update, the licence keys could get broken. Now fixed.
  • Bug fix possible for stack overflow that can occur when Compatibility mode is enabled to run a program that you a profiling. If you aren't using compatibility mode for your application you probably don't need this bug fix.

Version 5.34, 28th September 2018
Version 5.34 includes the following functionality:

  • Bug fix for deadlock that can occur if a symbol server is specified in an environment variable (for example _NT_SYMBOL_PATH) rather than via the settings dialog.

Version 5.33, 22nd September 2018
Version 5.33 includes the following functionality:

  • Bug fix for Visual Studio editor failing to open first time.
  • Error reporting on diagnostic tab for any errors with Visual Studio editor.
  • Updated ordinal mapping for Visual Studio 2017.
  • Updated example project solution and project files to support VS 2012, 2013, 2015, 2017.
  • Addition of symbol server download progress notification on the Performance Validator title bar.

Version 5.32, 4th September 2018
Version 5.32 includes the following functionality:

  • Bug fix for when Named Pipes are used for communicating when shared memory is not available - prevents the "flickering lockup" caused by too many erroneous "new session" messages. A rare bug to see, but game over if you do see it
  • Bug fix for dll extension parsing.
  • Bug fix for GDI handle leaks caught with the new SelectObject detector in C++ Memory Validator V7.38

Version 5.31, 16th August 2018
Version 5.31 includes the following functionality:

  • Misc bug fixes. Addition of range checking on some data conversion functions. Static analysis fixes.

Version 5.30, 10th August 2018
Version 5.30 includes the following functionality:

  • UX improvement, disabling controls related to "Application to Monitor" when user launches a batch file. This will prevent incorrect settings from being incorrectly set when profiling an application launche from a batch file.
  • Bug fix for fetching Delphi / C++ Builder line number information. Previous implementation could occasionally have bogus line numbers at a random address.

Version 5.29, 24th July 2018
Version 5.29 includes the following functionality:

  • UX changes - cleaning up the user interface.
  • If we detect you're trying to launch a service as an application we inform you about NT Service API and provide options for launching as application or restart as admin so can launch as application in admin mode.

Version 5.28, 18th July 2018
Version 5.28 includes the following functionality:

  • Bug fix for potential crash due to race condition during application shutdown.
  • Bug fix for editing with Visual Studio

Version 5.27, 12th July 2018
Version 5.27 includes the following functionality:

  • Fixed a few more broken help topics.

Version 5.26, 2nd July 2018
Version 5.26 includes the following functionality:

  • Modified all dialogs to make Help easier to find.
  • Fixed many broken help topics. F1 or clicking on the ? at the top of a dialog will take you to the appropriate help.

Version 5.25, 7th June 2018
Version 5.25 includes the following functionality:

  • Bug fix for install on Windows XP, Windows Vista.

Version 5.24, 6th June 2018
Version 5.24 includes the following functionality:

  • Bug fix to NT Service API
  • PATH corruption bug fixes - rare to encounter this bug, requires a very specific set of circumstances
  • When specifying environment variables on the launch dialog/wizard can use %PATH% to refer to previous version of PATH, allowing you to update the path.
    • For example: %PATH%;e:\myPath\debug
    • For example: e:\myPath\debug;%PATH%
    • For example: e:\myPath\debug;%PATH%;e:\anotherPath\debug;

Version 5.23, 26th May 2018
Version 5.23 includes the following functionality:

  • UX improvement for "DLL Dependency Warning" dialog.

Version 5.22, 18th May 2018
Version 5.22 includes the following functionality:

  • Minor performance improvements. Maintenance release.

Version 5.21, 11th May 2018
Version 5.21 includes the following functionality:

  • Addition of menus to Visual Studio for 2017, 2015, 2013, 2012, 2010.
  • Bug fixes from static analysis.
  • Bug fix for reading Embarcadero/Borland line numbers.

Version 5.20, 17th April 2018
Version 5.20 includes the following functionality:

  • Bug fix for launch dialog / wizard.
  • Bug fix for File Locations settings (no duplicates allowed) on Settings dialog
  • Improvements to how symbols are searched for and loaded. Faster processing per module (DLL/EXE) as a result.

Version 5.19, 11th April 2018
Version 5.19 includes the following functionality:

  • Bug fix for V5.18 when installing on Windows XP/ Windows XP x64. If you're not working with Windows XP, you can skip this update..

Version 5.18, 6th April 2018
Version 5.18 includes the following functionality:

  • Tool settings are now stored in the HKCU\Software\SoftwareVerify hierarchy (moved from SoftwareVerification). This is a recommended download.
  • Bug fix for resolving STABS symbols.
  • Bug fix for resolving COFF symbols.
  • Updated DbgHelp handling to recognise when a VS2015/VS2017 partial PDB file is found. A partial PDB is created by default for /DEBUG builds with VS2015 and VS2017.
  • Bug fix for dependency checking for VC runtime files and MFC files not listed in a manifest.
  • File extensions updated to recognise Fortran 90 files (.f90)

Version 5.17, 16th March 2018
Version 5.17 includes the following functionality:

  • Addition of exe dependency logging.
  • Bug fix for environment variable corruption. This is a recommended download.

Version 5.16, 9th March 2018
Version 5.16 includes the following functionality:

  • Improved handling for installation of BorDebug.dll for processing 32 bit C++ Builder / Delphi applications.
  • Bug fix for instrumentation.

Version 5.15, 7th March 2018
Version 5.15 includes the following functionality:

  • Bug fix for handling LoadLibrary(Ex)/FreeLibrary(), could possibly result in repeated work when hooking.

Version 5.14, 27th February 2018
Version 5.14 includes the following functionality:

  • Addition of logging for debugging worker thread functionality. Not customer accessible.
  • Bug fix for when a native (unmanaged) application loads a .Net (managed) DLL. Prevents duplicate worker threads being created, prevents warning dialogs being displayed because of busy pipes.

Version 5.13, 22nd February 2018
Version 5.13 includes the following functionality:

  • Change to how message routing is handling (from target application to GUI) to make work when SW_SHOWMINNOACTIVE is used by a a program to launch C++ Performance Validator.
  • Changes to reduce any flicker when Validator is started with the command line argument -hideUI.

Version 5.12, 16th February 2018
Version 5.12 includes the following functionality:

  • Updated DLLs found in System 32 dialog with a choice of actions for how to treat the DLLs.
  • Renamed Configure menu to Settings.
  • Added option to re-run the Startup Settings Wizard to the Settings menu.
  • Added User Interface Mode setup to the Startup Settings Wizard.

Version 5.11, 3rd February 2018
Version 5.11 includes the following functionality:

  • New release that does not store any Software Verify DLLs in Windows system directories. This should reduce the likelihood that our software tools are mistaken for viruses/trojans.
  • Updated NT Service API and related documentation.

Version 5.10, 10th January 2018
Version 5.10 includes the following functionality:

  • Bug fix for C/C++ source code parsing.
  • Bug fix for dependency checking.

Version 5.09, 6th January 2018
Version 5.09 includes the following functionality:

  • Display bug fixes for High DPI (4K plus) screens.

Version 5.08, 28th December 2017
Version 5.08 includes the following functionality:

  • Bug fix for potential crash during shutdown.
  • Bug fix for memory leak.
  • Performance improvement.

Version 5.07, 22nd December 2017
Version 5.07 includes the following functionality:

  • Bug fix: Anonymous namespaces containing code will be instrumented. Previously they were ignored.

Version 5.06
Version 5.06 includes the following functionality:

  • Update to line timing display. Messages regarding "no data" explain in more detail the reason there is no data.
  • Bug fix for data races with recorded data.

Version 5.05, 24th November 2017
Version 5.05 includes the following functionality:

  • Bug fix for potential (very rare) crash when trying to inject into another process (or wait for application).

Version 5.04, 21st November 2017
Version 5.04 includes the following functionality:

  • Performance improvement for MAP file reading.
  • Bug fix for sampling display when debug information is not Microsoft PDB.
  • Insrumentation change from PDB when no MAP to Debug Information when No Map.
  • Insrumentation change from MAP when no PDB to MAP when no Debug Information.

Version 5.03, 8th November 2017
Version 5.03 includes the following functionality:

  • Multi-threading bug fix for process monitor.

Version 5.02, 28th October 2017
Version 5.02 includes the following functionality:

  • New UI for the callstack display. Data is displayed in columns for easier reading of the display.
  • Bug fix for global hook DLL detection.

Version 5.01, 25th October 2017
Version 5.01 includes the following functionality:

  • Change to the options controlling when debug information is missing dialogs are show to you. You now have more control over when this happens.
  • Bug fix for PE format inspection DLL to prevent crashes when inspecting a DLL with an unusual data layout.
  • Improvements to STABS debug information handling.
  • Improvements to COFF debug information handling.
  • Performance improvement for hooking when working with STABS and COFF debug information formats.
  • Completely re-implemented hooking procedure for hooking lines. Lines in a function are now hooked at the same time as the function is hooked. This is faster and more robust.
  • Hooking of functions using cached instrumentation data has been reworked. The performance improvement for this is enormous. If you enabled caching of instrumentation data, subseqeuent runs with the same binary will hook much faster. Caching can be control from the "Hook Safety" part of the settings dialog.

Version 5.00, 21st September 2017
Version 5.00 includes the following functionality:

  • Improved error messages for software installer in the unlikely event the software updater fails for some reason.
  • Changed filter manager dialog to improve understanding, UX.
  • Fixed bug relating to STABS function names with parameters.
  • Fixed class::method filtering bug.
  • Improved instrumentation using STABS debug data - process less data, therefore faster.
  • Bug fix for STABS symbol demangling
  • Updated diagnostic messages.

Version 4.99, 11th August 2017
Version 4.99 includes the following functionality:

  • Additional warning about /DEBUG:FASTLINK built executables at start of run (after hooking) rather than at end of run.

Version 4.98, 3rd August 2017
Version 4.98 includes the following functionality:

  • Support for Visual Studio 2017. Previous versions had implicit support for VS 2017, now we provide explicit support for VS 2017.
  • Bug fix for DLL not found message to handle the case where the DLL is on the PATH being set by the environement variable set from the launch dialog.
  • Bug fix for trying to launch NameWithA Space.exe launching NameWithA.exe instead. Both .exes need to be in same dir to see this bug.

Version 4.97, 16th June 2017
Version 4.97 includes the following functionality:

  • Performance improvement during launching. Replaced brute force assembly check with correct checking of manifest contents and WinSxS assemblies. This is faster and more reliable than previous implementation (which on some machines was very slow).

Version 4.96, 13th June 2017
Version 4.96 includes the following functionality:

  • Bug fix for stack walker. Very rare bug for anyone to encounter.

Version 4.95, 16th May 2017
Version 4.95 includes the following functionality:

  • Bug fix for potential crash on some systems due to DLL loading order.
  • Bug fix for DLL dependency checker - now includes scan of WinSxS to handle manifests.
  • Updated documentation, now includes correct error codes, all 66 of them.

Version 4.94, 6th May 2017
Version 4.94 includes the following functionality:

  • Addition of Instrumentation Logging. Updated settings dialog and new dialog on Tools menu. This allows you identify when filters prevent something from being instrumented.
  • Improved UX in a few areas.
  • Improvement to Launch Dialog. Applications with missing DLL dependencies are now checked for. If a missing dependency is found you are warned about the failure and given the option to cancel the launch or continue trying to launch.

Version 4.93, 22nd April 2017
Version 4.93 includes the following functionality:

  • Minor change to File Locations dialog to draw attention to PDB file locations.
  • Change to DbgHelp failure to find debug information reporting to include PDB file location information - this will draw your attention to the fact you may need to specify this information, for example if you keep your PDB files in a separate directory to the your EXE/DLLs.

Version 4.92
Version 4.92 includes the following functionality:

  • Bug fix for instrumentation of switch jump tables.

Version 4.91, 31st March 2017
Version 4.91 includes the following functionality:

  • Bug fix for failure to load symbols display - more useful symbol search path information is now displayed.

Version 4.90, 17th February 2017
Version 4.90 includes the following functionality:

  • Bug fix injecting into 32 bit process launched from a batch file on a 64 bit operating system.

Version 4.89, 14th February 2017
Version 4.89 includes the following functionality:

  • User experience improvement for debug information not found handling.
  • Source code MFC and Microsoft C runtime will now be automatically found based upon the Symbol Lookup Visual Studio selection.
  • Bug fix for monitoring programs launched from batch files if the file path contains spaces.
  • Bug fix for symbol server dialog.
  • Bug fix for grid controls containing check boxes.
  • Bug fix for symbol handling for DLLs in write protected directories.
  • Bug fix for floating licensing.
  • Bug fix for error recovery when attaching to program launched from batch file fails.
  • User experience improvement for error handling try to attach to 64 bit application from batch file.

Version 4.88, 21st January 2017
Version 4.88 includes the following functionality:

  • Minor UX fixes and typography fixes.
  • Bug fix for software updates.
  • Additional confirmation dialog for Reset software update credentials.
  • First release after checking and fixing Visual Studio projects using Visual Studio Project Fixer.

Version 4.87, 22nd December 2016
Version 4.87 includes the following functionality:

  • Improvement to the first run startup wizard.
  • UX improvement for line timing display.
  • Bug fix for line timing display.
  • Bug fix for hooking function epilogues.

Version 4.86, 20th December 2016
Version 4.86 includes the following functionality:

  • Bug fix - deleting temporary files after use.
  • Addition of ability to specify the download location for software updates - allowing system administrators to lock down temporary file execution but allow software updates to execute.

Version 4.85, 14th December 2016
Version 4.85 includes the following functionality:

  • New first run configuration dialog to replace the two dialogs shown for environment vars and compiler/IDE chooser.
  • Improved error handling in startup injection code.
  • Prevention of double injection when try to launch executable statically linked with Validator library.
  • Bug fix for symbol loading. Prevent loading of mismatched symbols in special circumstances. This can prevent unexplained crashes causes by misleading information from incorrect symbol data.
  • Addition of line timing filters. These allow you to specify which functions you want to perform line timing for.

Version 4.84, 5th December 2016
Version 4.84 includes the following functionality:

  • Change to missing debugging/symbol information reporting.
  • Change to COFF symbol handling. If line numbers are missing, the symbol information is regarded as missing. This will improve the use case for MingW compilers (Qt, Dev C++ etc).

Version 4.83, 3rd December 2016
Version 4.83 includes the following functionality:

  • Data comms modification for handling comms once ExitProcess() is called.
  • Change to how Version Information is handled.

Version 4.82, 25th November 2016
Version 4.82 includes the following functionality:

  • Various UX improvements when editing filenames and directories.

Version 4.81, 21st November 2016
Version 4.81 includes the following functionality:

  • Instrumentation improvements.
  • Multi-threading security improvements.

Version 4.80, 5th November 2016
Version 4.80 includes the following functionality:

  • Improved launch instrumentation. Handling race conditions in CreateProcess() with SUSPENDED flag.

Version 4.79, 3rd November 2016
Version 4.79 includes the following functionality:

  • Updated software update error handling.
  • Improved code instrumentation.

Version 4.78, 25th October 2016
Version 4.78 includes the following functionality:

  • Bug fix for symbol cache - performance improvement, robustness/integrity improvement.
  • Bug fix for for function hooking - improved handling for optimized binaries.
  • Performance improvement fetching font faces.

Version 4.77, 20th October 2016
Version 4.77 includes the following functionality:

  • Bug fix for multi-threading error in symbol handling for V4.76.

Version 4.76
Version 4.76 includes the following functionality:

  • Addition of two options to the Software Updates menu (purchased version only) for resetting and setting user credentials. This allows you to easily recover from entering bad information by accident.

Version 4.75, 6th October 2016
Version 4.75 includes the following functionality:

  • Change to how unqiue symbol data is identified when sending from stub to GUI.

Version 4.74, 2nd October 2016
Version 4.74 includes the following functionality:

  • Error handling improvements to startup launch code injector.
  • Prevent data race during shutdown when run from the command line with -hideUI.
  • Bug fix for Hooked DLLs advanced hooking behaviour.

Version 4.73, 27th September 2016
Version 4.73 includes the following functionality:

  • Some improvements to multi-threaded data integrity.

Version 4.72, 19th September 2016
Version 4.72 includes the following functionality:

  • Bug fix possible crash when hooking executables built with Visual Studio 2015 - to account for changed memory protection values compared to earlier Visual Studio versions.
  • Bug fix possible crash when handling reading modern format PDB files with older (incompatible) versions of DbgHelp.dll if the wrong version of DbgHelp.dll is chosen (or loaded by the OS loader).
  • Debug information created with Visual Studio's /DEBUG:FASTLINK is now detected and a warning displayed on the Diagnostic tab indicarting that /DEBUG needs to be used to create usable debug information.
  • Bug fix for symbol handling (copying DbgHelp.dll so that it can be found).

Version 4.71, 1st September 2016
Version 4.71 includes the following functionality:

  • Bug fix for floating licence helper DLL loading being denied due to UI global hook settings.
  • UX improvement for the launch dialog and launch wizard. File and directory specifications that don't exist will be shown in red.

Version 4.70, 10th August 2016
Version 4.70 includes the following functionality:

  • Instrumentation progress speedup.

Version 4.69, 23rd July 2016
Version 4.69 includes the following functionality:

  • Static analysis bug fix update.

Version 4.68, 18th July 2016
Version 4.68 includes the following functionality:

  • Addition of support for EventLog monitoring to identify why some applications fail to start properly. This is available if you are using Vista or more recent operating systems.

Version 4.67
Version 4.67 includes the following functionality:

  • Bug fix for accessing COFF and STABS format debug information.
  • Inject dialog bug fix.
  • Bug fix for thread naming.

Version 4.66, 21st June 2016
Version 4.66 includes the following functionality:

  • Bug fix for handling unable to write to temporary files when fetching symbols from symbol servers and symbol files.
  • Bug fix for handling faulty .svlord files resulting in empty function names. Now you get something useful even if it's not what should be in the .svlord file. (Better error handling).
  • Bug fix for some handle leaks.
  • Performance improvement for high DPI scaling handling.

Version 4.65, 11th June 2016
Version 4.65 includes the following functionality:

  • Performance improvement for processing inter-process comms. Removal of thread contention. Reduction of thread contention.
  • Bug fix for some rare deadlock like conditions (not caused ciritcal sections, but a combination of other events). These are rare and tend to occur when closing one session and launching a new test session.

Version 4.64, 27th May 2016
Version 4.64 includes the following functionality:

  • Bug fix for loading/saving of settings data.
  • Bug fix for session manager.

Version 4.63, 19th May 2016
Version 4.63 includes the following functionality:

  • Change to shared memory transport. Now more considerate with memory usage. Also has improved out of memory fail-over handling.
  • Bug fix for two data race memory corruptions (that could cause crashes) in the GUI. This is a recommended download.

Version 4.62, 7th May 2016
Version 4.62 includes the following functionality:

  • Change to UI global hook defeat mechanism so that Winsock is not interfered with.
  • Enhanced floating licence error status reporting and logging to handle broken Winsock installations.
  • UX changes to prevent multi-relaunches of program due to finger fumble double click.

Version 4.61, 16th April 2016
Version 4.61 includes the following functionality:

  • Bug fix for disassembler DLL update.
  • Internal: Addition of auto tester for stress testing.

Version 4.60, 8th April 2016
Version 4.60 includes the following functionality:

  • Maintenance update.

Version 4.59, 2nd April 2016
Version 4.59 includes the following functionality:

  • Updated disassembler. This will give improved function hooking.
  • Initial support for high DPI monitor compatibility. Font sizes are calculated, not hard coded.

Version 4.58
Version 4.58 includes the following functionality:

  • Improvement for working with statically linked Delphi programs.

Version 4.57, 17th March 2016
Version 4.57 includes the following functionality:

  • Bug fix for Software Updates Installer.

Version 4.56, 15th March 2016
Version 4.56 includes the following functionality:

  • Bug fix for sampling data collection.

Version 4.55, 4th March 2016
Version 4.55 includes the following functionality:

  • Bug fix for potentiall deadlock in symbol handling code.

Version 4.54, 29th February 2016
Version 4.54 includes the following functionality:

  • Addition of support for _NT_SYMBOL_PATH, _NT_ALT_SYMBOL_PATH, _NT_ALTERNATE_SYMBOL_PATH, _NT_SYMCACHE_PATH. See Symbol Server settings dialog for configuration options.
  • Bug fix for setting environment values in services and applications.
  • Bug fix for failing to correctly restore the size and position of the main window when restarting the software.

Version 4.53, 16th February 2016
Version 4.53 includes the following functionality:

  • Bug fix for floating licencing.
  • Maintenance release. Misc bug fixes.

Version 4.52, 29th January 2016
Version 4.52 includes the following functionality:

  • Addition of command line option -showErrorsWithMessageBox that reports errors on stdout.
  • Minor bug fixes, maintenance release.
  • Bug fix for damaging SSE registers in certain hooks.

Version 4.51, 24th December 2015
Version 4.51 includes the following functionality:

  • Filtering colour changes to improve user experience.

Version 4.50, 18th December 2015
Version 4.50 includes the following functionality:

  • Maintenance release. Lots of minor bug fixes.

Version 4.49, 10th December 2015
Version 4.49 includes the following functionality:

  • New function timing display. Easier to understand display.
  • New line timing display. Easier to understand display.
  • Bug fix for line timing display.
  • Bug fix for inject dialog and inject wizard.
  • Bug fix for launch wizard.

Version 4.48, 27th November 2015
Version 4.48 includes the following functionality:

  • Bug fix for running C++ Performance Validator from a service.
  • Bug fix for incorrectly classifying Windows patch DLLs.
  • Improvement to symbol handling.
  • Improvement to MAP file handling.
  • Bug fix for analysis tab.
  • Bug fix for line timing tab.

Version 4.47, 21st November 2015
Version 4.47 includes the following functionality:

  • Addition of ability to specify a different application to monitor than the application that is being launched. This allows you to monitor applications launched by a different application.
  • Addition of -programToMonitor and -programToMonitorLaunchCount command line arguments.
  • User experience improvements for function timing display and line timing display.
  • Bug fix for TDS Symbol Reader when Validator DLL is not loaded from Validator install directory.

Version 4.46, 25th October 2015
Version 4.46 includes the following functionality:

  • Bug fix for column configuration dialog when in sampling mode.
  • Lots of bug fixes to improve the user experience on the Analysis tab.
  • Lots of bug fixes to improve the user experience on the Relations tab.
  • Bug fixes to improve the user experience on the Statistics tab.
  • Bug fix for Goto Call Tree Node when call tree not displayed.
  • Bug fix for Goto Call Graph Node when call tree not displayed.
  • Bug fix for export to HTML and export to XML.
  • Bug fix for command line session comparison export HTML.
  • New command line arguments for controlling session comparison. comparisonShowArgs, comparisonShowReturnType, comparisonShowModulename, comparisonShowFilename, comparisonShowAddress
  • Bug fix for serialization - you can't load a session that is already loaded in the session manager.

Version 4.45, 16th October 2015
Version 4.45 includes the following functionality:

  • Bug fix for .Net symbol handling when .Net tries to setup profiler for multiple profiler interfaces.
  • Bug fix for handle leak. Leak discovered using C++ Memory Validator.

Version 4.44, 1st October 2015
Version 4.44 includes the following functionality:

  • Copy from grid now uses TAB to separate columns rather than SPACE. This is for improved copy/paste with Excel.
  • Loading a session will now detect when attempts are made sessions saved with an incompatible product (example: loading 64 bit session into 32 bit tool). Valid for all sessions from this version onwards.
  • Bug fix for potential crash with manifest handling.

Version 4.43, 18th September 2015
Version 4.43 includes the following functionality:

  • New configuration of DbgHelp DLLs for VS 2013 and VS 2015 to provide better performance.

Version 4.42, 6th September 2015
Version 4.42 includes the following functionality:

  • Bug fix for error message.

Version 4.41, 29th August 2015
Version 4.41 includes the following functionality:

  • Bug fix for settings very large environment variable values.
  • Bug fix for bug during undecorate.
  • Bug fix for symbol handling.

Version 4.40, 26th August 2015
Version 4.40 includes the following functionality:

  • Bug fix for process monitoring when target is elevated and Validator is non-elevated.
  • Additional user warning when momitored process is elevated and Validator is non-elevated.
  • Bug fix for a special case of quoted command line arguments.
  • Addition of -monitorAService command line argument.

Version 4.39, 7th August 2015
Version 4.39 includes the following functionality:

  • Maintenance update.

Version 4.38, 1st August 2015
Version 4.38 includes the following functionality:

  • Support for Visual Studio 2015
  • Bug fix for profiling applications or DLLs that start with with the letters MFC but which are not Microsoft DLLs.

Version 4.37
Version 4.37 includes the following functionality:

  • Changes to Inject wizard to use same style and sizing as for all other Validator tools.

Version 4.36, 23rd July 2015
Version 4.36 includes the following functionality:

  • New implementation for launching and injecting into executables. This method removes some technical limitations, opening the way for future improvements to the software.
  • Bug fix for Inject dialog incorrectly listing 64 bit executables to inject into.

Version 4.35, 3rd July 2015
Version 4.35 includes the following functionality:

  • Bug fix for UI Defeat Global hook.

Version 4.34, 23rd June 2015
Version 4.34 includes the following functionality:

  • Minor UX improvements.
  • Change to how launch history is stored and managed. Principle reason for this is to fix a long standing, hard to reproduce bug that mixes up data from one launch with another launch.
  • Bug fix for colour editing refresh problem.
  • Bug fix for session compare.
  • Minor change to HTML export behaviour.
  • Static analysis improvements.
  • Improvements to exception logging.
  • Improved UI defeat global hook implementation.

Version 4.33, 11th June 2015
Version 4.33 includes the following functionality:

  • Bug fix for potential memory leak caused by race condition.
  • Bug fix for high speed shared memory data transport race condition during shutdown.
  • Bug fix for symbol demangling bug with Microsoft's UnDecorateSymbolName which can crash with certain input.
  • UX Change in behaviour for the Get Symbols... action on the Symbol Servers settings page. Now meets user expectations.
  • Fixed callstack view missing threads bug.

Version 4.32, 2nd June 2015
Version 4.32 includes the following functionality:

  • Bug fix for symbol demangling for MingW.
  • Bug fix for -exportAsHTML.

Version 4.31, 12th May 2015
Version 4.31 includes the following functionality:

  • Improved launch handling of mixed mode .Net modules.
  • Improved Windows Firewall handling.

Version 4.30, 25th April 2015
Version 4.30 includes the following functionality:

  • Better support for reading Embarcadero/Borland TDS files. (C++Builder / Delphi)

Version 4.29, 17th April 2015
Version 4.29 includes the following functionality:

  • Static analysis improvements.
  • Minor bug fixes.

Version 4.28, 10th April 2015
Version 4.28 includes the following functionality:

  • Minor UX improvements.
  • Name obfuscation for symbols/files when logging.
  • Improvements to display of MBCS encoded (non-ANSI) files with no Byte Order Mark.

Version 4.27, 30th March 2015
Version 4.27 includes the following functionality:

  • Bug fix for possible inject failure when run from the command line.

Version 4.26, 24th March 2015
Version 4.26 includes the following functionality:

  • Support for non-western character sets in source code display - examples include Greek, Korean, Chinese, Japanese, Albanian, Arabic, Hebre, Hindia, Armenian, Russian.

Version 4.25, 18th March 2015
Version 4.25 includes the following functionality:

  • Bug fix for floating licensing.

Version 4.24, 13th March 2015
Version 4.24 includes the following functionality:

  • Bug fix for Windows 7 crash when hooking.

Version 4.23, 7th March 2015
Version 4.23 includes the following functionality:

  • New DLL load detection support for Windows 8. Previously some DLLs loaded by COM were not being monitored.
  • Bug fix for PE file inspector.
  • Static analysis bug fixes.

Version 4.22, 18th February 2015
Version 4.22 includes the following functionality:

  • Change to Performance settings so that you can choose how lines are timed.
  • Bug fix to performance timing.
  • Update to help manual for Performance settings.
  • Improvement for symbol cache cleaner dialog management.
  • Exception safety for disassembler.

Version 4.21, 4th February 2015
Version 4.21 includes the following functionality:

  • New VS2010 Installer handling. No user interaction required - no confusion over what to choose.
  • Improved launch procedure for when trying to launch a program that needs administrator privileges when Validator not running as administrator.
  • Improved Diagnostic tab - a filter is now present so that you can easily focus on just the messages you are interested in.

Version 4.20, 28th January 2015
Version 4.20 includes the following functionality:

  • Improved choose a Visual Studio dialog. Better error handling on machines with no Visual Studio installed.
  • Resizable launch dialog.
  • Resizable wait for process dialog.
  • Bug fixes and UX improvements for environment variables dialog.
  • Bug fix for potential crash with copy to clipboard.
  • Improvement to Inject into Process dialog.
  • Bug fix for "Hooked DLLs" dialog, don't hook delay loaded dlls checkbox.

Version 4.19, 5th January 2015
Version 4.19 includes the following functionality:

  • New build with Visual Studio 2010. Support for Operating Systems from Windows XP onwards. Windows NT4 and Windows 2000 are no longer supported, except with a special build..
  • Additional security checks.
  • Improved performance with some VirtualQuery() calls.
  • Bug fix for profiling EXE/DLL in the system32/sysWow64 directory.

Version 4.18, 21st November 2014
Version 4.18 includes the following functionality:

  • Bug fix for Hide All menu option on the Data Views menu.
  • Bug fix for restoring Data Views.

Version 4.17, 16th November 2014
Version 4.17 includes the following functionality:

  • Bug fix for registry handling.
  • Bug fix for launch dialog.

Version 4.16, 3rd October 2014
Version 4.16 includes the following functionality:

  • New menu, "Data Views" allowing you to show, hide or reset all tabbed views.
  • Ability to hide any data view to simplify the screen layout.
  • Data view visibility preserved between sessions.
  • Addition of command line argument -doNotInteractWithUser. Use this to prevent the stub or the GUI from displaying error dialogs during runs. This is useful when setting up automated testing on a server.

Version 4.15, 11th September 2014
Version 4.15 includes the following functionality:

  • Bug fix for software update installer.

Version 4.14, 22nd August 2014
Version 4.14 includes the following functionality:

  • Bug fix for reading/writing values to/from the registry.
  • Line timing improvement for Windows Vista/7/8/future - times are now CPU cycles per thread.
  • Bug fixes for data display on Functions view.

Version 4.13, 6th August 2014
Version 4.13 includes the following functionality:

  • Support for Visual Studio 2014 CTP

Version 4.12, 25th July 2014
Version 4.12 includes the following functionality:

  • Registry reading error handling update.
  • Update to Software Updates install behaviour.
  • Settings serialization bug fix.

Version 4.11, 16th July 2014
Version 4.11 includes the following functionality:

  • Bug fix for disassembler code.
  • Change to Browse for Folder behaviour.

Version 4.10, 7th July 2014
Version 4.10 includes the following functionality:

  • Updated installer, now includes error logging for the odd occasion when installs go wrong.
  • Misc other updates and bug fixes.

Version 4.09, 20th June 2014
Version 4.09 includes the following functionality:

  • Bug fix for possible crash when reallocating memory (Inject dialog).

Version 4.08, 14th June 2014
Version 4.08 includes the following functionality:

  • Bug fix for crash during instrumentation.
  • Bug fix for slow Post Processing stage when waiting for target application to close.
  • Fix application specific file storage issues when run without admin privileges on Vista/7/8.
  • Bug fix for incorrect memory reallocation in svlService.
  • This is a recommended download.

Version 4.07, 4th June 2014
Version 4.07 includes the following functionality:

  • Can now detect and warn about incompatibility with Microsoft Application Verifier.
  • Improved error reporting for hooks.
  • Misc bug fixes for errors found in testing.

Version 4.06, 25th May 2014
Version 4.06 includes the following functionality:

  • New version that does not require administrator privileges to run. No User Account Control dialogs!
  • Improved function hooker.
  • Improved delay load hooker.
  • Improved failure reporting.
  • Bug fix for rare crash in high speed comms linear heap.

Version 4.05, 22nd March 2014
Version 4.05 includes the following functionality:

  • Bug fix for profiling mixed mode native/.Net processes.
  • Bug fix for memory leak.

Version 4.04, 19th March 2014
Version 4.04 includes the following functionality:

  • Maintenance release.
  • Improved PE File reader.
  • Bug fix for attaching to .Net processes.

Version 4.03, 5th March 2014
Version 4.03 includes the following functionality:

  • Symbol handling bug fix.

Version 4.02, 11th February 2014
Version 4.02 includes the following functionality:

  • Instrumentation bug fix.
  • Minor UX improvements. Browse For Folder dialog.

Version 4.01, 1st February 2014
Version 4.01 includes the following functionality:

  • Miscellaneous UX improvements.
  • Miscellaneous bug fixes.
  • Addition of command line argument -launchAppHide
  • Addition of command line argument -launchAppShow
  • Addition of command line argument -launchAppShowMaximized
  • Addition of command line argument -launchAppShowMinimized
  • Addition of command line argument -launchAppShowMinNoActive
  • Addition of command line argument -launchAppShowNA
  • Addition of command line argument -launchAppShowNoActivate
  • Addition of command line argument -launchAppShowNormal

Version 4.00, 2nd January 2014
Version 4.00 includes the following functionality:

  • Release of new 64 bit and 32 bit version of C++ Performance Validator.

Version 3.54, 24th December 2013
Version 3.54 includes the following functionality:

  • Bug fix for incorrect return value from SymGetModuleInfo(64) DbgHelp.dll API

Version 3.53, 19th December 2013
Version 3.53 includes the following functionality:

  • Bug fix for broken resources in some user interface components.

Version 3.52, 10th December 2013
Version 3.52 includes the following functionality:

  • Bug fix for code instrumentation disassembler.

Version 3.51, 4th December 2013
Version 3.51 includes the following functionality:

  • Bug fix for symbol servers settings dialog.
  • Bug fix for failing to fetch symbols from symbol servers in certain situations.
  • Bug fix for Cpu Thread Cycles mode.
  • Command line arguments containing quotes can now be passed to target programs.

Version 3.50, 9th November 2013
Version 3.50 includes the following functionality:

  • Lock handling change for symbol handler. Spend less time in lock. Reduce likelihood of deadlock in stub.
  • Licensing code update.

Version 3.49, 5th November 2013
Version 3.49 includes the following functionality:

  • Changed application and Hooked DLLs bug fix and behaviour change.
  • Bug fix for session serialization using too much memory when loading.
  • Maintenance: Licensing code update. Code cleanup. Code removal.

Version 3.48, 15th October 2013
Version 3.48 includes the following functionality:

  • Editor settings dialog bug fix.

Version 3.47, 3rd October 2013
Version 3.47 includes the following functionality:

  • Addition of ability to get CPU cycle time per thread. Works on all operating systems from Vista onwards. No support for Windows XP or earlier.

Version 3.46, 27th September 2013
Version 3.46 includes the following functionality:

  • Changed how file extensions are displayed in File Open / File Save dialog.
  • Speed improvement for all tree/grid controls. This will improve the performance tree controls with large datasets greatly.

Version 3.45, 24th September 2013
Version 3.45 includes the following functionality:

  • Bug fix for symbol handling.

Version 3.44, 14th September 2013
Version 3.44 includes the following functionality:

  • Addition of logging code to track obscure memory mapping bugs.
  • Improved error reporting for failed Named Pipes.
  • Improved Symbol Server handling - now automatically quotes directories that include spaces.
  • Bug fix for filtering 'dynamic initializer for...' symbols.

Version 3.43, 23rd August 2013
Version 3.43 includes the following functionality:

  • Bug fix for hooking functions.
  • Bug fix multi-threaded access to symbol in module manager.

Version 3.42, 9th August 2013
Version 3.42 includes the following functionality:

  • Misc software bug fixes.
  • New help file builder.

Version 3.41, 27th July 2013
Version 3.41 includes the following functionality:

  • Diagnostic view performance improvement.
  • Native code instrumentation performance improvement.

Version 3.40, 11th July 2013
Version 3.40 includes the following functionality:

  • Provisional support for Visual Studio 2013.
  • Bug fix for file extension filtering.

Version 3.39, 25th June 2013
Version 3.39 includes the following functionality:

  • Updated diagnostic view to allow filtering of the data displayed in the view
  • Addition of DbgHelp.dll symbol search path information to diagnostic view - to aid in diagnosing why symbols do not load.

Version 3.38, 6th June 2013
Version 3.38 includes the following functionality:

  • Improved handling of DLL filtering.

Version 3.37, 24th May 2013
Version 3.37 includes the following functionality:

  • Bug fix for crash in symbol handler.

Version 3.36, 16th May 2013
Version 3.36 includes the following functionality:

  • Environment variables dialog (on launch dialog/wizard) can now acquire environment variables from the system and import and export environment variables from/to files.

Version 3.35, 29th April 2013
Version 3.35 includes the following functionality:

  • Bug fix for columns dialog.

Version 3.34
Version 3.34 includes the following functionality:

  • Bug fix for fetching of symbols and symbol server handling.
  • Bug fix for settings dialog.

Version 3.33, 11th April 2013
Version 3.33 includes the following functionality:

  • Bug fix for error R6034 - loading wrong C Runtime error displayed during startup or shutdown of target application

Version 3.32, 9th April 2013
Version 3.32 includes the following functionality:

  • Bug fix for launch dialog and launch wizard/
  • Updated symbol server support.
  • Update for .Net support.

Version 3.31, 26th March 2013
Version 3.31 includes the following functionality:

  • Support for VS2012, .Net Framework 4.5.
  • Bug fix for Tips dialog.

Version 3.30, 13th March 2013
Version 3.30 includes the following functionality:

  • New debugging symbols handler. Faster, more robust, more fault tolerant.

Version 3.29
Version 3.29 includes the following functionality:

  • Bug fix for broken keygen for eval/beta versions.

Version 3.28, 9th February 2013
Version 3.28 includes the following functionality:

  • Bug fix for auto-fixing data comms control values.
  • Addition of support for floating licensing.

Version 3.27
Version 3.27 includes the following functionality:

  • Bug fix for launching different application to the Hooked DLLs settings.
  • UX modifications for Inject into Process dialog.
  • Bug for -waitName command line argument.

Version 3.26, 16th January 2013
Version 3.26 includes the following functionality:

  • Many changes to improve the UX of the software.
  • Prevent double clicks on the tree +/- button from changing the tree state.
  • Prevent losing selection when deleting data from grids.
  • Improved settings dialog selection on tree control.
  • Improved progress dialog.
  • Improved visual feedback for file extensions filters.
  • Improved visual feedback for class/method filters.
  • Improved visual feedback and data population speed on class method filter dialog.
  • Improved UI feedback after loading settings or resettings settings from the settings dialog.
  • Auto-expand the performance call graph after refresh.
  • Auto-expand the performance call tree after refresh.
  • Auto-expand the performance analysis results after refresh.
  • Change to tree control to remember it's expand/contract state between clicks.
  • Improved filter exclusion handling for class/method and DLL filtering.
  • Bug fixes for relations filter manager dialog.
  • Improved navigation on relations view.
  • Added forward navigation to relations view.
  • Improved line timing view.

Version 3.25, 6th January 2013
Version 3.25 includes the following functionality:

  • Improvements to tree expand/collapse behaviour to improve user experience.
  • Bug fix for erroneous DelayHook message.

Version 3.24, 4th January 2013
Version 3.24 includes the following functionality:

  • Bug fix for buffer overrun.

Version 3.23, 3rd January 2013
Version 3.23 includes the following functionality:

  • Various minor UX improvements.
  • Bug fix for flicker on Functions view when scrolling.
  • Bug fix for flicker on Relations view when scrolling.
  • Bug fix for slow behaviour on Relations view.
  • Fixed display line times check box bug.
  • Improved how statistics are displayed insitu with code.
  • Improved how Tree Controls are rendered.
  • New version of editing component, providing additional functionality.
  • New cleaner drawing style for tree/grid control.
  • Minor UX changes.
  • Minor bug fixes.

Version 3.22, 5th December 2012
Version 3.22 includes the following functionality:

  • User experience improvements for DbgHelp.dll chooser.
  • Bug fix for UI and Stub Global Hook settings.

Version 3.21, 13th November 2012
Version 3.21 includes the following functionality:

  • Bug fixes from static analysis.

Version 3.20, 18th October 2012
Version 3.20 includes the following functionality:

  • Bug fix for possible deadlock with Session Manager.
  • Bug fix for possible deadlock with Diagnostic View.
  • Bug fix for processing MingW debug info.

Version 3.19, 9th October 2012
Version 3.19 includes the following functionality:

  • Bug fixes after static analysis work.

Version 3.18, 14th September 2012
Version 3.18 includes the following functionality:

  • Improved file handling. Can now read ANSI, UTF-8, UTF-16 (both variants).
  • Launch dialog/wizard has additional check for UPX compressed executables.

Version 3.17, 14th August 2012
Version 3.17 includes the following functionality:

  • UX fixes for Session Manager dialog.
  • All sessions now have a session alias so you can give a session a meaningful name.
  • New option on Tools menu allowing you to explore the debug info status per DLL.

Version 3.16, 29th July 2012
Version 3.16 includes the following functionality:

  • Replaced Tip of the Day dialog with a new modeless tips dialog that works very differently.
  • UX improvements to various dialogs.
  • Minor bug fixes.

Version 3.15, 2nd July 2012
Version 3.15 includes the following functionality:

  • Performance improvement for class/method filter dialog.

Version 3.14, 27th June 2012
Version 3.14 includes the following functionality:

  • Bug fix for DLL filtering.
  • Bug fixes from static analysis tool.
  • Editing tool upgrade.

Version 3.13, 15th June 2012
Version 3.13 includes the following functionality:

  • Bug fix for XML export.
  • Bug fix for Visual Studio editing.
  • More improvements from static analysis work.

Version 3.12
Version 3.12 includes the following functionality:

  • Bug fix for Visual Studio editing.

Version 3.11, 11th May 2012
Version 3.11 includes the following functionality:

  • Bug fix for -commandFile command line argument handling.

Version 3.10, 8th May 2012
Version 3.10 includes the following functionality:

  • New behaviour for -program programName. If programName is specified without a path we search the start directory and the PATH environment variable and select the first matching program.
  • Ability to specify tab width for source code views.
  • Bug fix for launching progams from the command line with the -allArgs argument.

Version 3.09, 2nd May 2012
Version 3.09 includes the following functionality:

  • More bug fixes from static analysis with Visual Lint.
  • New file format - not backwards compatible (sorry). But the change is worth it.
  • Addition of -allArgs command line argument.
  • Change to command line behaviour - unrecognised arguments are ignored. Use -allArgs instead.

Version 3.08, 19th February 2012
Version 3.08 includes the following functionality:

  • Bug fix for invalid handle crash in user interface.

Version 3.07
Version 3.07 includes the following functionality:

  • Bug fixes from static analysis with Visual Lint.

Version 3.06, 14th January 2012
Version 3.06 includes the following functionality:

  • Bug fix for URL encoding when talking to software update server.

Version 3.05, 11th January 2012
Version 3.05 includes the following functionality:

  • Bug fix for crash on Columns... dialog.

Version 3.04, 6th January 2012
Version 3.04 includes the following functionality:

  • Lock handling performance improvements.
  • Software update changes - update will not happen when run from command line.

Version 3.03, 22nd December 2011
Version 3.03 includes the following functionality:

  • Bug fix for potential memory corruption.

Version 3.02, 16th December 2011
Version 3.02 includes the following functionality:

  • Bug fix for software updater throwing MFC exception on some systems.

Version 3.01, 10th December 2011
Version 3.01 includes the following functionality:

  • Bug fix for deadlock when hooking certain DLLs.
  • XML output modified to be more readable with a text editor.
  • Updated self-installer to handle additional security checks for some computer systems.

Version 3.00, 3rd December 2011
Version 3.00 includes the following functionality:

  • Addition of software update code.

Version 2.99
Version 2.99 includes the following functionality:

  • Reduce memory usage for Visual Studio debugging information after profiling.

Version 2.98, 17th October 2011
Version 2.98 includes the following functionality:

  • Robustness improvement for handling shared memory profiler data.

Version 2.97, 4th October 2011
Version 2.97 includes the following functionality:

  • Improved Symbol Server support - workaround for hang caused by WinInet global Mutexs.
  • New tutorial tab and additional option on Help menu.

Version 2.96
Version 2.96 includes the following functionality:

  • Update for evaluations.

Version 2.95, 21st September 2011
Version 2.95 includes the following functionality:

  • Tutorials moved to the website. Tutorial link always available from help menu and at startup.

Version 2.94, 30th August 2011
Version 2.94 includes the following functionality:

  • Bug fix for line iteration.

Version 2.93, 19th August 2011
Version 2.93 includes the following functionality:

  • Bug fix for crash during shutdown.

Version 2.92
Version 2.92 includes the following functionality:

  • Addition of line timing information to Call Tree, Call Graph and Analysis views.

Version 2.91
Version 2.91 includes the following functionality:

  • Bug fix for stall during line hooking due to new DbgHelp.dll behaviour for some inline code.

Version 2.90, 1st August 2011
Version 2.90 includes the following functionality:

  • Improved "Symbol Lookup" Visual Studio chooser based upon user feedback.

Version 2.89, 22nd June 2011
Version 2.89 includes the following functionality:

  • Low data processing race condition bug fix.

Version 2.88, 21st June 2011
Version 2.88 includes the following functionality:

  • New file missing dialog implementation.
  • Bug fix for code instrumentation.

Version 2.87, 17th May 2011
Version 2.87 includes the following functionality:

  • Bug fix for buffer overrun on session export dialog.

Version 2.86, 28th April 2011
Version 2.86 includes the following functionality:

  • Bug fix for crash on Callstacks view with Thread Names dialog.

Version 2.85, 19th April 2011
Version 2.85 includes the following functionality:

  • Bug fix for MingW stabs debug information reading.
  • New menu implementation, addition of bitmaps.

Version 2.84, 13th April 2011
Version 2.84 includes the following functionality:

  • Bug fix for COMCTL32.DLL bitmap handling.

Version 2.83, 1st April 2011
Version 2.83 includes the following functionality:

  • Inject, Launch and Wait wizard layouts changed to be more industry standard behaviour.

Version 2.82, 17th March 2011
Version 2.82 includes the following functionality:

  • Bug fix for unwanted disk FindFirstFile.
  • Improved COFF/STABS symbol handling.

Version 2.81, 11th March 2011
Version 2.81 includes the following functionality:

  • Bug fix for DbgHelp.dll specification.
  • Additional techniques for identifying Visual Studio installs.

Version 2.80, 2nd March 2011
Version 2.80 includes the following functionality:

  • When run from the command line using command line options the return code is now the return code of the most recently run app.
  • Bug fix for race condition when starting second or subsequent session, could cause possible crash.
  • Fix minor bug fixes.

Version 2.79, 6th February 2011
Version 2.79 includes the following functionality:

  • Change of behaviour for symbol server dialog.

Version 2.78, 4th February 2011
Version 2.78 includes the following functionality:

  • New communications architecture.
  • New handling for dbghelp.dll and different versions of Visual Studio.

Version 2.77, 29th December 2010
Version 2.77 includes the following functionality:

  • Support for .Net framework 4, CLR 4.
  • Bug fix for callstack walking for some mixed mode apps.
  • More robust callstack walking for all applications.

Version 2.76, 3rd November 2010
Version 2.76 includes the following functionality:

  • Rationalising code base. Maintenance release.

Version 2.75, 30th July 2010
Version 2.75 includes the following functionality:

  • Maintenance release.

Version 2.74, 16th July 2010
Version 2.74 includes the following functionality:

  • Bug fix for memory mapped memory usage - now more efficient.

Version 2.73, 3rd July 2010
Version 2.73 includes the following functionality:

  • Bug fix for profiling mixed-mode .Net applications when running on a 64 bit operating system.

Version 2.72, 4th June 2010
Version 2.72 includes the following functionality:

  • New implementation for cpuid/rdtsc handling.
  • Additional information on the diagnostic tab.
  • Additional information in exception reports.
  • Bug fix for reading stabs debug information from MingW4.4 compiler (handles relative filenames correctly).
  • Bug fix for reading COFF debug information from MingW4.4 compiler (Performance improvement).

Version 2.71, 24th May 2010
Version 2.71 includes the following functionality:

  • Support for Windows 7 KernelBase.dll hooking.
  • Support for editing with VS 2010.
  • Bug fix for editing with VS 2008
  • Bug fix for GetProcAddress() hooking.
  • Bug fix for crash fetching long .Net symbols in mixed mode applications.

Version 2.70, 21st April 2010
Version 2.70 includes the following functionality:

  • Completely reworked data collection internals to simplify memory management, improve robustness, use less memory, run faster, etc.
  • Removed Inter Process Communications settings from settings dialog, now redundant.
  • Moved DLL Hook Insertion rules to Hooked DLLs settings.
  • Simplified Line Hooking settings.
  • Bug fix for call tree and call graph: Module name shown correctly.

Version 2.69, 25th March 2010
Version 2.69 includes the following functionality:

  • Changes to line timing implementation.
  • Bug fix for handle leak with ToolHelp32.
  • Bug fix for failure with socket() when incorrectly hooking resource DLLs that have more than one section (example: mfc80enu.dll).

Version 2.68, 2nd March 2010
Version 2.68 includes the following functionality:

  • Bug fix for environment variable handling.
  • Bug fix for license installer software.

Version 2.67, 18th February 2010
Version 2.67 includes the following functionality:

  • Improved handling of mixed mode .Net applications - specifically .Net applications that call unmanaged code directly from .Net code.
  • Version checking for DbgHelp.dll - status and any warning messages displayed on Diagnostic tab.
  • Bug fix for Export Session dialog.
  • Bug fix for Hooked DLLs.

Version 2.66, 21st December 2009
Version 2.66 includes the following functionality:

  • Minor UI changes to add user hints.
  • All executables are now code signed to prevent warnings on Vista/Windows 7.
  • Bug fix for deadlock.

Version 2.65, 13th November 2009
Version 2.65 includes the following functionality:

  • Bug fix for reading various types of malformed DLLs.
  • Correct detection of Resource only DLLs.

Version 2.64, 5th November 2009
Version 2.64 includes the following functionality:

  • Support for MingW gcc/g++ compilers when compiled with STABS debug information (-gstabs switch)
  • Support for applications built using QtCreator
  • .Net method module, class, method names in native sampling callstacks

Version 2.63, 26th October 2009
Version 2.63 includes the following functionality:

  • Support for MingW gcc/g++ compilers when compiled with COFF debug information (-gcoff switch)

Version 2.62, 6th October 2009
Version 2.62 includes the following functionality:

  • Bug fix for callstack tab for sampling.
  • Bug fix for callstack tab when toolhelp fails to acquire active thread ids, session will provide them, ensuring active callstack viewing.
  • Bug fix for settings loading/saving (V2.58 onwards).
  • Bug fix for incorrect colouring of displays (indicates filtered entries incorrectly) when filtering by DLL.
  • Bug fix for Delphi code coverage when working with .itext segment information in detailed MAP files.
  • Bug fix for line timing display.

Version 2.61, 23rd September 2009
Version 2.61 includes the following functionality:

  • Support for launching batch files as well as executable. First application launched by batch file will be monitored.
  • Bug fix for instrumenting Delphi code.
  • Improved support for instrumenting "inline" jump tables used by compilers building switch tables.

Version 2.60, 2nd September 2009
Version 2.60 includes the following functionality:

  • Installer bug fix.

Version 2.59, 18th August 2009
Version 2.59 includes the following functionality:

  • Bug fix for shutdown handling to prevent busy wait with DbgHelp.
  • Bug fix for advanced DbgHelp symbol handling.
  • Bug fix for Windows Symbols PDB Paths handling on launch dialog.

Version 2.58, 10th August 2009
Version 2.58 includes the following functionality:

  • Various minor bug fixes.
  • Memory access synchronization bug fixes.

Version 2.57, 1st May 2009
Version 2.57 includes the following functionality:

  • Misc bug fixes.

Version 2.56
Version 2.56 includes the following functionality:

  • Hooked DLLs, sorted DLLs in list.

Version 2.55, 6th April 2009
Version 2.55 includes the following functionality:

  • Bug fix for session export to HMTL and XML.
  • Bug fix for occasional deadlock which prevents correct collection of sampling data.

Version 2.54, 25th March 2009
Version 2.54 includes the following functionality:

  • Addition of new command line argument. -launchAppHidden. Causes the program started with -program to run hidden.
  • Minor tip of day bug fix.
  • Minor gui fixes.

Version 2.53, 6th March 2009
Version 2.53 includes the following functionality:

  • Minor bug fixes.

Version 2.52, 6th March 2009
Version 2.52 includes the following functionality:

  • Misc bug fixes. Maintenance release.

Version 2.51, 30th January 2009
Version 2.51 includes the following functionality:

  • Modified Inject dialog to be resizable and remember which column it sorts on and previous selection.

Version 2.50
Version 2.50 includes the following functionality:

  • Bug fix for launching on Windows Vista and Windows 2008.

Version 2.49, 9th December 2008
Version 2.49 includes the following functionality:

  • Bug fix for obscure "The Handle is invalid." error message that can happen during launch.
  • Bug fix for launching on Windows Vista and Windows 2008.

Version 2.48, 24th November 2008
Version 2.48 includes the following functionality:

  • Code hooking rationalisation.
  • Bug fix for -fileLocations command line switch.
  • Bug fix for data corruption in tree/grid control class hierarchy.

Version 2.47, 23rd October 2008
Version 2.47 includes the following functionality:

  • Robustness maintenance.

Version 2.46
Version 2.46 includes the following functionality:

  • Addition of support for Symbol Servers.
  • Detection of incorrect linking with C runtime version for Visual Studio 2005/2008 to detect coredll.dll (a WinCE dll) type errors.
  • Detection of launching applications from windows\system32 or injecting into applications/services running from windows\system32.
  • Bug fix for sampling mode.
  • Addition of 32 bit executable test.

Version 2.45
Version 2.45 includes the following functionality:

  • Bug fix for missing filename while hooking.
  • Bug fix for Session Manager dialog.

Version 2.44
Version 2.44 includes the following functionality:

  • Bug fix for Session Manager dialog, attach dialog and attach wizard.

Version 2.43
Version 2.43 includes the following functionality:

  • Addition of bar graph performance statistics on main displays.
  • Sorting behaviour improvement for relations tab.
  • Bug fix for missing fileName, lineNumber on main displays when line timing enabled (line timing fileName and lineNumber are OK).

Version 2.42
Version 2.42 includes the following functionality:

  • Bug fix for crash with inject wizard.
  • Bug fix for background colour on some resizing graphical dialog boxes.
  • Bug fix for source code display possible crash when in a splitter window.

Version 2.41
Version 2.41 includes the following functionality:

  • Bug fix for crash with settings dialog File Locations.
  • Replacement of all 3rd party tab controls with a custom tab control.
  • Bug fix for source code control and misc controls flickering when resizing in a splitter window.

Version 2.40
Version 2.40 includes the following functionality:

  • Bug fix for race condition that caused <please wait...> and <UNKNOWN> symbol names to fail to resolve to valid symbol names. You will still get these symbol names, as they are displayed whilst waiting for the symbols to arrive from the stub, however they will now resolve.
  • Bug fix for hooking using Delphi MAP data, to handle .itext segments.
  • Addition of -fileLocations command line argument.
  • Addition of Export and Import options to File Locations settings dialog.
  • Bug fix for settings dialog to allow correction selection of specified tab.
  • Update to licensing dialog to prevent confusion with example application.
  • Minor bug fixes.

Version 2.39
Version 2.39 includes the following functionality:

  • Replacement of all 3rd party grid/tree controls with the same virtual grid/tree control used for the main displays. This change has been made for consistency of user interface and also to facilitate future ports of the software to alternate operating systems and widget toolkits.
  • Bug fix for flickering main display when resizing.
  • Column sort highlighting - arrow on column header and colour column colour hinting for the entire column.
  • New layout for setting dialog, to make settings dialogs as similar as possible across the entire Software Verify product range.
  • New default colours - click Reset on settings dialog to get them (other settings will change as well!)

Version 2.38
Version 2.38 includes the following functionality:

  • Bug fix for instrumentation.
  • Bug fix for cached instrumentation data date error when map file has earlier timestamp than DLL.
  • Improved Delphi MAP file reading.

Version 2.37
Version 2.37 includes the following functionality:

  • Bug fix for some code that could cause Data Execution Prevention violations if you had this Operating System option enabled.

Version 2.36
Version 2.36 includes the following functionality:

  • Improved detection method for .Net modules.
  • Bug fix for "The handle is invalid" error when trying to launch applications.

Version 2.35
Version 2.35 includes the following functionality:

  • Performance improvement for reading and writing instrumentation cache files.
  • Performance improvement for reading files.
  • Inclusion of helper application to delete symbol cache files.
  • Bug fix for instrumentation caching revocation.
  • Addition of -sourceFileFilterHookFile command line option, see help for details.

Version 2.34
Version 2.34 includes the following functionality:

  • Bug fix for Callstack view thread updating.

Version 2.33
Version 2.33 includes the following functionality:

  • Bug fix for stack overflow bug inspecting dependent DLLs on very large applications.
  • Provisional support for Visual Studio 9.0/2008

Version 2.31
Version 2.32 includes the following functionality:

  • Bug fix for source code colouring.
  • Bug fix for uninitialised data.

Version 2.31
Version 2.31 includes the following functionality:

  • Bug fix for crash when double click on Reset button on settings dialog.
  • Misc maintenance improvements.
  • Bug fix for callstack view.

Version 2.29
Version 2.30 includes the following functionality:

  • Bug fix for race condition (causes crash) for inter process comms one multi core/cpu machines. Bug is not visible on HyperThreaded machines or single cores CPUs. Bug has been seen on dual core CPUs, but is more obvious on dual core quad CPU machines.

Version 2.29
Version 2.29 includes the following functionality:

  • Minor bug fixes.

Version 2.27
Version 2.28 includes the following functionality:

  • Shared memory data access lock bug fix for Raw Statistics and Analysis tabs.

Version 2.27
Version 2.27 includes the following functionality:

  • Source code colouring - more languages supported.
  • File dialog file extension handling improvements.
  • Launch dialog/wizard - addition of Delete button.

Version 2.25
Version 2.26 includes the following new functionality:

  • Addition of line timing performance warning dialog.

Version 2.25
Version 2.25 includes the following new functionality:

  • Support for instrumenting Borland BPL files.

Version 2.24
Version 2.24 includes the following new functionality:

  • Support for launching .Net 1.0/1.1/2.0 applications.

Version 2.23
Version 2.23 includes the following new functionality:

  • IMproved HTML Help handling.

Version 2.22
Version 2.22 includes the following new functionality:

  • "Help PDF" added to Help menu if PDF help file is present in installation directory.
  • Bug fix for installer.
  • Behaviour change for Global Hook DLL handler.

Version 2.21
Version 2.21 includes the following new functionality:

  • Feature Improvement: (Customer request) Multiple Memory Validator instances now supported for "Inject" and "Wait for Application" as well as for launching.
  • Bug fix: Any .NET DLLs loaded by the instrumented process will be ignored.
  • Modified launch, inject and wait for application topics to include references to new help topics explaining possible reasons for failure to inject. Updated help topics related to working with services. New Help topics on:
    • What causes Inject or launch to fail?
    • Why are some functions not hooked?
    • Why are some lines not hooked?

Version 2.20
Version 2.20 includes the following new functionality:

  • Bug fix for load/saving settings.
  • Updated scrollbar handling for editor component.
  • Bug fix for COFF/CodeView debugging info reading.

Version 2.19
Version 2.19 includes the following new functionality:

  • Text change for HTML export to bring into line with statistics tab.

Version 2.18
Version 2.18 includes the following new functionality:

  • Bug fix for relations tab.

Version 2.17
Version 2.17 includes the following new functionality:

  • Bug fix crash caused when hooking the "initialization" functions identified by Borland debugging data.

Version 2.16
Version 2.16 includes the following new functionality:

  • Bug fix for timing data error for functions that have not exited when program ends (for example if you exit prior to the end of the application).
  • Bug fix for UI display bug on relations tab.
  • Bug fix for session manager dialog.

Version 2.15
Version 2.15 includes the following new functionality:

  • Bug fix for various memory leaks.

Version 2.14
Version 2.14 includes the following new functionality:

  • Addition of extra diagnostic data for helping diagnose problems when data goes bad.
  • Bug fix for rare crash whilst instrumenting code.
  • Bug fix for divide by zero error.

Version 2.13
Version 2.13 includes the following new functionality:

  • Addition of filtering on module name for Display filters.
  • Bug fix for potential buffer overflow when command line of tested application is very long (MAX_PATH + 256 TCHARs).
  • Command line displayed on diagnostic tab.
  • Detailed command line displayed on diagnostic tab when in regression test mode.
  • Detection of StarDock Window Blinds so that it can be safely ignored.
  • Addition of Return Codes to command line documentation.

Version 2.12
Version 2.12 includes the following new functionality:

  • Maintenance release.

Version 2.11
Version 2.11 includes the following new functionality:

  • Bug fix for diagnostic tab when loading or switching sessions.
  • Bug fix for tutorial handling and tip of day.
  • Improved line timing display.

Version 2.10
Version 2.10 includes the following new functionality:

  • Bug fix for processor frequency adjustment when reading session on different computer to the computer the session was recorded.
  • Customer request: Configure Columns now includes a Reset button.
  • Customer request: Raw Statistics, statistics, Relations and File and Lines now include additional context menu item to auto size column widths.
  • Addition of Recursive Count to Call Tree, Call Graph and Analysis.
  • Addition of Recursive symbols to Analysis.
  • Addition of two new queries to Analysis: Recursing function and Recursing function depth.

Version 2.09
Version 2.09 includes the following new functionality:

  • UI modifications for launch dialog.
  • Bug fix for Global Hook UI DLLs.

Version 2.08
Version 2.08 includes the following new functionality:

  • Bug fix for refresh bug with source code display component.
  • Maintenance release.

Version 2.06
Version 2.07 includes the following new functionality:

  • Bug fix for failing to load MFC80(u)(d).DLL symbols.
  • Minor user interface changes.

Version 2.06
Version 2.06 includes the following new functionality:

  • Bug fix for export timestamp.
  • Bug fix for display filters and call graph user interface.
  • Bug fix for call graph export.
  • Bug fix for UI Global Hook intercept dialog.
  • Bug fix for DLL Hooking.

Version 2.04
Version 2.05 includes the following new functionality:

  • Resizable session compare dialog.
  • Bug fix for command line handling for call tree/call graph.

Version 2.04
Version 2.04 includes the following new functionality:

  • Bug fix for Find dialog on Analysis, Call Tree and Call Graph views.
  • Data display bug fix for call tree and call graph.

Version 2.02
Version 2.03 includes the following new functionality:

  • Maintenance release.

Version 2.02
Version 2.02 includes the following new functionality:

  • Addition of Call Graph Export.
  • Change to function of command line argument -exportAsHTML.
  • Addition command line arguments: -exportAsCallTreeHTML, -exportAsCallGraphHTML, -exportDescription, -exportThreshold.

Version 2.00
Version 2.01 includes the following new functionality:

  • Addition of Javascript to exported HTML to enable the the exported graph to be interactive.

Version 2.00
Version 2.00 includes the following new functionality:

  • Beta test complete. Full product release.

Version 1.23
Version 1.23 includes the following new functionality:

  • Bug fix for rare stack overflow bug whilst iterating performance data.

Version 1.22
Version 1.22 includes the following new functionality:

  • Registry data saving bug fix.

Version 1.21
Version 1.21 includes the following new functionality:

  • Addition of threshold facility to Call Graph tab.
  • Update to accomodated debug format change with Visual Studio 2005.

Version 1.20
Version 1.20 includes the following new functionality:

  • Bug fix for application specific instrumentation crash.
  • Bug fix for filters - context menu filtering now supports multiple selection.
  • Bug fix for possible crash whilst walking callstacks. Bug seen with a Delphi application.
  • Editable threshold value on Call Tree tab - you can now enter fractions if you desire.

Version 1.19
Version 1.19 includes the following new functionality:

  • Maintenance release.
  • Editor component maintenance updated.
  • Bug fix for Call Graph tab.

Version 1.18
Version 1.18 includes the following new functionality:

  • Addition of -- comment facility for -commandFile arguments.

Version 1.17
Version 1.17 includes the following new functionality:

  • Relations tab 'promote' behaviour change.
  • Bug fix for setting instrumentation filters from context menu - settings saved to registry immediately.

Version 1.15
Version 1.16 includes the following new functionality:

  • Automatic file association.
  • Bug fix for column order editing.
  • Misc tab of settings dialog updated to allow control over diagnostic disassembly of failed hooks.
  • Line timing information displays updated to include "----" visit count and line time for lines that could not be hooked.
  • Bug fix for whole program optimization code rearrangement interfering with line timing display.

Version 1.14
Version 1.15 includes the following new functionality:

  • Bug fix for load session on command line.
  • Bug fix for Reset launch history on launch application dialog.
  • Bug fix for thread detection on Windows 2000/Windows XP.

Version 1.13
Version 1.14 includes the following new functionality:

  • Editing options expanded to include Visual Studio.NET 2002, 2003, 2005, SCiTE editor.

Version 1.12
Version 1.13 includes the following new functionality:

  • Bug fix for Unicode environment variables.

Version 1.12
Version 1.12 includes the following new functionality:

  • Maintenance release.

Version 1.11
Version 1.11 includes the following new functionality:

  • Addition of controls on Raw Statistics, Statistics, Call Tree, Call Graph and Line Timing to switch from horizontal splitter to vertical splitter and vice versa.
  • Improved selection of fixed width fonts for use in source code viewing pane.
  • Bug fix for settings.

Version 1.10
Version 1.10 includes the following new functionality:

  • Command line improvements.
  • Improved help describing command line options.

Version 1.09
Version 1.09 includes the following new functionality:

  • New warnings for .NET applications on Launch dialog.

Version 1.08
Version 1.08 includes the following new functionality:

  • Removal of DLLs not to hook settings.
  • Improvement of Hooked DLLs settings to provide control over hooking and not hooking of DLLs.
  • Support for * wildcard for DLL specification on Hooked DLLs settings.
  • Addition of extra control on Hook Insertion settings.
  • Addition of new command line option -dllHookFile.

Version 1.07
Version 1.07 includes the following new functionality:

  • Implementation change: When no source code available, the editing pane displays "No Source".
  • Bug fix for session manager compare.
  • Help updated.

Version 1.06
Version 1.06 includes the following new functionality:

  • Option to prevent scrolling of first column on Raw Statistics, Statistics, Relations and File Line views.
  • Display colouring improvement for Raw Statistics, Statistics, Relations.
  • Injection feedback bug fix.

Version 1.05
Version 1.05 includes the following new functionality:

  • Addition of Average Function time column to Raw Statistics, Statistics and Relations views.
  • Bug fix for various incorrectly displayed statistics.
  • Addition of recursing symbols to Call Tree display.
  • Addition of recursing symbols to terminating recursions in Call Graph display.
  • Correction of statistics calculation and display on Call Tree and Call Graph displays.
  • Correct handling of setjmp/longjmp.

Version 1.04
Version 1.04 includes the following new functionality:

  • Help now supplied as HTML Help rather than WinHelp.

Version 1.03
Version 1.03 includes the following new functionality:

  • StatusBar update.
  • Addition of display filters to Raw Statistics, Statistics, Relations.
  • Addition of context menu items to Raw Statistics, Statistics, Relations.

Version 1.02
Version 1.02 includes the following new functionality:

  • StatusBar update.
  • Ctrl-Left click performs Go to graph node on Call Graph.
  • Bug fix for Goto graph node when destination node is part of collapsed parent node.
  • Addition of context menu items to Call Tree, Call Graph and Analysis for navigating from Call Graph to Call Tree, Analysis to Call Graph, Analysis to Call Tree, Call Tree to Call Graph, Node to Next Node, Node to Previous Node.
  • Change to icon display in Call Graph - icons now displayed in the tree, not the left margin.
  • Bug fix for Borland symbol handling crash.

Version 1.01
Version 1.01 includes the following new functionality:

  • Improvements to call graph.

Version 1.00
Version 1.00 includes the following new functionality:

  • New feature: Addition of Hotspot Call Graph to complement the Hotspot Call Tree.
  • Addition of Remove Entry functionality to allow pruning of the call tree and the call graph displays.
  • Addition of Find command on Tools menu and toolbar. The find functionality allows searching on the main user interfaces Raw Statistics, Statistics, Relations, Call Tree, Call Graph, Analysis and Line Times.

Version 0.99
Version 0.99 includes the following new functionality:

  • Bug fix for missing first item of performance data.
  • Misc bug fixes.

Version 0.98
Version 0.98 includes the following new functionality:

  • User interface improvement for Raw Statistics, Statistics, Relations and Line Times displays. A selected cell now highlights the whole line to make identifying the line when scrolling the display much easier.
  • Bug fix for loading and saving line timing information.

Version 0.97
Version 0.97 includes the following new functionality:

  • Archiving version update.
  • Bug fix for display diacritical characters and characters above 127.

Version 0.96
Version 0.96 includes the following new functionality:

  • Instrumentation bug fix for hooking code containing computed unconditional jmp instructions.

Version 0.95
Version 0.95 includes the following new functionality:

  • UI improvement for DLLs to Hook settings dialog.
  • Bug fix for settings load/save.
  • Files not to hook - can now filter by directory.
  • HTML Export and XML Export - can now export multiple files at once.
  • Class and Function filter - has symbol browser.
  • New context menu filters on all views for Filename, Directory and DLL.
  • Filtering bug fixes.

Version 0.94
Version 0.94 includes the following new functionality:

  • Bug fix for failing to instrument a DLL that has been filtered.

Version 0.93
Version 0.93 includes the following new functionality:

  • Class and function filter settings improvement.
  • Filtering capabilities added to the Context menu on all views.
  • Bug fix: Callstack window redrawn when session is completed.

Version 0.92
Version 0.92 includes the following new functionality:

  • Injection feedback speedup.
  • Bug fix for race-condition crash.

Version 0.91
Version 0.91 includes the following new functionality:

  • Time data now displayed in milliseconds rather than QueryPerformanceCounter and RDTSC processor cycle counts.
  • Time data can be displayed as HH:MM:SS:mmm.uu

Version 0.90
Version 0.90 includes the following new functionality:

  • Misc user interface bug fixes.

Version 0.89
Version 0.89 includes the following new functionality:

  • Bug fix for uninitialised data.

Version 0.88
Version 0.88 includes the following new functionality:

  • User Interface improvement - numbers formatted according to user's choice of locale.

Version 0.87
Version 0.87 includes the following new functionality:

  • Display of data bug fixes.
  • Bug fix register corruption in hook.

Version 0.86
Version 0.86 includes the following new functionality:

  • Bug fix for editor.

Version 0.85
Version 0.85 includes the following new functionality:

  • Licensing bug fix - only affects beta versions.

Version 0.84
Version 0.84 includes the following new functionality:

  • Bug fix for registry access.

Version 0.83
Version 0.83 includes the following new functionality:

  • Bug fix installer.
  • Bug fix for licensing.
  • Bug fix for callstacks walking on Windows XP, SP2.
  • Removal of SE_SECURITY_NAME privilege requirement for working with services.
  • Updated help.

Version 0.82
Version 0.82 includes the following new functionality:

  • Session comparison reimplemented.
  • Session comparison export reimplemented.

Version 0.81
Version 0.81 includes the following new functionality:

  • Improved session comparison functionality.
  • Bug fix for session loading.

Version 0.80
Version 0.80 includes the following new functionality:

  • Changed injection feedback mechanism to improve hooking.
  • Improved error reporting during hooking.
  • Fixed flashing callstack display on Windows XP.

Version 0.79
Version 0.79 includes the following new functionality:

  • Help update.
  • Context menu on tooltip support.
  • Bug fix for relations tab.
  • Grid/Tree control expand entry/collapse entry bug fix.
  • Various misc bug fixes.

Version 0.78
Version 0.78 includes the following new functionality:

  • Addition of User Privilege checks when accessing the Registry and setting debugging privileges.

Version 0.77
Version 0.77 includes the following new functionality:

  • Keyboard Accelerators.
  • Line timing now obey performance collectors.

Version 0.76
Version 0.76 includes the following new functionality:

  • Misc bug fixes.
  • RDTSC and Performance Counters timing improvement.

Version 0.75
Version 0.75 includes the following new functionality:

  • Uninitialized data bug fix for columns editing for multiple views.

Version 0.74
Version 0.74 includes the following new functionality:

  • Bug fix for Don't hook DLLs settings.
  • Bug fix for Source File Types settings.

Version 0.73
Version 0.73 includes the following new functionality:

  • Exported HTML files and Exported XML files support left/right alignment and comma separators, as defined in the data display section of the settings dialog.
  • Bug fixes for various column sorting and display issues.

Version 0.72
Version 0.72 includes the following new functionality:

  • Clipboard handling bug fix.

Version 0.71
Version 0.71 includes the following new functionality:

  • Support for multiple invocations of Performance Validator running at once.
  • Launch Dialog and Launch Wizard provide environment variable support.

Version 0.70
Version 0.70 includes the following new functionality:

  • Robustness improvements regarding lock acquisition.
  • Virtual tree control font bug fix.

Version 0.69
Version 0.69 includes the following new functionality:

  • Virtual grid/tree control graphics bug fix.

Version 0.68
Version 0.68 includes the following new functionality:

  • Bug fix for load and save settings.
  • Bug fix for editing various settings.

Version 0.67
Version 0.67 includes the following new functionality:

  • Maintenance release.

Version 0.66
Version 0.66 includes the following new functionality:

  • Column width saving/restoring improvement.
  • Bug fix for rare INVALID_HANDLE_EXCEPTION crash.

Version 0.65
Version 0.65 includes the following new functionality:

  • Bug fix for missing symbols when in sampling mode and sampling programs with very short execution times.
  • Addition of user confirmation of overwriting export HTML/XML files.
  • Addition of Analysis submenu and Relations option to context menus of all major user interfaces. The Analysis submenu provides pre-formed queries for use on the Analysis tab. The Relations option displays all related (parent/child) data for the selected data item.

Version 0.64
Version 0.64 includes the following new functionality:

  • Misc UI bug fixes.

Version 0.63
Version 0.63 includes the following new functionality:

  • New Feature: Global Hook DLL Detector.

Version 0.62
Version 0.62 includes the following new functionality:

  • Bug fix for Memory mapped file when line timing a large number of lines (Greater than 100,000).
  • User interface bug fix when deleting session.
  • Symbols bug fix.

Version 0.61
Version 0.61 includes the following new functionality:

  • Hook insertion optimization.
  • Bug fix for export session dialog.
  • Bug fix for cumulative time display for functions on line timing view.
  • Bug fix for filtering functions based on file location.
  • Bug fix for class::method/function instrumentation filter - now works with functions as well as lines.
  • Performance improvement: MAP files can be used to hook functions even without line number information.

Version 0.60
Version 0.60 includes the following new functionality:

  • Refinement of multi-select file open dialogs.
  • Configurable embedded statistics in source code view.

Version 0.59
Version 0.59 includes the following new functionality:

  • Multi-select file open dialog on various hook settings dialog tabs.

Version 0.57
Version 0.58 includes the following new functionality:

  • Bug fix: Hook Insertion tab did not correctly control hooking of statically linked CRT/MFC.
  • Misc Bug fixes.

Version 0.56
Version 0.57 includes the following new functionality:

  • Bug fix in stub for hooking during shutdown.
  • Misc bug fixes.

Version 0.56
Version 0.56 includes the following new functionality:

  • Bug fix for handle leak when in sampling mode.
  • New Callstack user interface to display selected thread's callstack. Very useful for quickly determining where all the time in a busy loop is going without needing to look at the other query interfaces such as Relations or Hotspots. This user interface is experimental and may be dropped if user reaction is not favourable.
  • Support for thread-naming via RaiseException, so that threads on the Callstacks user interface can be named.

Version 0.55
Version 0.55 includes the following new functionality:

  • Addition of back button to Relations tab to allow previous queries to be revisited.

Version 0.54
Version 0.54 includes the following new functionality:

  • Serialization bug fix.

Version 0.53
Version 0.53 includes the following new functionality:

  • Various "sample count" combo box/column header bug fixes.
  • Hotspot/File and Line expand/collapse bug fix.

Version 0.52
Version 0.52 includes the following new functionality:

  • Crash bug fix.
  • Bug fix for potential deadlock in PV during shutdown of application under test.
  • Colour editing bug fix.
  • Context menu alignment bug fix.

Version 0.51
Version 0.51 includes the following new functionality:

  • Bug fix for file handling for FORTRAN95.

Version 0.50
Version 0.50 includes the following new functionality:

  • Bug fix for displaying class and method names for classA::classB::methodC style classes.
  • Bug fix for broken launch dialog resource.

Version 0.49
Version 0.49 includes the following new functionality:

  • Bug fix for bad software merge.

Version 0.48
Version 0.48 includes the following new functionality:

  • New user interface settings for "Sampling" mode.
  • Bug fix for hotspots tab for "Sampling" mode.

Version 0.47
Version 0.47 includes the following new functionality:

  • Bug fix: Symbol resolution for Salford Software's FORTRAN 95.
  • Bug fix: Improved Borland C++ Builder and Borland Delphi symbol support.

Version 0.46
Version 0.46 includes the following new functionality:

  • More data collection bug fixes.

Version 0.45
Version 0.45 includes the following new functionality:

  • Data collection bug fixes.

Version 0.44
Version 0.44 includes the following new functionality:

  • Crash bug fix: Memory mapped file race condition bug fix.

Version 0.43
Version 0.43 includes the following new functionality:

  • Synchronization error bug fixes.
  • Improved support for Borland C++ Builder and Borland Delphi.

Version 0.42
Version 0.42 includes the following new functionality:

  • Support for Borland C++ Builder and command line compiler.
  • Support for Metrowerks C++ compiler.
  • Support for Borland Delphi.
  • Support for Salford Software's FORTRAN95.

Version 0.41
Version 0.41 includes the following new functionality:

  • Maintenance update. Misc bug fixes.

Version 0.40
Version 0.40 includes the following new functionality:

  • Mouse wheel support for editing component.

Version 0.39
Version 0.39 includes the following new functionality:

  • Improvement for symbol handling.
  • Editor component bug fix.

Version 0.38
Version 0.38 includes the following new functionality:

  • Enhanced editor component - embedded text can be aligned left or right.

Version 0.37
Version 0.37 includes the following new functionality:

  • Redraw bug fixes for enhanced editor component.

Version 0.36
Version 0.36 includes the following new functionality:

  • Feature change (user feedback): Raw Statistics, Statistics, Relations column width configuration can now be propogated to all other tabs automatically.
  • Feature change (user feedback): Data display can now include optional comma separators.
  • Data display can be left or right aligned (right align is useful when using commas).
  • Improvement to File and Line display.
  • Bug fix for drawing error on File and Line display when horizontally scrolled.
  • Improvement to timing calculations.
  • Source code display now includes visit count and time information.
  • New Data Display tab on settings dialog.
  • Updated help file.

Version 0.35
Version 0.35 includes the following new functionality:

  • Bug fix for code rewriting hooks.
  • Bug fix for crash if editing definitions damaged in registry.

Version 0.34
Version 0.34 includes the following new functionality:

  • Ability to cache instrumention data for function hooking.
  • Ability to cache instrumention data for line hooking.
  • Minor change to launch dialog in "dialog" user interface mode.
  • Bug fix for use with services.
  • Updated help file.

Version 0.33
Version 0.33 includes the following new functionality:

  • Feature change: Top pane on Relations tab now sorts based on column headers as well as combo box.
  • Bug fix for sorting on middle pane and bottom pane on Relations tab.

Version 0.32
Version 0.32 includes the following new functionality:

  • Bug fix for stack overflow when recursively calculating hotspots.
  • Improved support for services.

Version 0.31
Version 0.31 includes the following new functionality:

  • Bug fix for high speed callstack walk implementation when working with IIS and other highly multithreaded applications.

Version 0.30
Version 0.30 includes the following new functionality:

  • Faster callstack walking for improved "sampling" performance mode.
  • Addition of custom editor specification.
  • Bug fixes to instrumentation code.
  • New toolbar icons.
  • Updated help manual.

Version 0.28
Version 0.29 includes the following new functionality:

  • Bug fix for user interface crash.
  • Faster callstack collection for sampling mode.
  • Quoted arguments support on command line.

Version 0.28
Version 0.28 includes the following new functionality:

  • New feature: Double click on any entry on any tab will cause the selected entry to be displayed on the Relations tab with callering functions and called functions displayed..

Version 0.27
Version 0.27 includes the following new functionality:

  • Bug fix: Raw Statistics View. Clicking on first entry (when unsorted) would not display source code.
  • Bug fix: Statistics View. Clicking on first entry (when unsorted) would not display source code.
  • Bug fix: Relations View. Clicking on first entry (when unsorted) would not display source code.
  • Tooltips for the header row on all grid controls disabled, to allow easier resizing of columns.

Version 0.26
Version 0.26 includes the following new functionality:

  • Bug fix for symbol handling.

Version 0.25
Version 0.25 includes the following new functionality:

  • Bug fix for stack overflow when calculating hotspots on Hotspot and/or Analysis View. New implementation is iterative and cannot exhaust stack space.

Version 0.24
Version 0.24 includes the following new functionality:

  • Bug fix for hooking DLLs.

Version 0.23
Version 0.23 includes the following new functionality:

  • Maintenance build.

Version 0.22
Version 0.22 includes the following new functionality:

  • Bug fix:Map file only used when the date matches the DLL.

Version 0.21
Version 0.21 includes the following new functionality:

  • Performance improvement for tree control.
  • Improved function and line hooking algorithms.

Version 0.20
Version 0.20 includes the following new functionality:

  • Bugfix for hooking using MAP files to provide symbols.

Version 0.19
Version 0.19 includes the following new functionality:

  • Improvement to line timing algorithm.

Version 0.18
Version 0.18 includes the following new functionality:

  • Addition code for pvLicense.exe and Performance Validator to cope with Windows File Protection preventing the upgrade of DBGHELP.DLL to a more recent version than the default installed for Windows 2000.

Version 0.17
Version 0.17 includes the following new functionality:

  • Addition of reset statistics button on toolbar (and menu). This buttons resets all times and visit counts to zero. Added due to beta test feedback.
  • Potential deadlock during hooking algorithms, prevented.
  • Improved detection of functions in code sections. Previous algorithm had the potential to incorrectly identify data in code blocks as code. New algorithm use new PDB API to correctly identify functions.

Version 0.16
Version 0.16 includes the following new functionality:

  • Version V0.15 included an overzealous check for function jmps which prevented many functions from being hooked. V0.16 fixes this check.
  • Improved disassembly of functions.
  • Improved reporting of functions with no code, just return instructions.

Version 0.15
Version 0.15 includes the following new functionality:

  • Improved Line Timing display - shortest time of not visited lines now displayed as zero.
  • Improved Line Timing - line times now assigned to correct line (previously line was assigned the time for the previously executed line - which could be very misleading).
  • Class and Function filter for line timing now works correctly. You can now provide line timings on a per function, per class method or per class basis.
  • Hooked Source Files tab on setting dialog allows you to specify source files that should not be hooked or that should be hooked, allowing you to exclude parts of your application or to concentrate on parts of your application. This allows you to provide function and line timing on a per file basis. Be aware that if the class and function filter is setup at the same time you may end up filtering out all files/functions and no data will be collected at all - it is up to you to choose the appropriate settings for your application.
  • Misc deadlock avoidance improvements.
  • Display of data limited by threshold on Hotspots tab improved.
  • Improved editing of columns on all displays.

Version 0.14
Version 0.14 includes the following new functionality:

  • Bug fix for function re-writing hooks.
  • Bug fix for function hooking and line hooking. Both options can be enabled simultaneously without crashing the target application.

Version 0.13
Version 0.13 includes the following new functionality:

  • More Robustness improvement for function and line hooking.

Version 0.12
Version 0.12 includes the following new functionality:

  • Robustness improvement for function and line hooking.

Version 0.11

Version 0.11 has the following improvements and changes.

  • New Relations tab, displaying time consuming (or most visited) functions, their child functions and their parent functions.
  • New Line Timing tab, displaying times for individual lines.
  • New settings tabs to control line timing hooks.
  • New dialogs for launch, inject, wait (for both wizard and dialog modes)

Version 0.10

Version 0.10 has the following improvements and changes.

  • wWinMainCRTStartup or equivalent is now correctly hooked when attaching via CreateProcess(). This results in the majority of hotspots beign grouped under the main worker thread. All other hotspots are grouped per thread. DLL loads appear as separate hotspots at present.
  • Cursor right, cursor left and return key can now be used to expand, collapse and toggle the expand state on the hotspots and analysis tree controls.

Version 0.09

Version 0.09 has the following improvements and changes.

  • Statistics tab renamed Raw Statistics.
  • New Statistics tab that displays collated statistics from the raw statistics.
  • Changed default colours for hotspot graphs to improve readability.
  • New column, Class::Method.
  • Can sort columns by clicking on column headers.
  • Columns can be autosized by clicking close to the right hand edge of the column.
  • Column widths are stored between session.

Version 0.08

Version 0.08 has the following improvements and changes.

  • Bug fix for the global hook rejection filter on LoadLibrary(Ex). For the cases where the filter prevented the loading of a DLL, it was possible for some registers to be corrupted, resulting in unpredictable application behaviour.
  • Bug fix for multiple hooking methods with the same name in different DLLs ("operator new" is an example).
  • The hooking method for all functions for performance monitoring has been improved, and now handles exceptions correctly.

Version 0.07
Version 0.07 includes the following new functionality:

  • Extra error reporting relating to symbol tracking on diagnostic tab.
  • Bug fix for "automatically add to PDB search path". Paths are reset to match the file settings dialog/wizard prior to launching/injecting/waiting on an application. Paths are then rediscovered. This means that for situations where you have multiple versions of the same DLL in your development environment, the correct paths to your PDBs are used, rather than paths to PDBs in potentially other directories on your system than the particular DLL in use at the time.
  • Internal minor bug fixes.

Version 0.06

Version 0.06 has the following improvements and changes.

  • Robustness improvement for boundary condition on memory mapped file.

Version 0.05

Version 0.05 has the following improvements and changes.

  • Performance improvement for virtual scrolled tree when deleting all rows.
  • C++ names now demangled.
  • Directory of files found using file open dialog are added to the source code locations searched for source files.
  • Crash profiling apps when exceed the number of performance graph nodes fixed.

Version 0.04

Version 0.04 has the following improvements and changes.

  • Fixed editing component bug.
  • Misc. internal improvements.

Version 0.03

Version 0.03 has the following improvements and changes.

  • Fixed function hooker bug which meant that for some apps/modules no functions would be hooked.
  • Fixed structured exception handling bug which meant that if your application threw an exception, the profiling hooks would prevent the exception from being handled correctly.
  • Fixed various statistics display bugs.

Version 0.02

Version 0.02 has the following improvements and changes.

  • Improved handling of version.dll.
  • Internal bug fixes for tracking data.

Version 0.01

Initial beta version made available to selected beta testers. We would like your feedback on any bugs you may find, on the features and benefits of the software, and also feedback on features that you think are missing from the software but which you would find useful.

NT Service support is still under development. You can link to the NT Services Performance Validator support DLLs but don't expect Performance information to be displayed for services.

Help topic IDs are currently not correct.

Please provide us with feedback.

Regards.

Software Verify Performance Validator Team.