Coverage Validator x86 Change History
Coverage Validator x86 Change History
Version 10.10, 14 November 2024
Version 10.10 includes the following functionality:
- Addition of svlCVAPI.h and svlCVAPI.cpp to the API folder to provide a simple API for loading the Coverage Validator profilter into a target application and starting it.
- Instrumentation bug fix.
Version 10.09, 05 November 2024
Version 10.09 includes the following functionality:
- Bug fix for excess CPU usage by data comms thread when target process finishes executing.
Version 10.08, 11 October 2024
Version 10.08 includes the following functionality:
- Bug fix for potential deadlock when hooking a DLL.
- Bug fix for potential data access crash when hooking a DLL.
- Bug fix for potential data corruption when hooking a DLL.
- Bug fix for MS CRT usage in DWARF symbol reading DLL.
Version 10.07, 01 October 2024
Version 10.07 includes the following functionality:
- Improved DWARF debug information support. Can now correctly read versions 2, 3, 4 and 5.
- Improved software update dialog.
Version 10.06, 13 September 2024
Version 10.06 includes the following functionality:
- Bug fix for data race with diagnostic tab.
- Static analysis improvements.
Version 10.05, 30 August 2024
Version 10.05 includes the following functionality:
- Change to behaviour of File->Save. Now prompts you for a filename if you've never supplied one.
- Improved behaviour for internet floating licensing if there is no internet connection - better error messages and acquisition of licence once internet connection is restored.
- Change to Wait for Process dialog. It will now allow you to override the default behaviour and specify an executable on a path that doesn't currently exist - this allows for waiting for executables that will be created dynamically prior to launching.
Version 10.04, 06 August 2024
Version 10.04 includes the following functionality:
- This is a recommended download.
- Bug fix for potential deadlock when profiling your application.
- Performance optimization: when DLLs are loaded for inspection rather than execution we don't hook them.
Version 10.03, 01 August 2024
Version 10.03 includes the following functionality:
- Bug fix for DWARF parser. DWARF created by the Swift compiler is now correctly read.
- Bug fix for C/C++ language parser.
- New Swift language parser.
- Change to Native API: cvLoadProfiler(), cvStartProfiler() and loadValidatorIntoApplication() now return TRUE/FALSE status codes.
- Diagnostic Environment Variables tab now displays PATH environment variable in single path chunks. This makes viewing long paths much easier.
- Bug fix for potential deadlock when profiling your application.
Version 10.02, 21 July 2024
Version 10.02 includes the following functionality:
- Bug fix for potential crash in svlAdminService.
- Misc bug fixes in svlAdminService to improve reliability and robustness.
- Misc static code analysis bug fixes.
Version 10.01, 10 June 2024
Version 10.01 includes the following functionality:
- Faster display of end-of-session data after program closes.
- Updated Symbol Lookup settings dialog to provide new options and improve UX.
- Updated Symbol Load Preferences settings dialog to add new compilers.
- UX improvement for Path Substitutions to highlight substitutions for paths that don't exist and substitutions that don't exist.
- Bug fix for Path Substitutions to prevent path substitutions for paths that don't exist and substitutions that don't exist.
- ASP.Net Core dialog improved to examine .exe version information to identify the correct DLL to execute. This is required when .exe and .dll name are not similar.
- Addition of automatic Path Substitution option. Enabled by default.
- Application may be a service warning dialog now has a "Don't show me again" option.
- Don't Show Me Again settings include an option for the Application used Win32 Service API warning.
- Misc bug fixes.
Version 10.00, 30 May 2024
Version 10.00 includes the following functionality:
- Support for ASP.Net Core.
- New Launch menus and new launch dialog. Categories are now Application, Services, Web.
- Bug fix for .Net profiler crashing when resolving symbols due to profiler DLL being loaded and unloaded while CLR tries to find a suitable profiler.
Version 9.99, 27 April 2024
Version 9.99 includes the following functionality:
- Bug fix for data corruption. This is a recommended download.
-
Version 9.98, 24 April 2024
Version 9.98 includes the following functionality:
- Removal of copied dbghelp.dll, symsrv.dll, symsrv.yes, bordebug.dll files when target program finishes executing. This fixes "debugger can't load my symbols anymore" problems reported by a few people because these DLLs were being loaded by the debugger instead of the DLLs the debugger expected to load.
Version 9.97, 17 April 2024
Version 9.97 includes the following functionality:
- Bug fix for installer problem with automatic software updates failing to install licence keys. Once this update is installed future automatice software updates will work correctly.
- Bug fix for crash caused by memory corruption if you select an executable after clicking Choose Exe... on the Hooked DLLs part of the settings dialog.
- Bug fix for rarely seen deadlock during shutdown of application being monitored.
- Bug fix for writing data in the wrong part of the registry.
- Bug fix for .Net source code filters.
- Bug fix for .Net Hooked DLLs filters.
- Bug fix for .Net file extension filters.
- Bug fix for .Net class and method filters.
Version 9.96, 20 March 2024
Version 9.96 includes the following functionality:
- Improved auto-updating of fields with suggested values on Monitor IIS/ISAPI dialog.
- Bug fix for Monitor IIS/ISAPI dialog to prevent message queue getting overload and unresponsive.
- Bug fix for Monitor IIS ASP.Net dialog to prevent message queue getting overload and unresponsive.
- Bug fix for Monitor WDS ASP.Net dialog to prevent message queue getting overload and unresponsive.
- Updated ISAPI tutorial example.
- Updated ASP.Net tutorial example.
- Bug fix for phantom extra lines that ASP.Net may inject into a class definition.
- Minor bug fixes and continued improvement of secure data handling.
- Bug fix for DWARF symbol handling.
- Support for Embarcadero Delphi 12.0.
- Support for Embarcadero C++ Builder 12.0.
Version 9.95, 09 March 2024
Version 9.95 includes the following functionality:
- This is a recommended software update.
- Bug fix for data transfer not working if set to Automatic.
- Bug fix for PDB file reading for PDB files created with Visual Studio 6.
- Bug fix for MAP file handling.
- Bug fix for launching VB6 applications.
- Bug fix for memory mapped file handling with improved security access restrictions.
- Minor bug fixes and continued improvement of secure data handling.
- Bug fixes for C++ parser.
Version 9.94, 08 February 2024
Version 9.94 includes the following functionality:
- Changes to security attributes/descriptors placed on files and pipes etc. We no longer use default settings (Everyone all access), but restrict access to Admin/System/Interactive Users and Deny Guest.
- Improvements to security issues in various places in the codebase.
- Updated the service related examples to be Unicode.
- Improvements for launching ASP.Net, detection of attempting to view localhost with https which will lead to web browser complaints about a lack of security certificate.
- Improvements to monitoring a service.
- Improved handling of low memory conditions in string handling.
- Bug fix for ASP.Net - all methods in a C# file are shown for coverage, not just the ones that have been instrumented. This provides better coverage results for ASP.Net.
- Bug fix for ASP.Net dialog to prevent failure to specify a URL to open.
- New method for identifying services - we check the session id is zero.
- Added permissions checks for Data Transfer settings prior to launching/injecting/waiting on any process. This prevents trying to monitor a process without being able to communicate with it.
Version 9.93, 01 February 2024
Version 9.93 includes the following functionality:
- Software improvements due to static analysis with VisualLint and Gimpel PC-Lint.
- Bug fix for potential crash with DWARF symbol processing.
- Updated the profiler to only allocate from private Software Verify heaps and not the C runtime, leaving the C runtime undisturbed as much as possible (dbghelp, which we use to read PDB symbols uses the C runtime)>.
- Bug fixes for PE file reader.
- Memory leak fixes for PE file reader, found with Memory Validator.
- Bug fix for C# parser failing to correctly handle an @"info" quoted string containing backslashes.
- Bug fix for potential crash if NULL passed to Software Verify internal heap allocator.
- Removal of .xaml files from code coverage data.
Version 9.92, 13 December 2023
Version 9.92 includes the following functionality:
- Improved hooking for SetUnhandledExceptionFilter() by monitoring KernelBase.dll as well as kernel32.dll and api-ms-win-core-*.dll.
Version 9.91, 11 December 2023
Version 9.91 includes the following functionality:
- Bug fix for directory and filename concatenation when both '\' and '/' are used in the filename. This mainly affects users of C++ Builder x64, MingW, gcc, g++ and llvm.
- Miscellaneous 4K screen graphics improvements.
Version 9.90, 04 December 2023
Version 9.90 includes the following functionality:
- Bug fix for Subst Drives. Useful for when you copy a build off a build server onto a different drive letter but would like the filenames to continue to point to the correct place..
- Bug fix for drawing tree controls on 4K displays. The release a couple of weeks ago worked for some DPI levels, but failed for higher levels. Now working correctly.
Version 9.89, 02 December 2023
Version 9.89 includes the following functionality:
- Re-release 9.88 to fix the failure with the software release process for 9.88.
- This is a recommended download.
- Bug fixes for three crashes during shutdown (inside ExitProcess()) involving dbgHelp internals or CRT internals being incorrect.
- All threading synchronization primitives moved to the svlSupport.dll library, rather than included in each library. This has had the useful side effect of improving callstacks.
- At startup disk based data transfer files from any previous session are cleaned up. These are now done on their own thread, making for a faster startup for the case when a lot of files remain on disk if Coverage Validator was closed early by the user or a crash.
Version 9.88, 28 November 2023
Version 9.88 includes the following functionality:
- This is a recommended download.
- Bug fixes for three crashes during shutdown (inside ExitProcess()) involving dbgHelp internals or CRT internals being incorrect.
- All threading synchronization primitives moved to the svlSupport.dll library, rather than included in each library. This has had the useful side effect of improving callstacks.
- At startup disk based data transfer files from any previous session are cleaned up. These are now done on their own thread, making for a faster startup for the case when a lot of files remain on disk if Coverage Validator was closed early by the user or a crash.
Version 9.87, 21 November 2023
Version 9.87 includes the following functionality:
- Sessions are now destroyed on thier own thread. This means new Session creation is faster because any sessions requiring purging are pushed to their own thread for that - no waiting for the Session to be destroyed.
- Added error report when DllMain() for some Software Verify DLLs can't be hooked. This error report may be useful in diagnosing problems during shutdown of the target application.
- UX improvement - tree expand/collapse buttons are now easier to use because they are better sized on high DPI screens.
Version 9.86, 15 November 2023
Version 9.86 includes the following functionality:
Version 9.85, 07 November 2023
Version 9.85 includes the following functionality:
- Change to how the filename for the document that holds the session is created. It used to be created in the AppData\Local\Temp hierarchy. It is now created in AppData\SoftwareVerify\Bug Validator and has a name that indicates the date and time it was created.
- Change to Coverage Validator service API. svlCVStub_writeToLogFileA() writes ANSI strings as Unicode strings (previously they were written as ANSI).
- Change to Coverage Validator service API. svlCVStub_writeToLogFileW() writes Unicode strings as Unicode strings (previously they were written ANSI).
- Updated Native API documentation to improve readability and ease of use.
- Updated NT Service API documentation to improve readability and ease of use.
Version 9.84, 19 October 2023
Version 9.84 includes the following functionality:
- Added API function loadValidatorIntoApplication(); which can be used to start Coverage Validator from your application. Useful when the GUI methods for monitoring an application can't work.
- Added an example application to demonstrate loadValidatorIntoApplication();
- Added documentation for the above.
- Status indicator on Summary display to indicate if child processes have been launched, plus link to Diagnostics:Child Processes.
- Diagnostics:Child Processes tab now indicates number of child processes so that you can see there are child processes without needing to visit the tab.
- Bug fixes for double free of registry handles in certain situations.
- Data Transfer settings updated to include the ability to choose the data transport you want: Automatic, Disk, High Volume. The type of data transport influences which inter-process communication is method is used.
- Type of inter-process communication method is recorded on the diagnostic tab.
- Shared memory data transport settings updated to set the data throttling threshold based on the size of the page file, rather than a fixed constant.
Version 9.83, 06 October 2023
Version 9.83 includes the following functionality:
- This is a recommended software update.
- Bug fix for incorrectly display warning dialog on the launch dialog/wizard when trying to determine if Address Sanitizer is being used by the application being launched.
- If you are working with 32 bit applications using 32 bit Coverage Validator you should download this update.
- Bug fix for potential deadlock when reading symbols. Found using Thread Validator.
- Bug fix for incorrect search path for symbol reader helper program when profiling certain programs.
Version 9.82, 27 September 2023
Version 9.82 includes the following functionality:
- Update to handle DLL function importing by API Set rather than DLL name.
- This update fixes problems tracking child processes of some applications created with recent compilers that use API sets in the import address table rather than DLL names.
- If you've had problems monitoring child processes you should try this update.
Version 9.81, 14 September 2023
Version 9.81 includes the following functionality:
- Improvements to diagnostic log information for symbol server dbghelp.dll path and symsrv.dll failure to load.
- Addition of predefined symbol servers to the symbol server definition dialog.
Version 9.80, 29 August 2023
Version 9.80 includes the following functionality:
- Symbol server downloading symbols progress improvement for earlier symbol server symsrv.dll implementations (before VS 2008).
- C++ parser improvement.
Version 9.79, 26 August 2023
Version 9.79 includes the following functionality:
- Bug fix for .Net profiler to prevent stack buffer overflow when very long function names are encountered.
- Bug fix for .Net profiler to prevent stack buffer overflow when very long class names (generic/template most likely) are encountered.
Version 9.78, 25 August 2023
Version 9.78 includes the following functionality:
- Improved C/C++ parser.
- Added extra error detection for symsrv.dll loading when using symbol servers.
- Updated Symbol Lookup settings to better handle custom DbgHelp.dll settings and symbol servers.
- Updated Symbol Server dialog to prevent incorrect settings for symsrv.dll.
- symsrv.dll load errors reported on the main summary view.
- Installer bug fix for Visual Studio 2022.
- Bug fix for Event Log XML parser to handle a log file format change on Windows 11.
- Bug fix for help file downloading.
Version 9.77, 14 August 2023
Version 9.77 includes the following functionality:
- Performance optimization for instrumentation phase when filters are specified to exclude/include source files.
- Built in filters to exclude compiler vendor source/header files updated to include C++ Builder.
- Bug fix: Now possible to monitor native applications (as well as .Net application) launched by .Net processes (for example: Powershell).
- Improved error messages to the user on the Launch Dialog/Wizard.
Version 9.76, 01 August 2023
Version 9.76 includes the following functionality:
- If you use symbol servers you should download this version.
- Bug fixes for downloading symbols from symbol server. Some symbols would not download correctly. This was traced to a call to LoadLibraryEx() with the wrong parameters, which for some DLLs would work, and for others would result in exceptions inside DbgHelp.dll.
- Bug fixes for selecting the correct symbol download helper utility with the correct path and startup directory. There was a situation where this could get out of sync and then nothing worked. Now fixed.
- Additional error states from symbol servers are now recorded on the diagnostic tab.
- Bug fix for symbol session load preferences.
- Reduced the amount of error information reported on the diagnostic to remove redundant/duplicate information.
Version 9.75, 27 July 2023
Version 9.75 includes the following functionality:
- Minor changes to licence installation dialog to prevent user error.
- Improvements to message dialogs displayed when licensing errors are found running Bug Validator.
- Improvements to error messages on the Floating Licence/Educational Licence tab.
- Updated svlUXTheme.
Version 9.74, 14 July 2023
Version 9.74 includes the following functionality:
- .Net runtime and .Net framework detection improved - to prevent/ensure correct hooks are installed, depending on options chosen.
Version 9.73, 10 July 2023
Version 9.73 includes the following functionality:
- Logging improved to include symbol servers.
- When profiling x86 applications from x64 the wrong symsrv.dll was being loaded, resulting in a failure to download symbols.
- Microsoft has changed the debug string format that is sent to the DbgHelp symbol debugging callback, breaking our detection of the failure above.
- A failure to correctly identify a PDB file downloaded from a symbol server due to a case sensitivity mistake.
- Bug fix for incorrect search for downloaded PDB.
- Fixed incorrect report of missing line numbers for some PDBs downloaded from symbol servers.
- Symbol Server Misc settings dialog updated to handle keeping/clean svlDbgHelpReader log files.
- We now identify symbol servers that are offline/don't exist, as these result in timeouts leading to a lack of performance when fetching symbols.
- Symbol server dialog updates to show symbol servers that are offline/don't exist.
- Debug Information dialog updated to include information about symbol servers that are offline/don't exist.
- Summary panel updated to include information about symbol servers that are offline/don't exist.
- Handle forward slash in filepaths as well as backslash. Useful for MingW/gcc/g++.
Version 9.72, 06 June 2023
Version 9.72 includes the following functionality:
- Bug fix for symbol path behaviour to prevent additional paths relating to symbol server cache directories being added to the symbol path.
Version 9.71, 05 June 2023
Version 9.71 includes the following functionality:
- Miscellaneous software updates.
- Minor performance improvement, don't try to fetch symbols for DLLs that are resource only.
Version 9.70, 23 May 2023
Version 9.70 includes the following functionality:
- Improved detection of .Net execution engine for .Net and .Net Core.
- Improvements to the Application to Monitor dll for .Net Core applications (framework dependent and self-contained).
- Bug fix for monitoring child processes of .Net Core applications.
- Bug fixes for monitor child process.
- Bug fixes for example applications.
- Bug fixes for fetching symbols from symbol servers.
Version 9.69, 21 May 2023
Version 9.69 includes the following functionality:
- UX improvement: The behaviour of Coverage Validator in admin mode more closely matches behaviour in non-admin mode.
- Improvements to the .Net Core launch dialog.
- Misc bug fixes.
Version 9.68, 11 May 2023
Version 9.68 includes the following functionality:
- Improved Coverage Validator DLL deployment for IIS/ISAPI.
- Improved Coverage Validator DLL deployment for IIS/ASP.Net.
- Improved IIS/ISAPI/ASP.Net logging of instrumentation process.
- Changed profiler DLL loading priority when loaded from the service API - looks in the same directory as the EXE (or DLL for IIS) and if it can't load the profilter DLL from there, will load the profiler DLL from the Valiadtor installation directory.
- Bug fixes for disk based data transport used when shared memory is not available (in IIS and some services). Data races resulting in failing data transport fixed.
- If you're working with IIS and/or services or the NT Service API this is a recommended download.
Version 9.67, 25 April 2023
Version 9.67 includes the following functionality:
- Improved UX for data transfer settings dialog. Now checks directories have correct permissions for IIS and Validator, plus optional automatic setting of permissions and links to explanatory articles.
- Improved UX for all dialogs that interact with IIS - will check that data transfer directories are correctly set up and if not, prompt to set them up.
- UX Improvement for Web Development Server dialog. Automatic setting of web root permissions for User.
- UX Improvement for Web Development Server dialog. Prompts to show how to set permissions manually if automatic settings fail.
- Bug fixes and additional safety measures added to SVL Admin Service.
- Bug fix for hang caused by attempt to display a dialog box to warn about something inside of IIS.
Version 9.66, 13 April 2023
Version 9.66 includes the following functionality:
- IIS related dialogs now include Opera and Brave browsers with Chrome, Edge, Firefox and Internet Explorer (kept for users on legacy systems).
- UX Improvement for IIS Monitor ISAPI dialog. Automatic setting of web root permissions for User and IIS_IUSRS.
- UX Improvement for IIS Monitor ISAPI dialog. Prompts to show how to set permissions manually if automatic settings fail.
- UX Improvement for IIS Monitor ASP.Net dialog. Automatic setting of web root permissions for User and IIS_IUSRS.
- UX Improvement for IIS Monitor ASP.Net dialog. Prompts to show how to set permissions manually if automatic settings fail.
- Bug fix for setting environment variables for monitoring .Net applications.
- Misc bug fixes.
Version 9.65, 04 April 2023
Version 9.65 includes the following functionality:
- UX Improvement for Wait For Process dialog - improved error handling for wait for service, with suggestions for the correct way to monitor a service.
- UX Improvement for Wait For Process dialog - improved error handling for wait for service child process, with suggestions for the correct way to monitor a process running on a service account.
- UX Improvement for Inject into Process dialog - improved error handling for failing to inject into a process running as admin.
- Misc bug fixes.
Version 7.05, 04 April 2023
Version 7.05 includes the following functionality:
- UX Improvement for Wait For Process dialog - improved error handling for wait for service, with suggestions for the correct way to monitor a service.
- UX Improvement for Wait For Process dialog - improved error handling for wait for service child process, with suggestions for the correct way to monitor a process running on a service account.
- UX Improvement for Inject into Process dialog - improved error handling for failing to inject into a process running as admin.
- Misc bug fixes.
Version 9.64, 17 March 2023
Version 9.64 includes the following functionality:
- Bug fix for trying to read TDS debug information from a .bpl or .def file in an administrator mode directory.
Version 9.63, 10 March 2023
Version 9.63 includes the following functionality:
- This is a recommended download if you use Delphi or C++ Builder.
- Bug fix for TDS debug information reading - we can now identify additional functions compared to earlier versions.
- Improved code coverage results for Delphi (x86 and x64) and C++ Builder x86 applications.
Version 9.62, 09 March 2023
Version 9.62 includes the following functionality:
- Bug fix for editing toolbar (cut and copy were swapped compared to the icons) in internal source code editor.
- Bug fix for C++ parser.
Version 9.61, 17 February 2023
Version 9.61 includes the following functionality:
- Improved handling of shutdown of application being monitored by the GUI.
- Bug fix for file selection on settings dialog "File Locations".
- Bug fix for identifying Visual Studio source code install location when searching for files from File Locations settings.
- Change to code instrumentation method, plus small increase in speed.
- Installer bug fix.
Version 9.60, 07 February 2023
Version 9.60 includes the following functionality:
- Update to detect Windows 11 operating system.
- Maintenance release.
Version 9.59, 03 February 2023
Version 9.59 includes the following functionality:
- Improved Out of Date DLLs dialog UX.
Version 9.58, 11 January 2023
Version 9.58 includes the following functionality:
- Bug fix for Stub Global Hook detection.
Version 9.57, 10 December 2022
Version 9.57 includes the following functionality:
Version 9.56, 28 November 2022
Version 9.56 includes the following functionality:
- Misc bug fixes.
- Updated UX Theme.
Version 9.55, 27 October 2022
Version 9.55 includes the following functionality:
- Floating licencing bug fix.
- Added initial support for Rust programming languge.
- Data entry bug fix - prevent informative error dialog displaying in wrong situation.
- Simplified UX for the File Locations dialog, plus improved options for file searching.
- Updated Help menu.
- Miscellaneous bug fixes.
- Updated documentation.
Version 9.54, 22 October 2022
Version 9.54 includes the following functionality:
- Symbol fetching bug fix.
- Updated Help menu.
- Minor bug fixes.
Version 9.53, 03 October 2022
Version 9.53 includes the following functionality:
- New functionality: Out of date DLL detection. If DLLs are detected that have source code that is more recent than the build date of the DLL, the data for that DLL and the source file will be coloured differently to draw your attention to this. A message will be displayed on the main dashboard.
- Bug fix for parsing XML event log data when it contained double quotes but parser was expecting single quotes.
Version 9.52, 13 September 2022
Version 9.52 includes the following functionality:
- Bug fix for branch detection with case statements that have no braces.
- Bug fix for C++ parser.
- Bug fix for DWARF symbol processing.
- Bug fix for reseting .Net profiler environment variables - to stop the profiler accidentally starting when you run a .Net process outside of Coverage Validator.
Version 9.51, 09 August 2022
Version 9.51 includes the following functionality:
- Addition of new page to the First Run Wizard - build example projects.
- Bug fix for Symbol Lookup settings.
- Bug fix for service library.
- Bug fix for failure to attach to a launched application when the user specifies the PATH environment variable on the launch dialog.
- Addition of bad path colouring for PATH environment variable on the environment variables dialog (from launch dialogs/wizards).
- Bug fix for path substitution.
- Improved default IIS user name suggestion on IIS related dialogs.
Version 9.50, 20 July 2022
Version 9.50 includes the following functionality:
- Updated licence key entry to be aware of multiple different whitespace equivalents for various languages.
- Bug fix for floating licensing. If you are using floating licensing you want this bug fix.
Version 9.49, 08 July 2022
Version 9.49 includes the following functionality:
- Reduction in CPU usage consumption for floating licence thread.
- Improved end of session detection for data transport from target application.
- Hooked File Extensions addition of new option for Hook All, Only Hook and Don't Hook to make using these filters similar to other filters.
- Source Files Filters addition of new option for Hook All to make using these filters similar to other filters.
- Improved the accuracy of filtering - some filters now have narrower tolerances for matching a filter, allowing for more accurate filters to be used.
- Bug fix for symbol fetching.
Version 9.48, 24 June 2022
Version 9.48 includes the following functionality:
- Improvement to session timeout handling to catch those few applications that run as a service that need a timeout.
- Bug fix for licence server global floating licences (development only, not available yet) reporting licences in use when licence has been released.
- Refactored Floating licence GUI and Auto test GUI.
Version 9.47, 20 June 2022
Version 9.47 includes the following functionality:
- Bug fix for testing if service (or application linked to a service) is linked to the NT Service API.
- Bug fix for instrumentation caching.
- Static analysis bug fixes.
- Additional logging added to NT Service API.
- Bug fix for data race in GUI.
- New NT Service API call: svlCVStub_ShutdownCoverageValidator()
- Data race bug fixes for Floating Licence handling.
- Addition of timeout to improve process-has-finished handling for the few applications that don't handle this well - usually processes running on a service account that don't allow their process handle to be opened.
- Bug fix for missing installer dependency on vanilla machines with no installs.
Version 9.46, 03 June 2022
Version 9.46 includes the following functionality:
- Improved UX for Auto Merge settings.
- Bug fix for source code code scrolling drawing error on DPI scaled displays.
- Instrumentation behaviour updated to match the Instrumentation Settings user interface (it had got out of step for a short while).
- Updated installer to only ask about closing Visual Studio after the choice for installing Visual Studio menus has been made.
- Improved how/why symbols get loaded to reduce the likelihood of symbols being loaded that are not needed. This can speed things up quite a bit if a symbol server has been configured.
Version 9.45, 31 May 2022
Version 9.45 includes the following functionality:
- Bug fix PDB symbol reader.
- Bug fix for code coverage auto merge.
- UX improvements for code coverage auto merge dialog - preventing bad central session directory/filename specification.
- Additional microsoft include file filtering/
- Various static analysis bug fixes.
Version 9.44, 23 May 2022
Version 9.44 includes the following functionality:
- Bug fix for Hooked DLLs.
- Bug fixes for licence server.
- Bug fixes for incorrect test with FindFirstFile().
- .Net profiler - fix for potential hang.
- Bug fix for launch wizard/dialog, can no longer select hidden GUI by accident, will only hide GUI if target application is a console application.
- Bug fix for summary display.
- Program type and data collection type (native, .Net, mixed mode) displayed on summary display.
- Performance improvement (detected with Performance Validator).
- Reliability improvement for memory mapped data transport when other end of the data comms dies unexpectedly.
Version 9.43, 26 April 2022
Version 9.43 includes the following functionality:
- Static analysis bug fixes.
- Misc bug fixes.
- Support for licence server.
- Improved Loaded Modules dialog. Additional columns to indicate native/managed/mixed-mode and Debug/Release dll status.
Version 9.42, 07 April 2022
Version 9.42 includes the following functionality:
- Bug fix for toolbar launch icon enabled/disabled status.
- Data transport improvement - reduced locking.
- Improved registry access handling.
- Bug fix PE file entry point type recognition. Incorrect classification of C++.Net applications as native now fixed.
Version 9.41, 30 March 2022
Version 9.41 includes the following functionality:
- Addition of command line builder button to launch dialogs and launch wizard to allow you to easily generate a usable command line from a known working launch configuration.
Version 9.40, 27 March 2022
Version 9.40 includes the following functionality:
- Addition of Command Line Builder to help you create command lines to invoke Coverage Validator. See Launch menu.
- Performance improvement for exporting sessions.
- Updated export HTML/XML dialog.
- Additional option for exporting from GUI: coverage by DLL (both HTML and XML).
- Additional option for exporting from command line: -exportType DLL.
- Bug fix for progress dialog. If has a NULL windows prevent it from causing all windows on screen from flickering if Invalidated.
Version 9.39, 22 February 2022
Version 9.39 includes the following functionality:
- File paths specified inside the -fileLocations can have environment variables specified as part of the path. The env var is resolved when it is imported from the file.
- File Locations user interface now reports how many file locations are specified.
- Performance improvement if you have many paths specified in the File Locations source paths or 3rd party source paths.
- Improved Export status messages
- Added a warning dialog to indicate when source files don't include path information. Updated related help.
- Diagnostic environment variable display now displays Coverage Validator env vars, target application env vars, and any errors substituting env vars in strings, allowing you to debug env var usage inside Coverage Validator.
- More information about using environment variables and how to debug them in this article: https://blog.softwareverify.com/using-and-debugging-environment-variables
Version 9.38, 11 February 2022
Version 9.38 includes the following functionality:
- UX improvement. Removal of dialog asking about a symbol directory. We now check for the existence of this directory and add it to the PDB paths automatically.
- Diagnostic tab. Addition of new categories "Symbol Errors" and "Symbol Success" allowing you to more easily identify symbol failure or symbol success messages.
- Bug fix for instrumentation of Delphi applications.
- Change of default instrumentation settings. Default is to use Debug Information only. If you want to use MAP files, you'll have to explicitly choose that option from now on.
- Bug fix for positioning of Coverage Validator at startup. It will now redisplay where it used to be shown, and if it can't (because of monitors changing size or position) it will work out a sensible place to display itself.
Version 9.37, 07 February 2022
Version 9.37 includes the following functionality:
- Bug fix for reading debug symbols for DLL in directories that are write protected or require admin privileges to write files.
- Bug fix for symbol reader helper utility programs.
- Updated API and NT Service API related header files with extra information about which header files to use for which task.
- Update API and NT Service API documentation.
- Additional checks built into the start Validator from service code to check that the data transfer directory exists and is writeable.
Version 9.36, 28 January 2022
Version 9.36 includes the following functionality:
- Additional work to clear .Net profiler env vars after a .Net process successfully attaches to the profiler.
Version 9.35, 18 January 2022
Version 9.35 includes the following functionality:
- Diagnostic data improvements.
- Misc robustness improvements to the instrumentation algorithm.
- Improvements to PDB/TDS/MAP handling.
Version 9.34, 05 January 2022
Version 9.34 includes the following functionality:
- Additional checks for Address Sanitizer. Now checks the PE file exports and the symbols.
- Addition of new automatic filters for statically linked files from VS 2019 & 2022.
- Updated FORTRAN keyword colouring rules to include FORTRAN 2003, 2008.
- File Locations settings updated to prevent non-directory locations from being added to the list of directories.
- File Locations settings when loaded are checked to see if they reference files, and if so are converted to directory locations if possible.
Version 9.33, 23 December 2021
Version 9.33 includes the following functionality:
- Added prevention of hooking Intel Fortran Runtime libraries.
- Addition of incompatibility check for Address Sanitizer usage when launching an application.
- Bug fix for potential crash (race condition) on diagnostic child process view.
- Update to the svlCVStubService libraries, static /MD and static /MT versions (debug and release) are now available.
- Maintenance release: Software Verify UX Theme moved into it's own library.
Version 9.32, 18 November 2021
Version 9.32 includes the following functionality:
- This is a recommended download.
- Support for Visual Studio 2022.
- Updated Service API to have more detailed logging output. If you enable logging you'll also get the internal Software Verify logging data that will make understanding the service error codes so much easier.
- Bug fix for .Net Core DLL detection, added DLL entry point type to make the specification stricter.
- Addition of Env Vars diagnostic tab so that you can easily see what environment variables are set in the process you are monitoring (or the process you've just launched, intending to monitor a child process).
- Addition of Child Processes diagnostic tab so that when you are trying to work out which child process to monitor, you can see which applications are launched by a given process.
- Symbol Load Preferences now a main setting group on the settings dialog.
- Symbol Load Preferences added to first run wizard.
- Bug fix for incorrect hooking exclusion of svldwarf.dll and .Net Core runtime dlls.
- UX improvement. When using the inject dialog/wizard on a 64 bit OS, it will indicate that 64 processes will not be shown by x86 Validator.
- Bug fix for potential out of memory error when trying to edit using Visual Studio.
- When a session starts Coverage Validator will change the display to a predefined display. Default value is Summary display. You can change this value from the settings dialog "Display Behaviour".
- When a session finishes Coverage Validator will change the display to a predefined display. Default value is no change of display. You can change this value from the settings dialog "Display Behaviour".
Version 9.31, 15 November 2021
Version 9.31 includes the following functionality:
- This is a recommended download.
- Launch dialog bug fix for specifying PATH substitution in launch environment variables. In some situations it would fail, now fixed.
- Launch dialog environment variables now supports PATH substitution for another environment variable also specified at launch time. For example: PATH_DLLS=c:\dlls PATH=%PATH%;%PATH_DLLS%
- Misc UX improvements for Symbol Lookup debug information child dialogs for MingW, Delphi, C++ Builder.
- Addition of Symbol Load Preferences dialog to allow you to choose which debug information formats are relevant for your project. Setting these correctly can reduce the time spent looking for debug info by not looking for debug formats you don't use. Access this via Symbol Lookup.
Version 9.30, 08 November 2021
Version 9.30 includes the following functionality:
- Added logging for various parts of the .Net profiler, so that we can trace QueryInterface() etc.
- Session export now allows choice of UTF16 LE, UTF8, ASCII export. Default is UTF16 LE to keep compatibility with previous versions.
- New command line arguments to allow you to specify the file encoding of exported files: -exportAsHTML_BOM -exportAsXML_BOM -exportMergedAsHTML_BOM -exportMergedAsXML_BOM -exportMergedAsXMLCobertura_BOM -exportAsXMLCobertura_BOM. Valid values are ASCII, UTF8, UTF16. See help for details.
Version 9.29, 29 October 2021
Version 9.29 includes the following functionality:
- Bug fix for a display error on Summary tab when a session is closed.
- Various informational/warning dialogs that could potentially be displayed when the GUI is hidden (-hideUI command line argument), causing a hang, these dialogs will now not be displayed.
Version 9.28, 26 October 2021
Version 9.28 includes the following functionality:
- Addition of .bat file extension to Launch dialog.
- Command line: if -program specifies a batch file and you don't specify -programToMonitor the first application in the batch file will be selected as the program to monitor.
- Bug fix for rare race condition that can result in the Validator failing to send/receive data during the run, or at shutdown.
- Optimized the send all data test used at shutdown to decide if OK to shutdown when sending data from the target process, resulting in faster shutdowns.
- Misc performance improvements.
- This is a recommended download.
Version 9.27, 19 October 2021
Version 9.27 includes the following functionality:
- Added command line argument -setenvironment envVarName=envVarValue for settings environment variables in Bug Validator from the command line.
You can then reference these env vars using $ENV_VAR$ in subsequent arguments on the command line.
For example: -setenvironment TEST_PATH=E:\dev\tests\sunscreen\ -program "$TEST_PATH$SunScreen-GoogleTest.exe"
- Updated the default application to monitor settings to include testhost.exe.
For existing installations, to update this, open the Launch Dialog/Wizard, click Edit... next to Application to Monitor, click Set Defaults, click OK.
- UX improvement, prevent addition (or editing of existing entries) that result in more than one definition of an application to monitor for a specific application.
- UX improvements to inject into service warning dialog.
- Bug fixes for default application to monitor combo on the applicationToMonitor dialog.
Version 9.26, 14 October 2021
Version 9.26 includes the following functionality:
- This is a RECOMMENDED download.
- Bug fix for multithreading race conditions. Fixs some random hangs.
- 12.5% Performance improvement processing file and line information.
- Improved debug information missing dialogs and related help documentation.
- Improved some status messages.
- Bug fix for missing DLL, and unsatisfied dependencies on Windows XP.
- Bug fix for missing DLL dependency warning on Windows XP.
- Modified installer shortcut criteria.
Version 9.25, 04 October 2021
Version 9.25 includes the following functionality:
- DLL Dependency checker improvement.
- Addition of Contact customer support to Help menu, and various other related contact improvements.
Version 9.24, 29 September 2021
Version 9.24 includes the following functionality:
- Bug fix for Branch statistics on Summary view.
- Support for DWARF debug information format (C++ Builder x64, MingW, QtCreator).
- Addition of support for logging errors in GUI.
Version 9.23, 24 August 2021
Version 9.23 includes the following functionality:
- Additional security when downloading and installing software updates. Digital signature is checked to be present and contain the correct details.
- Improved TDS symbol reading. Now resolves symbols in initialization segment correctly.
- Performance improvement: when querying for version information will not trigger the DLL load/unload monitoring code.
Version 9.22, 20 August 2021
Version 9.22 includes the following functionality:
- Bug fix for launch application wizard application to monitor combo box. The launch wizard now has the same behaviour as the launch dialog with respect to monitoring child processes.
Version 9.21, 12 August 2021
Version 9.21 includes the following functionality:
- This is a recommended download.
- Multi-threading data race bug fix.
- DLL inspection bug fix for potential crash.
- Bug fix for crash during shutdown.
Version 9.20, 28 July 2021
Version 9.20 includes the following functionality:
- Performance improvement when session ends.
- Performance improvement for instrumenting with MAP files.
- Diagnostic information improvements (less data output, easier to read).
- Bug fix for incorrect data in MAP file line numbers for Delphi.
- Bug fix for failing to load all TDS symbols due to a failure in the TDS symbol mangler causing an access violation. All symbols are loaded now.
Version 9.19, 20 July 2021
Version 9.19 includes the following functionality:
- Bug fix for licence key installation for 32 bit Coverage Validator when installing via manual install on x64 systems.
- Bug fix for licence key installation for 32 bit Coverage Validator when installing via automatic updates.
Version 9.18, 06 July 2021
Version 9.18 includes the following functionality:
- Bug fix for registry reading bug. Only affects installs on machines that don't already have an install.
Version 9.17, 03 July 2021
Version 9.17 includes the following functionality:
- Support for monitoring .Net Core applications launched from other applications (native, .Net and .Net Core). This change may break any previous settings you have for monitoring applications launched from other applications - we've done our best to keep monitoring native and .Net applications working as normal but in some circumstances you'll need to reconfigure the monitor an application settings. This is unfortunate but unavoidable to get this new behaviour.
- Updated launch .Net Core dialog
- New command line options: -programToMonitorEXE, -programToMonitorDLL, -waitNameEXE, -waitNameDLL
- Removed Wait for Application wizard.
- Updated Wait for Application dialog, now including options for specifying .Net Core applications (and dll).
- Updated Inject into Application dialog and wizard.
- Updated Application to Monitor dialogs.
- Update documentation.
Version 9.16, 15 June 2021
Version 9.16 includes the following functionality:
- Bug fix for monitoring process launched from another process.
Version 9.15, 07 June 2021
Version 9.15 includes the following functionality:
- Bug fix for code coverage for single line functions: get { return var; }
- Bug fix for code exclusion.
- Minor improvements to code parser.
- Documented command line arguments -dotNetCoreArg, -dotNetCoreLaunchType.
Version 9.14, 02 June 2021
Version 9.14 includes the following functionality:
- This release improves the .Net Core support and adds a variety of simplifications to make launching applications easier.
- Dedicated .Net Core launch dialog.
- New Launch menu.
- New Launch chooser.
- New function key assignments for launching applications and services.
- Bug fix for crash when profiling .Net applications (crash introduced in the previous release).
Version 9.13, 19 May 2021
Version 9.13 includes the following functionality:
- Updated installer.
- Misc bug fixes.
- Updated handling for .Net profiler.
- Basic support for .Net Core and portable PDB debugging file format.
Version 9.12, 21 April 2021
Version 9.12 includes the following functionality:
Version 9.11, 16 April 2021
Version 9.11 includes the following functionality:
- Miscellaneous bug fixes and performance improvements.
Version 9.10, 08 April 2021
Version 9.10 includes the following functionality:
- Bug fix for floating licensing error when empty licence data is acquired by the network.
- Bug fix for GetProcAddress() hook when DLL that functions are acquired from are loaded, unloaded, loaded at a new address.
- This is a recommended download.
Version 9.09, 07 April 2021
Version 9.09 includes the following functionality:
- Fix for nativeExample installer missing source files.
- Updated help file now correctly refers to the nativeExample, not cvExample.
Version 9.08, 31 March 2021
Version 9.08 includes the following functionality:
- Bug fix for crash using Vector class. This is a recommended download.
- Many multithreading speed tweaks. In some situations these will be beneficial.
Version 9.07, 10 March 2021
Version 9.07 includes the following functionality:
- Compiled HTML Help (CHM) and PDF help files are now downloaded outside of the setup executable. This is an attempt to stop anti-virus detectors mistaking the setup file for virus/malware because the CHM has triggered a FALSE positive virus detection.
- Bug fix for finding Program Files directory for non English language countries.
- Improved Map File reading speed.
Version 9.06, 01 March 2021
Version 9.06 includes the following functionality:
- Misc bug fixes.
- Column highlighting is now handled by the UX Theme. Classic, modern and high contrast themes get different column highlighting.
- Settings dialog now has Reset All and Reset buttons, allowing finer grained control over what gets reset than previously.
- Improved error messages for when inject into running process fails and the target is running as admin but Coverage Validator is not running as admin.
- Wait for process no longer needs Coverage Validator to run as admin.
Version 9.05, 08 February 2021
Version 9.05 includes the following functionality:
- Some changes that will improve symbol handling. If you've had symbol handling errors recently these will help.
- New error handling for DbgHelp, recognising "unmatched" PDBs as well as "mismatched" PDBs.
- Additional error handling for svlDbgHelpSymbolReader.
- Bug fixes for shutdown to prevent a possible access violation. The crash is rare, but can happen.
Version 9.04, 04 February 2021
Version 9.04 includes the following functionality:
- New setting on Symbols Misc settings that allows additional debug information to be captured when svlDbgHelpSymbolReader.exe is used to read symbols.
Version 9.03, 29 January 2021
Version 9.03 includes the following functionality:
- Bug fix for automatic software updater. If you've been having problems with the automatic software updater, after you install this version (which you'll have to install manually) those problems should go away.
Version 9.02, 04 January 2021
Version 9.02 includes the following functionality:
- Bug fix for coverage view.
- UX Theme bug fix for session compare dialog.
- Updated High Contrast theme colours.
Version 9.01, 29 December 2020
Version 9.01 includes the following functionality:
- Toolhelp snapshot improvements.
- Addition of UX theme selector on Settings menu. You can choose from Modern, Classic and High Contrast.
Version 9.00, 26 November 2020
Version 9.00 includes the following functionality:
- Addition of support for .Net as well as native languages. Now you can profile Native, .Net and mixed mode programs.
- New Software Verify UX Theme. Easier to use. Calmer to look at. New icons.
- Updated documentation.
Version 8.07, 23 November 2020
Version 8.07 includes the following functionality:
- Bug fix for incorrect percentage visit count in one part of the display on the Functions tab.
Version 8.06, 15 November 2020
Version 8.06 includes the following functionality:
- Change for launch dialog and launch wizard behaviour when text scaling is at 175% and dialogs are too large for a 1920x1080 screen. Small dialogs/wizards will be displayed. This is to help visually impaired users (that requested this change).
Version 8.05, 12 November 2020
Version 8.05 includes the following functionality:
- Bug fix for listing different versions of Visual Studio for the Editing settings - not all machines have this bug, seems to be to do with how Visual Studio is installed. This fixes works regardless of how VS is installed.
Version 8.04, 09 November 2020
Version 8.04 includes the following functionality:
- Bug fix for environment variable merging on launch dialog.
Version 8.03, 26 October 2020
Version 8.03 includes the following functionality:
- Exported files now exported in UTF-16 to support non-ansi character sets like Chinese and Korean.
- Bug fix for symbol server PDB fetch failing sometimes.
- Bug fix for PDB reading failing sometimes.
Bug fix for crash with long symbol names introduced with V8.02. Sorry!
Version 8.02, 20 October 2020
Version 8.02 includes the following functionality:
- Improvements for text and graphics displays on 4K screens.
- Bug fix for filenames with non-ANSI characters in them (Chinese, Korean, etc).
- Improved support for testing applications that are directly (or indirectly) linked to DbgHelp.dll
Version 8.01, 08 October 2020
Version 8.01 includes the following functionality:
- Improved error handling dialogs for licence details dialog.
- Misc improvements.
Version 8.00, 30 September 2020
Version 8.00 includes the following functionality:
- Editing change - default editor is now "Automatic". It will try to open Visual Studio for editing. If that is not possible, it will use the built in editor.
- Bug fix to for incorrect data insertion into an array. Recommended download.
Version 7.99, 21 September 2020
Version 7.99 includes the following functionality:
- Performance improvement for tree controls.
- Additional information on diagnostic tab: process id, process account SID, process account user and domain
- Hooking child processes has been improved - now also monitors launches CreateProcessAsUser(), CreateProcessWithLogonW(), CreateProcessWithTokenW().
Version 7.98, 18 September 2020
Version 7.98 includes the following functionality:
- Bug fix for svlApplicationToMonitor hooking it's dependent DLLs (it should not do this).
- Bug fix for svlApplicationToMonitor preserving a command line in some circumstances.
- Bug fix for svlApplicationToMonitor uninitialised reserved pointer.
- Bug fix for and improved algorithm for detecting Software Verify DLLs
- Bug fix for attaching to any child process when child processes include both native and .Net processes.
- This is a recommended download.
Version 7.97, 01 September 2020
Version 7.97 includes the following functionality:
- Additional user permissions tests for Everyone group on ISAPI related dialogs.
- UX improvements on ISAPI related dialogs.
Version 7.96, 14 August 2020
Version 7.96 includes the following functionality:
- Bug fix for grid rendering. Fixes a rare crash.
- Many minor UX improvements.
- Bug fix for svlDbgHelpSymbolReader.exe not found in certain circumstances.
Version 7.95, 19 June 2020
Version 7.95 includes the following functionality:
- Source code displayed in trees is now displayed in monospaced font with highlighting.
Version 7.94, 08 June 2020
Version 7.94 includes the following functionality:
- Data on trees controls is now colour coded depending on the data. This makes the tree control easier to read.
Version 7.93, 20 May 2020
Version 7.93 includes the following functionality:
- Update to CoInitialize() and CoInitializeEx() warning handling based on behaviour seen in one complex customer application.
- Bug fix for ExitProcess() hooking and unhooking.
- Bug fix for delay loaded DLL hooking when delay load signature is not recognised.
- Bug fix for shared memory reader shutdown.
Version 7.92, 13 May 2020
Version 7.92 includes the following functionality:
- Changed software architecture so that our monitoring code only uses one Thread Local Storage slot, leaving the all the others available to the target application. Previously used 10 slots.
- Bug fix for memory leak in Microsoft's CPngImage class. Replaced class with our implementation. We found this leak with C++ Memory Validator.
- Bug fix for setting environment vars via the command line, and also for %PATH% substitution in those environment variables.
- Documented the command line argument -environment var=value which you can use to set an environment variable for the program to be started. You can use this argument multiple times on a command line.
- Monitor a service dialog now checks the specified service is linked with the NT Service API.
- IIS ISAPI dialog now checks the specified ISAPI DLL is linked with the NT Service API.
- Bug fix for monitor ISAPI dialog and Web Development Server dialog.
- Option to close IIS/WDS when web browser closed added to monitor ISAPI dialog.
- Command files now support environment value expansion for any arguments to a command line value. For example -program %PROGRAM%
Version 7.91, 05 May 2020
Version 7.91 includes the following functionality:
- Fixed bug to do with failure to record non-ISAPI data after working with ISAPI extensions.
- Addied CoInitializeEx() thread changed mode warning and ability to set appropriate defaults to prevent this happening.
- This is a recommended download.
Version 7.90, 22 April 2020
Version 7.90 includes the following functionality:
- Maintenance release. Previous version didn't get staged properly on website due to a version issue.
Version 7.89, 19 April 2020
Version 7.89 includes the following functionality:
- Support for IIS and ISAPI extensions. A new submenu IIS added to the Launch menu.
Version 7.88, 28 March 2020
Version 7.88 includes the following functionality:
- Changed data transport to a new shared memory data transport. Much faster.
- Bug fix to Results view meaning no long delays when processing data for large applications.
- Added a check at startup to check for paths that don't exist in the settings data so that you can fix them.
- Bug fix for very slow undecorating of symbols when they are long (templated functions, etc). In bad cases this was so slow it looked like the data transport had stopped working.
- This is a recommended download.
Version 7.87, 20 March 2020
Version 7.87 includes the following functionality:
- Bug fix for data race in data transport from target to GUI. In some circumstances the data transport may not start. Fixed.
- Bug fix for crash inside Toolhelp32 dll when getting list of DLLs. This is a very rare crash. Only seen once. Fixed.
- Misc static analysis bug fixes.
- This is a recommended download.
Version 7.86, 10 March 2020
Version 7.86 includes the following functionality:
- Bug fix for Application to Monitor when handling a quoted application name in a command line passed to CreateProcess()
- Bug fix for Application to Monitor when handling a target path that has relative paths in it c:\dir1\dir2\..\dir3\test.exe
- Automatic scaling of toolbar and menu icons on high DPI screens - easier to use. These icons aren't perfect, but they will do until we release the designed set of high DPI icons.
- Some UX improvements relating to Symbol Servers and missing symbol server directory paths.
Version 7.85, 05 March 2020
Version 7.85 includes the following functionality:
- Improved No Coverage Data Collected dialog. Additional colour coding and six new options to inspect / edit possible causes of no coverage.
Version 7.84, 02 March 2020
Version 7.84 includes the following functionality:
- Support for Delphi 10.3.
- Bug fix for deadlock in a some infrequently used query dialogs.
Version 7.83, 07 February 2020
Version 7.83 includes the following functionality:
- Bug fix for DLL inspection component (fixes a crash in rare circumstances).
Version 7.82, 30 January 2020
Version 7.82 includes the following functionality:
- Improvement error detection reporting when working with services.
- Misc bug fixes and UX improvements.
- Bug fixes for when working with services and running the GUI as admin at the same time.
Version 7.81, 20 January 2020
Version 7.81 includes the following functionality:
- Bug fix: All calls to Turbo Debugger Symbols library are now thread safe. If you use C++ Builder and/or Delphi then you should download this software update.
- Performance improvement when accessing files.
Version 7.80, 02 January 2020
Version 7.80 includes the following functionality:
- Maintenance release. Misc bug fixes and UI/UX tweaks.
Version 7.79, 03 December 2019
Version 7.79 includes the following functionality:
- Bug fix for multi-threading. Ensuring threads are notified to end when they should be.
- Functionality change: Services will no longer try to start C++ Coverage Validator from the service. To work with services start with C++ Coverage Validator user interface already open.
Version 7.78, 25 November 2019
Version 7.78 includes the following functionality:
- Launch service dialog will not allow you to specify a service that's on a shared network drive because Windows won't start a service on a shared network drive.
- Bug fix for launch dialog when launching a service as an application.
- Bug fix for symbol server definition dialog.
- Bug fix for working with service from shared network drives.
- Bug fix for instrumenting STABS, COFF, CodeView, Salford FORTRAN95 and Delphi/C++ Builder symbols - prevent crash with overlapped symbols.
Version 7.77, 22 November 2019
Version 7.77 includes the following functionality:
- Change to default values for HTML export. Will now export a summary and hyperlinked source code files.
Version 7.76, 16 October 2019
Version 7.76 includes the following functionality:
- Update to PEDLL helper library to detect DLLs linked to VB6.
- Change to symbol handler to report extra information when things go wrong.
- Improved error messages for mismatched PDB handling on Debug Information dialog.
- Bug fix for C++ parser.
Version 7.75, 09 October 2019
Version 7.75 includes the following functionality:
Version 7.74, 04 October 2019
Version 7.74 includes the following functionality:
- Maintenance release - fix API link issues in previous release.
Version 7.73, 02 October 2019
Version 7.73 includes the following functionality:
- Bug fix for reading a minority of PE files.
- Miscellaneous bug fixes.
Version 7.72, 02 September 2019
Version 7.72 includes the following functionality:
- Bug fix for potential deadlock during shutdown (due to abandoned critical section caused by thread race).
Version 7.71, 30 August 2019
Version 7.71 includes the following functionality:
- Bug fix for debug info reporting for DLLs found in the Windows\assembly\NativeImages_v* directory.
Version 7.70, 20 August 2019
Version 7.70 includes the following functionality:
- Service description added to inject dialog listing that shows svchost.exe process.
- Bug fix for help file locating.
Version 7.69, 30 July 2019
Version 7.69 includes the following functionality:
- Bug fix for handling of the case where the source file exists, just not on the path indicated by debug info.
- Better handling (better UX) of the case where the source file exists, just not on the path indicated by debug info.
- Change of code to remove potential deadlock during shutdown phase of application being monitored.
- Launch dialog/wizard and Wait dialog/wizard indicate when file paths are invalid.
Version 7.68, 20th July 2019
Version 7.68 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.
Version 7.67, 11th July 2019
Version 7.67 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 7.66, 19th June 2019
Version 7.66 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.
Version 7.65, 4th June 2019
Version 7.65 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.
- Bug fix for Visual Studio discovery.
- Bug fix for ordinal -> name conversion (affects MFC libraries if symbol handlers not enabled).
- Bug fix for code exclusion pragma.
Version 7.64, 23rd May 2019
Version 7.64 includes the following functionality:
- Bug fixes for launch wizard and stdin/stdout files.
- Bug fix for C++ parser.
- Bug fix for Branch Coverage.
Version 7.63, 5th May 2019
Version 7.63 includes the following functionality:
- Bug fix for code coverage for a particular coding style.
- Additional diagnostic info when fail to read source code to get code exclusion filters.
- 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.
- Exported HTML and exported XML - coverage statistics are now sorted by percentage coverage.
- Bug fix for drawing of radial dials on Results view when scaled small (also when exported).
Version 7.62, 29th April 2019
Version 7.62 includes the following functionality:
- Support for Visual Studio 2019.
- Bug fixes for C++ Parser.
Version 7.61, 13th April 2019
Version 7.61 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 7.60, 3rd April 2019
Version 7.60 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 7.59, 30th March 2019
Version 7.59 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 7.58, 21st March 2019
Version 7.58 includes the following functionality:
- Addition of dbgcore.dll to the list of known Microsoft debugging DLLs - stops incorrect warning about missing PDB file.
Version 7.57, 9th March 2019
Version 7.57 includes the following functionality:
- Modified settings behaviour to reduce dbgHelp.dll loadability testing.
- Test version to identify crash with sysfer.dll under specific test conditions.
Version 7.56, 4th March 2019
Version 7.56 includes the following functionality:
- Changed installer to not require administrator rights.
Version 7.55, 1st March 2019
Version 7.55 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 svlCVStub_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 7.54, 22nd February 2019
Version 7.54 includes the following functionality:
- After session is loaded, session filename is displayed on Summary display.
- After session is saved, session filename is displayed on Summary display.
- 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 7.53, 16th February 2019
Version 7.53 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 7.52, 2nd February 2019
Version 7.52 includes the following functionality:
- Bug fixes from static analysis.
Version 7.51, 27th January 2019
Version 7.51 includes the following functionality:
- Minor performance improvements.
Version 7.50, 17th January 2019
Version 7.50 includes the following functionality:
- Bug fix for uncovered closing brace statements.
- 80% performance improvement in our source code parser. Less CPU, less memory usage.
Version 7.49, 8th January 2019
Version 7.49 includes the following functionality:
- Bug fix for single line pragmas in multiple line statements that fail to exclude the statement. The statement is now excluded from coverage.
Version 7.48, 18th December 2018
Version 7.48 includes the following functionality:
- Bug fix for unwanted tracing data.
Version 7.47, 7th December 2018
Version 7.47 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 7.46, 29th November 2018
Version 7.46 includes the following functionality:
- Minor changes to text.
- Maintenance changes to various UI controls to improve functionality.
Version 7.45, 14th November 2018
Version 7.45 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.
- Summary tab dials for Directories and DLLs now respond to mouse clicks which will take you to the respective data display.
Version 7.44, 6th November 2018
Version 7.44 includes the following functionality:
- Bug fix for monitoring child processes.
- Symbol search path displayed on Diagnostics tab.
Version 7.43, 31st October 2018
Version 7.43 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 7.42, 18th October 2018
Version 7.42 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 7.41, 5th October 2018
Version 7.41 includes the following functionality:
- Bug fix to data transport. There was a race condition that meant that some sessions didn't record data.
Version 7.40, 2nd October 2018
Version 7.40 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 7.39, 28th September 2018
Version 7.39 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 7.38, 22nd September 2018
Version 7.38 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 Coverage Validator title bar.
Version 7.37, 4th September 2018
Version 7.37 includes the following functionality:
Version 7.36, 16th August 2018
Version 7.36 includes the following functionality:
- Misc bug fixes. Addition of range checking on some data conversion functions. Static analysis fixes.
Version 7.35, 10th August 2018
Version 7.35 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 7.34, 24th July 2018
Version 7.34 includes the following functionality:
- UX changes - cleaning up the user interface.
- Addition of helper dialog if it looks like you overdid it with the filters and got no coverage data.
- Bug fixes for sorting behaviour on various displays.
- 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 7.33, 18th July 2018
Version 7.33 includes the following functionality:
- Bug fix for potential crash due to race condition during application shutdown.
- Bug fix for editing with Visual Studio
Version 7.32, 12th July 2018
Version 7.32 includes the following functionality:
- Fixed a few more broken help topics.
Version 7.31, 2nd July 2018
Version 7.31 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.
- Update to filtering to filter out additional compiler generated function: __empty_global_update.
- Update to filtering to filter out additional Windows SDK locations.
Version 7.30, 7th June 2018
Version 7.30 includes the following functionality:
- Bug fix for install on Windows XP, Windows Vista.
Version 7.29, 6th June 2018
Version 7.29 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 7.28, 26th May 2018
Version 7.28 includes the following functionality:
- UX improvement for "DLL Dependency Warning" dialog.
Version 7.27, 18th May 2018
Version 7.27 includes the following functionality:
- Minor performance improvements. Maintenance release.
Version 7.26, 11th May 2018
Version 7.26 includes the following functionality:
- Addition of menus to Visual Studio for 2017, 2015, 2013, 2012, 2010.
- Bug fixes from static analysis.
- Summary tab will auto update stats when you tab to it. This fixes a bug where under some circumstances no data would be displayed on the Summary tab even though data was available.
- Bug fix for reading Embarcadero/Borland line numbers.
Version 7.25, 17th April 2018
Version 7.25 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 7.24, 11th April 2018
Version 7.24 includes the following functionality:
- Bug fix for V7.23 when installing on Windows XP/ Windows XP x64. If you're not working with Windows XP, you can skip this update..
Version 7.23, 6th April 2018
Version 7.23 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 7.22, 16th March 2018
Version 7.22 includes the following functionality:
- Addition of exe dependency logging.
- Bug fix for environment variable corruption. This is a recommended download.
Version 7.21, 9th March 2018
Version 7.21 includes the following functionality:
- Improved handling for installation of BorDebug.dll for processing 32 bit C++ Builder / Delphi applications.
- Bug fix for instrumentation.
Version 7.20, 7th March 2018
Version 7.20 includes the following functionality:
- Bug fix for handling LoadLibrary(Ex)/FreeLibrary(), could possibly result in repeated work when hooking.
Version 7.19, 27th February 2018
Version 7.19 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 7.18, 22nd February 2018
Version 7.18 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++ Coverage Validator.
- Changes to reduce any flicker when Validator is started with the command line argument -hideUI.
- Change of behaviour. If files specified for stdin and stdout are missing, an error will be reported.
- Addition of command line flag -ignoreMissingStdin and -ignoreMissingStdout to allow you to specify missing files without reporting an error.
Version 7.17, 16th February 2018
Version 7.17 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 7.16, 3rd February 2018
Version 7.16 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 7.15, 10th January 2018
Version 7.15 includes the following functionality:
- Improved error reporting for command line launch when target DLL has a missing dependency.
- Bug fix for C/C++ source code parsing.
-
- Bug fix for dependency checking.
Version 7.14, 6th January 2018
Version 7.14 includes the following functionality:
- Display bug fixes for High DPI (4K plus) screens.
- Bug fix for Cobertura XML export
Version 7.13, 28th December 2017
Version 7.13 includes the following functionality:
- Bug fix for display of duplicate line counts.
- Bug fix for potential crash during shutdown.
- Bug fix for memory leak.
- Performance improvement.
Version 7.12, 22nd December 2017
Version 7.12 includes the following functionality:
- Bug fix: Anonymous namespaces containing code will be instrumented. Previously they were ignored.
- Bug fix for crash during export of Cobertura XML.
- Bug fix for symbol name truncation.
Version 7.11, 24th November 2017
Version 7.11 includes the following functionality:
- Performance improvement for loading file and line information.
- Many performance improvements in terms of how we cache data and invalidate the caches to make the GUI more responsive under high load (1 million lines).
- Bug fix for potential (very rare) crash when trying to inject into another process (or wait for application).
Version 7.10, 21st November 2017
Version 7.10 includes the following functionality:
- Performance improvement for MAP file reading.
- 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 7.09, 8th November 2017
Version 7.09 includes the following functionality:
- Multi-threading bug fix for process monitor.
- Bug fix for failure of GUI to access shared memory coverage data because target process shutdown too quickly.
Version 7.08, 28th October 2017
Version 7.08 includes the following functionality:
- Bug fix for merging line counts.
- Bug fix for merging sessions when a session has finished.
- Bug fix for global hook DLL detection.
Version 7.07, 25th October 2017
Version 7.07 includes the following functionality:
- Bug fix for return code when exporting a loaded session (rather than exporting a session just recorded).
- 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.
Version 7.06, 9th October 2017
Version 7.06 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.
Version 7.05, 21st September 2017
Version 7.05 includes the following functionality:
- Improved error messages for software installer in the unlikely event the software updater fails for some reason.
- Improved instrumentation using STABS debug data - process less data, therefore faster.
- Bug fix for STABS symbol demangling
- Updated diagnostic messages.
Version 7.04, 11th August 2017
Version 7.04 includes the following functionality:
- Additional warning about /DEBUG:FASTLINK built executables at start of run (after hooking) rather than at end of run.
Version 7.03, 3rd August 2017
Version 7.03 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 7.02, 16th June 2017
Version 7.02 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).
- Command line support for collecting code coverage for processes that restart themselves.
- Additional command line argument: -monitorAllRestarts
- Additional command line argument: -maxNumRestarts
Version 7.01, 13th June 2017
Version 7.01 includes the following functionality:
- Bug fix for stack walker. Very rare bug for anyone to encounter.
Version 7.00, 16th May 2017
Version 7.00 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 6.99, 6th May 2017
Version 6.99 includes the following functionality:
- 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.
- Bug fix for lines containing only "else" requiring code coverage. This is to fix a bug with compiler debug information pointing to redundant code.
Version 6.98, 22nd April 2017
Version 6.98 includes the following functionality:
- Bug fix for deadlock during execution of the code coverage target program. You may not have experienced this problem as not all programs trigger this deadlock.
- 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 6.97
Version 6.97 includes the following functionality:
- Bug fix for instrumentation of switch jump tables.
Version 6.96, 31st March 2017
Version 6.96 includes the following functionality:
- Bug fix for failure to load symbols display - more useful symbol search path information is now displayed.
- Bug fix for class and function filter exclusion.
- Addition of instrumentation logging, allowing you to see why particular DLLs, files, classes, and functions.are not instrumented.
Version 6.95, 17th February 2017
Version 6.95 includes the following functionality:
- Bug fix injecting into 32 bit process launched from a batch file on a 64 bit operating system.
Version 6.94, 14th February 2017
Version 6.94 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 6.93, 21st January 2017
Version 6.93 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 6.92, 22nd December 2016
Version 6.92 includes the following functionality:
- Improvement to the first run startup wizard.
- Bug fix for hooking function epilogues.
Version 6.91, 20th December 2016
Version 6.91 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 6.90, 14th December 2016
Version 6.90 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.
Version 6.89, 5th December 2016
Version 6.89 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 6.88, 3rd December 2016
Version 6.88 includes the following functionality:
- Data comms modification for handling comms once ExitProcess() is called.
- Change to how Version Information is handled.
Version 6.87, 26th November 2016
Version 6.87 includes the following functionality:
- Various UX improvements when editing filenames and directories.
Version 6.86, 21st November 2016
Version 6.86 includes the following functionality:
- Instrumentation improvements.
- Multi-threading security improvements.
Version 6.85, 5th November 2016
Version 6.85 includes the following functionality:
- Improved launch instrumentation. Handling race conditions in CreateProcess() with SUSPENDED flag.
Version 6.84, 3rd November 2016
Version 6.84 includes the following functionality:
- Updated software update error handling.
- Improved code instrumentation.
Version 6.83, 25th October 2016
Version 6.83 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.
Version 6.82, 20th October 2016
Version 6.82 includes the following functionality:
- Bug fix for multi-threading error in symbol handling for V6.81.
Version 6.81
Version 6.81 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 6.80, 6th October 2016
Version 6.80 includes the following functionality:
- Bug fix for indexing error on memory mapped files.
- Change to how unqiue symbol data is identified when sending from stub to GUI.
Version 6.79, 2nd October 2016
Version 6.79 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.
Version 6.78, 27th September 2016
Version 6.78 includes the following functionality:
- Some improvements to multi-threaded data integrity.
Version 6.77Vers, 19th September 2016ion 6.77
Version 6.77 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 6.76, 1st September 2016
Version 6.76 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 6.75, 10th August 2016
Version 6.75 includes the following functionality:
- Instrumentation progress speedup.
- Performance optimization. Data transport from target to GUI is faster.
Version 6.74, 23rd July 2016
Version 6.74 includes the following functionality:
- Static analysis bug fix update.
Version 6.73, 18th July 2016
Version 6.73 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 6.72
Version 6.72 includes the following functionality:
- Bug fix for accessing COFF and STABS format debug information.
- Inject dialog bug fix.
Version 6.71, 21st June 2016
Version 6.71 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 6.70, 11th June 2016
Version 6.70 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 6.69, 27th May 2016
Version 6.69 includes the following functionality:
- Bug fix for loading/saving of settings data.
- Bug fix for session manager.
Version 6.68, 19th May 2016
Version 6.68 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 6.67, 7th May 2016
Version 6.67 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 6.66, 16th April 2016
Version 6.66 includes the following functionality:
- Bug fix for disassembler DLL update.
- Internal: Addition of auto tester for stress testing.
Version 6.65, 8th April 2016
Version 6.65 includes the following functionality:
- Bug fix for Coberatura XML export.
Version 6.64, 2nd April 2016
Version 6.64 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 6.63
Version 6.63 includes the following functionality:
- Improvement for working with statically linked Delphi programs.
Version 6.62, 17th March 2016
Version 6.62 includes the following functionality:
- Bug fix for Software Updates Installer.
Version 6.61, 14th March 2016
Version 6.61 includes the following functionality:
- Addition of new Summary dialog Function Branches.
- Improvements to Branch Coverage display.
- Improvements to Functions Coverage display.
- Improvements to Directories Coverage display.
- Improvements to DLLs Coverage display.
- Improvements to Files and Lines Coverage display.
Version 6.60, 4th March 2016
Version 6.60 includes the following functionality:
- Bug fix for potentiall deadlock in symbol handling code.
- Bug fix for failure to monitor CppUnit tests built with VS2013 and VS2015.
Version 6.59, 29th February 2016
Version 6.59 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 6.58, 16th February 2016
Version 6.58 includes the following functionality:
- Bug fix for floating licencing.
- Bug fix for incorrect coverage results when DLL loaded, unloaded, reloaded, etc.
- Maintenance release. Misc bug fixes.
Version 6.57
Version 6.57 includes the following functionality:
- Improved error reporting for handling missing unit testing DLL.
Version 6.56, 29th January 2016
Version 6.56 includes the following functionality:
- Addition of command line option -showErrorsWithMessageBox that reports errors on stdout.
- Minor bug fixes, maintenance release.
Version 6.55, 24th December 2015
Version 6.55 includes the following functionality:
- XML export updated to include information about visited and unvisited functions.
- XML export updated to include information about visited and unvisited lines.
- Filtering colour changes to improve user experience.
Version 6.54, 18th December 2015
Version 6.54 includes the following functionality:
- Maintenance release. Lots of minor bug fixes.
Version 6.53, 16th December 2015
Version 6.53 includes the following functionality:
- Addition of -mergeMultiple command line argument so that you can merge multiple sessions in one action.
Version 6.52, 10th December 2015
Version 6.52 includes the following functionality:
- Bug fix for inject dialog and inject wizard.
- Bug fix for launch wizard.
Version 6.51, 27th November 2015
Version 6.51 includes the following functionality:
- Bug fix for running Coverage Validator from a service.
- Bug fix for incorrectly classifying Windows patch DLLs.
- Improvement to symbol handling.
- Improvement to MAP file handling.
Version 6.50, 21st November 2015
Version 6.50 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.
- Bug fix for TDS Symbol Reader when Validator DLL is not loaded from Validator install directory.
Version 6.49, 25th October 2015
Version 6.49 includes the following functionality:
- Bug fix for Summary tab.
- Bug fix for serialization - you can't load a session that is already loaded in the session manager.
Version 6.48, 16th October 2015
Version 6.48 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.
- Bug fix for loading session via command line then generating export - not getting dial graphics.
- Change to command line refresh views logic. Previously would refresh one view, now refreshes all views specified.
- Bug fix for display of data by Class on the Functions tab.
- Bug fix for display of data by Class on the Branches tab.
- Bug fix for session merging.
Version 6.47, 1st October 2015
Version 6.47 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 6.46, 18th September 2015
Version 6.46 includes the following functionality:
- New configuration of DbgHelp DLLs for VS 2013 and VS 2015 to provide better performance.
- Ability to include command line args in exported data.
- Addition of command line arguments -dontShowWindowsErrorReportingUI and -showWindowsErrorReportingUI.
Version 6.45, 6th September 2015
Version 6.45 includes the following functionality:
- Bug fix for error message.
- Bug fix for instrumentation editing.
- Bug fix for error dialog showed when running from command line.
- Change to sort ordering on Files and Lines tab.
Version 6.44, 29th August 2015
Version 6.44 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 6.43, 26th August 2015
Version 6.43 includes the following functionality:
- Anti-aliased graphics update.
- 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.
- Improvement to instrumentation detail user interface.
- Addition of -monitorAService command line argument.
Version 6.42, 7th August 2015
Version 6.42 includes the following functionality:
Version 6.41, 1st August 2015
Version 6.41 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 6.40, 27th July 2015
Version 6.40 includes the following functionality:
- Branch Coverage improvements (detects implicit else branches).
- Branch Coverage bug fixes.
Version 6.39, 23rd July 2015
Version 6.39 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 6.38, 3rd July 2015
Version 6.38 includes the following functionality:
- Bug fix for UI Defeat Global hook.
Version 6.37, 23rd June 2015
Version 6.37 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.
- Static analysis improvements.
- Improvements to exception logging.
- Improved UI defeat global hook implementation.
Version 6.36, 11th June 2015
Version 6.36 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.
Version 6.35, 2nd June 2015
Version 6.35 includes the following functionality:
- Bug fix for symbol demangling for MingW.
Version 6.34, 12th May 2015
Version 6.34 includes the following functionality:
- Improved launch handling of mixed mode .Net modules.
- Improved Windows Firewall handling.
Version 6.33, 25th April 2015
Version 6.33 includes the following functionality:
- Better support for reading Embarcadero/Borland TDS files. (C++Builder / Delphi)
-
Version 6.32, 17th April 2015
Version 6.32 includes the following functionality:
- Addition of -exportCoberturaStyle command line argument. See help for details.
- New Cobertura XML export dialog.
- Static analysis improvements.
- Minor bug fixes.
Version 6.31, 10th April 2015
Version 6.31 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.
- Bug fix for Files and Lines update.
Version 6.30, 30th March 2015
Version 6.30 includes the following functionality:
- Minor UX improvements.
- Bug fix for Cobertura XML export - better handling for functions in the global namespace.
- Better error codes for failing inject.
- Bug fix for possible inject failure when run from the command line.
- Source files filter now accepts * wildcard.
Version 6.29, 24th March 2015
Version 6.29 includes the following functionality:
- Bug fix for Cobertura XML report and to coverage reporting statistics.
- Support for non-western character sets in source code display - examples include Greek, Korean, Chinese, Japanese, Albanian, Arabic, Hebre, Hindia, Armenian, Russian.
Version 6.28, 18th March 2015
Version 6.28 includes the following functionality:
- Bug fix for floating licensing.
Version 6.27, 13th March 2015
Version 6.27 includes the following functionality:
- Bug fix for Windows 7 crash when hooking.
Version 6.26
Version 6.26 includes the following functionality:
- Minor bug fix for Coverage tab.
Version 6.25, 7th March 2015
Version 6.25 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 6.24, 18th February 2015
Version 6.24 includes the following functionality:
- Minor UX improvements.
- Improvement for symbol cache cleaner dialog management.
- Bug fix for 16 bit depth bitmap image export.
- Exception safety for disassembler.
Version 6.23, 4th February 2015
Version 6.23 includes the following functionality:
- New VS2010 Installer handling. No user interaction required - no confusion over what to choose.
- Bug fix for colour handling.
- Documented the command line options: -exportMergedAsXMLCobertura, -exportAsXMLCobertura, -exportFileFormatCR, -exportFileFormatLF, -exportFileFormatCRLF
- Improved C++ class/method name parsing.
- 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 6.22, 28th January 2015
Version 6.22 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.
- Addition of export to Cobertura XML file format.
- Improvement to Inject into Process dialog.
- Bug fix for class name detection for complex multi level class names.
- Bug fix for "Hooked DLLs" dialog, don't hook delay loaded dlls checkbox.
Version 6.21, 5th January 2015
Version 6.21 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 visual update when exporting HTML graphics.
Version 6.20, 21st November 2014
Version 6.20 includes the following functionality:
- Bug fix for Hide All menu option on the Data Views menu.
- Bug fix for restoring Data Views.
- Bug fix for -fileExt handling.
Version 6.19, 16th November 2014
Version 6.19 includes the following functionality:
- Bug fix for registry handling.
- Bug fix for launch dialog.
Version 6.18
Version 6.18 includes the following functionality:
- Addition of -fileExt ext command line option.
Version 6.17, 3rd October 2014
Version 6.17 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 6.16, 11th September 2014
Version 6.16 includes the following functionality:
- Bug fix for software update installer.
- Bug fix for corrupted SSE registers.
- Change to instrumentation defaults - statically linked CRT will not be instrumented.
Version 6.15, 22nd August 2014
Version 6.15 includes the following functionality:
- Bug fix for reading/writing values to/from the registry.
- Bug fix for source file filter types settings.
- Change to instrumentation behaviour to try to compensate for over aggressive compiler optimizations.
Version 6.14, 6th August 2014
Version 6.14 includes the following functionality:
- Support for Visual Studio 2014 CTP
Version 6.13, 25th July 2014
Version 6.13 includes the following functionality:
- Registry reading error handling update.
- Update to Software Updates install behaviour.
- Settings serialization bug fix.
Version 6.12, 16th July 2014
Version 6.12 includes the following functionality:
- Bug fix for disassembler code.
- Change to Browse for Folder behaviour.
Version 6.11, 7th July 2014
Version 6.11 includes the following functionality:
- Change to settings dialog, addition of Instrumentation Detail settings. Removal of Single Visit Monitoring from the Statistics section and removal of Breakpoint hooking - these settings are now on the Instrumentation Detail settings.
- Updated installer, now includes error logging for the odd occasion when installs go wrong.
- Misc other updates and bug fixes.
Version 6.10, 20th June 2014
Version 6.10 includes the following functionality:
- Bug fix for possible crash when reallocating memory (Inject dialog).
Version 6.09, 14th June 2014
Version 6.09 includes the following functionality:
- 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 6.08, 11th June 2014
Version 6.08 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 6.07, 25th May 2014
Version 6.07 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 6.06, 22nd March 2014
Version 6.06 includes the following functionality:
- Bug fix for profiling mixed mode native/.Net processes.
- Bug fix for memory leak.
Version 6.05, 19th March 2014
Version 6.05 includes the following functionality:
- Maintenance release.
- Improved PE File reader.
- Bug fix for attaching to .Net processes.
Version 6.04, 5th March 2014
Version 6.04 includes the following functionality:
Version 6.03, 11th February 2014
Version 6.03 includes the following functionality:
- Instrumentation bug fix.
- Minor UX improvements. Browse For Folder dialog.
Version 6.02, 1st February 2014
Version 6.02 includes the following functionality:
- New command line parameter -statisticsIgnoreDLLForSource
- New command line parameter -statisticsConsiderDLLForSource
- 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 6.01, 14th January 2014
Version 6.01 includes the following functionality:
- Bug fix for race condition.
Version 6.00, 2nd January 2014
Version 6.00 includes the following functionality:
- Release of new 64 bit and 32 bit version of C++ Coverage Validator.
Version 5.40, 24th December 2013
Version 5.40 includes the following functionality:
- Bug fix for incorrect return value from SymGetModuleInfo(64) DbgHelp.dll API
Version 5.39, 19th December 2013
Version 5.39 includes the following functionality:
- Bug fix for broken resources in some user interface components.
Version 5.38, 10th December 2013
Version 5.38 includes the following functionality:
- Bug fix for code instrumentation disassembler.
Version 5.37, 4th December 2013
Version 5.37 includes the following functionality:
- Bug fix for display update when exporting session from command line.
- Bug fix for symbol servers settings dialog.
- Bug fix for failing to fetch symbols from symbol servers in certain situations.
- Command line arguments containing quotes can now be passed to target programs.
Version 5.36, 9th November 2013
Version 5.36 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 5.35, 5th November 2013
Version 5.35 includes the following functionality:
- Changed application and Hooked DLLs bug fix and behaviour change.
- Maintenance: Licensing code update. Code cleanup. Code removal.
Version 5.34, 15th October 2013
Version 5.34 includes the following functionality:
- Editor settings dialog bug fix.
Version 5.33, 27th September 2013
Version 5.33 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 5.32, 24th September 2013
Version 5.32 includes the following functionality:
- Bug fix for symbol handling.
Version 5.31, 14th September 2013
Version 5.31 includes the following functionality:
- Updated CppUnit support so that is is compatible with the x64 CppUnit support in the 64 bit version of C++ Coverage Validator.
- 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 Unit Tests coverage display.
- Bug fix for filtering 'dynamic initializer for...' symbols.
Version 5.30, 3rd September 2013
Version 5.30 includes the following functionality:
- Reworked CppUnit hooking so that supports all versions of VisualStudio from 6 through 2012.
Version 5.29, 23rd August 2013
Version 5.29 includes the following functionality:
- Bug fix for hooking functions.
- Bug fix multi-threaded access to symbol in module manager.
Version 5.28, 9th August 2013
Version 5.28 includes the following functionality:
- Misc software bug fixes.
- New help file builder.
Version 5.27, 27th July 2013
Version 5.27 includes the following functionality:
- Diagnostic view performance improvement.
- Native code instrumentation performance improvement.
- Addition of Don't recurse directories option on source files filter.
- New option on Auto Merge settings: Clear only merged results for edited source files. See help for details.
- New command line option: -mergeClearEditedFilesOnly. See help for details.
Version 5.26, 11th July 2013
Version 5.26 includes the following functionality:
- Provisional support for Visual Studio 2013.
- Bug fix for file extension filtering.
Version 5.25, 25th June 2013
Version 5.25 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 5.24, 6th June 2013
Version 5.24 includes the following functionality:
- Bug fix for potential crash when reading hard-disk coverage data.
Version 5.23, 6th June 2013
Version 5.23 includes the following functionality:
- Addition of Unvisited Files option to Query menu.
- Improved handling of DLL filtering.
Version 5.22, 24th May 2013
Version 5.22 includes the following functionality:
- Bug fix for crash in symbol handler.
- Bug fix for missing coverage data for programs with very short lifetimes.
Version 5.21, 16th May 2013
Version 5.21 includes the following functionality:
- Addition of the ability to compare Sessions.
- 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 5.20, 29th April 2013
Version 5.20 includes the following functionality:
- Bug fix for fetching of symbols and symbol server handling.
- Bug fix for settings dialog.
Version 5.19, 11th April 2013
Version 5.19 includes the following functionality:
- Bug fix for error R6034 - loading wrong C Runtime error displayed during startup or shutdown of target application
Version 5.18, 9th April 2013
Version 5.18 includes the following functionality:
- Bug fix for launch dialog and launch wizard/
- Updated symbol server support.
- Update for .Net support.
Version 5.17, 26th March 2013
Version 5.17 includes the following functionality:
- Support for VS2012, .Net Framework 4.5.
- Bug fix for Tips dialog.
Version 5.16, 13th March 2013
Version 5.16 includes the following functionality:
- New debugging symbols handler. Faster, more robust, more fault tolerant.
Version 5.15
Version 5.15 includes the following functionality:
- Bug fix for broken keygen for eval/beta versions.
Version 5.14, 9th February 2013
Version 5.14 includes the following functionality:
- Bug fix for auto-fixing data comms control values.
- Addition of support for floating licensing.
Version 5.13
Version 5.13 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 5.12, 16th January 2013
Version 5.12 includes the following functionality:
- Bug fix for memory leak on the main summary tab.
- 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.
- Change to tree control to remember it's expand/contract state between clicks.
- Improved filter exclusion handling for class/method and DLL filtering.
Version 5.11, 6th January 2013
Version 5.11 includes the following functionality:
- Improvements to tree expand/collapse behaviour to improve user experience.
- Bug fix for erroneous DelayHook message.
Version 5.10, 4th January 2013
Version 5.10 includes the following functionality:
- Bug fix for buffer overrun.
Version 5.09, 3rd January 2013
Version 5.09 includes the following functionality:
- New version of editing component, providing additional functionality.
- New cleaner drawing style for tree/grid control.
- Minor UX changes.
- Minor bug fixes.
Version 5.08
Version 5.08 includes the following functionality:
- Bug fix for Directory view.
- Bug fix for DLL view.
- Bug fix for canonical file names.
Version 5.07, 5th December 2012
Version 5.07 includes the following functionality:
- Addition of DLL coverage statistics.
- User experience improvements for DbgHelp.dll chooser.
- Bug fix for UI and Stub Global Hook settings.
Version 5.06, 13th November 2012
Version 5.06 includes the following functionality:
- Bug fix for data displays when close a session.
- Improved canonical representation of filenames. Removed \..\ etc from filenames.
- Bug fixes from static analysis.
- Cascading style sheet default location bug fix.
- Orientation icon redraw bug fix.
Version 5.05, 18th October 2012
Version 5.05 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 5.04, 9th October 2012
Version 5.04 includes the following functionality:
- Bug fixes after static analysis work.
Version 5.03, 14th September 2012
Version 5.03 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.
- Addition of Export/Import options to class and function filter settings.
- Addition of -classAndFunctionFile command line option to load class and function filters when running from the command line.
Version 5.02, 14th August 2012
Version 5.02 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 5.01, 1st August 2012
Version 5.01 includes the following functionality:
- Performance improvement for inline and template code.
- Performance improvement for Branches view Directory layout when working with large sessions.
- Performance improvement for Functions view Directory layout when working with large sessions.
- Correct handling of OnSysColorChanged() message for custom radial control and custom text control.
- Fixed some flicker and redraw issues when changing selection on the main grid controls using cursor keys.
- Updated summary control export graphics to take account of CSS background colour.
Version 5.00, 29th July 2012
Version 5.00 includes the following functionality:
- New user interface for the summary tab - lots of graphics.
- Updated exported data to match the new summary tab.
- Updated editor control showing coverage relative to the position in the file.
- 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 4.63
Version 4.63 includes the following functionality:
Version 4.62, 2nd July 2012
Version 4.62 includes the following functionality:
- Performance improvement for class/method filter dialog.
- Bug fix for settings load/saving.
Version 4.61, 27th June 2012
Version 4.61 includes the following functionality:
- Improved code coverage visualisation in code viewing window.
- Bug fixes from static analysis tool.
- Editing tool upgrade.
Version 4.60, 15th June 2012
Version 4.60 includes the following functionality:
- Bug fix for Visual Studio editing.
- More improvements from static analysis work.
Version 4.59, 11th May 2012
Version 4.59 includes the following functionality:
- Bug fix for -commandFile command line argument handling.
Version 4.58, 8th May 2012
Version 4.58 includes the following functionality:
- Bug fix for launching progams from the command line with the -allArgs argument.
Version 4.57, 2nd May 2012
Version 4.57 includes the following functionality:
- Refactoring of Coverage Validator internals.
- More bug fixes from static analysis with Visual Lint.
- New file format - not backwards compatible (sorry). But the change is worth it.
- Change to command line behaviour - unrecognised arguments are ignored. Use -allArgs instead.
Version 4.56, 19th February 2012
Version 4.56 includes the following functionality:
- Bug fix for invalid handle crash in user interface.
Version 4.55
Version 4.55 includes the following functionality:
- Bug fixes from static analysis with Visual Lint.
Version 4.54, 14th January 2012
Version 4.54 includes the following functionality:
- Bug fix for URL encoding when talking to software update server.
Version 4.53, 11th January 2012
Version 4.53 includes the following functionality:
- Code improvement for hooking the last line in a function - less breakpoint hooks will be used - faster execution.
- Bug fix for statement parsing - improved branch detection statistics.
Version 4.52, 6th January 2012
Version 4.52 includes the following functionality:
- Lock handling performance improvements.
- Memory usage improvement.
- Memory leak fix when merging sessions by address.
- Software update changes - update will not happen when run from command line.
Version 4.51, 22nd December 2011
Version 4.51 includes the following functionality:
- Bug fix for potential memory corruption.
- Various memory leak fixes.
Version 4.50, 16th December 2011
Version 4.50 includes the following functionality:
- Bug fix for branch detection.
- Bug fix for software updater throwing MFC exception on some systems.
Version 4.49, 10th December 2011
Version 4.49 includes the following functionality:
- XML output reformatted to improve readability and rendering.
- Updated self-installer to handle additional security checks for some computer systems.
Version 4.48, 3rd December 2011
Version 4.48 includes the following functionality:
- Bug fix for processing MingW Stabs debugging information.
- Reduce memory usage for Visual Studio debugging information after profiling.
- Bug fix for XML output
- Addition of software update code.
Version 4.47, 17th October 2011
Version 4.47 includes the following functionality:
- Robustness improvement for handling shared memory coverage data.
Version 4.46, 4th October 2011
Version 4.46 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 4.45
Version 4.45 includes the following functionality:
Version 4.44, 21st September 2011
Version 4.44 includes the following functionality:
- Tutorials moved to the website. Tutorial link always available from help menu and at startup.
Version 4.43, 30th August 2011
Version 4.43 includes the following functionality:
- Bug fix for line iteration.
Version 4.42, 11th August 2011
Version 4.42 includes the following functionality:
- Bug fix for handling storage of coverage data in secure processes.
Version 4.41
Version 4.41 includes the following functionality:
- Bug fix for stall during line hooking due to new DbgHelp.dll behaviour for some inline code.
Version 4.40, 1st August 2011
Version 4.40 includes the following functionality:
- Improved "Symbol Lookup" Visual Studio chooser based upon user feedback.
Version 4.39, 22nd June 2011
Version 4.39 includes the following functionality:
- Low data processing race condition bug fix.
Version 4.38, 21st June 2011
Version 4.38 includes the following functionality:
- New file missing dialog implementation.
- Bug fix for code instrumentation.
Version 4.37, 17th May 2011
Version 4.37 includes the following functionality:
- Bug fix for buffer overrun on session export dialog.
Version 4.36, 28th April 2011
Version 4.36 includes the following functionality:
Version 4.35, 19th April 2011
Version 4.35 includes the following functionality:
- Bug fix for MingW stabs debug information reading.
- New menu implementation, addition of bitmaps.
Version 4.34, 13th April 2011
Version 4.34 includes the following functionality:
- Bug fix for COMCTL32.DLL bitmap handling.
Version 4.33, 1st April 2011
Version 4.33 includes the following functionality:
- Inject, Launch and Wait wizard layouts changed to be more industry standard behaviour.
Version 4.32, 17th March 2011
Version 4.32 includes the following functionality:
- Bug fix for saving sessions.
- Bug fix for merging sessions.
- Bug fix for selecting sessions in the session manager.
- Improved COFF/STABS symbol handling.
Version 4.31, 11th March 2011
Version 4.31 includes the following functionality:
- Bug fix for C++ parser error with code exclusion pragma.
- Bug fix for DbgHelp.dll specification.
- Additional techniques for identifying Visual Studio installs.
Version 4.30, 2nd March 2011
Version 4.30 includes the following functionality:
- New command line option -pulseToStdout.
- 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 line pragma ignore with branch coverage.
- Bug fix for unbounded memory growth during session lifetime (not a leak, just uncontrolled growth).
- Bug fix for race condition when starting second or subsequent session, could cause possible crash.
- Fix minor bug fixes.
Version 4.29, 6th February 2011
Version 4.29 includes the following functionality:
- Change of behaviour for symbol server dialog.
Version 4.28, 4th February 2011
Version 4.28 includes the following functionality:
- New communications architecture.
- New handling for dbghelp.dll and different versions of Visual Studio.
Version 4.26, 29th December 2010
Version 4.27 includes the following functionality:
- Support for mixed-mode .Net services.
Version 4.26
Version 4.26 includes the following functionality:
- Support for .Net framework 4, CLR 4.
Version 4.25, 3rd November 2010
Version 4.25 includes the following functionality:
- Rationalising code base. Maintenance release.
Version 4.24, 22nd September 2010
Version 4.24 includes the following functionality:
- Performance improvement for processing branch data. Greater than 97% improvement for large datasets.
Version 4.23, 30th July 2010
Version 4.23 includes the following functionality:
Version 4.22, 16th July 2010
Version 4.22 includes the following functionality:
- Bug fix for Delphi class and function filter.
Version 4.21, 2nd July 2010
Version 4.21 includes the following functionality:
- Bug fix for profiling mixed-mode .Net applications when running on a 64 bit operating system.
Version 4.20, 4th June 2010
Version 4.20 includes the following functionality:
- 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 4.19, 24th May 2010
Version 4.19 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 4.18, 25th March 2010
Version 4.18 includes the following functionality:
- 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 4.17, 2nd March 2010
Version 4.17 includes the following functionality:
- Bug fix for environment variable handling.
- Bug fix for license installer software.
Version 4.16, 18th February 2010
Version 4.16 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.
- New implementation of shared memory handling - uses less memory, faster.
- Removal of Inter-Process Communications settings from settings dialog, now redundant.
- Moved DLL Hook Insertion rules to Hooked DLLs settings.
- Simplified Line Hooking settings.
- Addition of startup preferences dialog that is shown the first time Coverage Validator is started.
- Bug fix for Hooked DLLs.
Version 4.15
Version 4.15 includes the following functionality:
- Bug fix for HTML export when specifying Unix directory separator.
Version 4.14, 7th January 2010
Version 4.14 includes the following functionality:
- Bug fix for failure to correctly handle C++ switch statements in certain situations. This bug was caused by a bug fix for a Delphi bug, introduced in V4.12.
Version 4.13, 21st December 2009
Version 4.13 includes the following functionality:
- Minor UI changes to add user hints.
- All executables are now code signed to prevent warnings on Vista/Windows 7.
Version 4.12, 13th November 2009
Version 4.12 includes the following functionality:
- Bug fix for hang when redirecting stdin/stdout of application being monitored and stdin is supplied with a zero length file.
- Bug fix for reading various types of malformed DLLs.
- Correct detection of Resource only DLLs.
- Bug fix for handling of bad line number data in Borland MAP files.
Version 4.11, 5th November 2009
Version 4.11 includes the following functionality:
- Bug fix for C/C++ parsing.
Version 4.10, 26th October 2009
Version 4.10 includes the following functionality:
Version 4.09, 8th October 2009
Version 4.09 includes the following functionality:
- Bug fix for Delphi when cached instrumentation data enabled: Branch Coverage displays data correctly.
- Bug fix for Delphi when cached instrumentation data enabled: Functions displays data correctly.
- Functions displays class data correctly for Delphi and Visual Basic, whereas before it would put them in the global namespace.
Version 4.08, 6th October 2009
Version 4.08 includes the following functionality:
- Addition of Branch Coverage support for Delphi.
- Bug fix for Functions tab for coverage performed when using MAP file information.
- Bug fix for Delphi code coverage when working with .itext segment information in detailed MAP files.
- Prevent SysInit.pas from being instrumented in Delphi applications.
Version 4.07, 23rd September 2009
Version 4.07 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 4.06, 2nd September 2009
Version 4.06 includes the following functionality:
- Bug fix for zero length stdin file causing intermittent hang.
- Change of behaviour for applications launched via command line. Applications that are not hidden are now launched with
no-activate status so that although they are visible they do not grab the focus.
- Bug fix for line hooking for Delphi.
Version 4.05, 18th August 2009
Version 4.05 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 4.04, 10th August 2009
Version 4.04 includes the following functionality:
- Support for recording and reporting CppUnit results.
-
- Bug fix for C++ parser.
- Option for high speed, count lines once only coverage.
- Hooked DLLs, sorted DLLs in list.
- Bug fixes for branch view and file locations.
- Bug fixes for memory corruption when A DLL is loaded then unloaded then reloaded and loads at a different load address.
- Various multi-threading improvements.
Version 4.03, 1st May 2009
Version 4.03 includes the following functionality:
- Bug fix for C++ parser for branch detection.
- Bug fix for auto merge.
Version 4.02, 25th March 2009
Version 4.02 includes the following functionality:
- Bug fix for data race.
- Bug fix for multi-dll source code merging.
- Bug fix for command line code coverage.
- Change of behaviour for assigning lines to symbols for branch coverage and function reporting to improve the results
when the same file is loaded in multiple DLLs as part of a unit test.
- Addition of branch coverage results to HTML export and XML export.
Version 4.01, 6th April 2009
Version 4.01 includes the following functionality:
- Addition of new command line arguments.
- -mergeClearChangeApplication. Reset the central session if application changes.
- -mergeClearRebuild. Reset the central session if timestamp changes.
- -mergeClearNone. Do not reset the central session if application or timestamp changes.
- Bug fix for merging of branch coverage.
- Bug fix for branch coverage display when loading data from a saved merge session which merges data
from multiple different applications. This bug fix is useful for developers running unit tests and collecting coverage data.
- Bug fix for functions display when loading data from a saved merge session which merges data
from multiple different applications. This bug fix is useful for developers running unit tests and collecting coverage data.
- Performance improvement for loading sorting data.
- Minor tip of day bug fix.
- Exported HTML 0% bar graph bug fix for Internet Explorer.
- Bug fix for rare data-corruption causing crash due to race condition.
- Minor gui fixes.
- Bug fix to C++ parser, resulting in better branch statistics.
Version 4.00, 6th March 2009
Version 4.00 includes the following functionality:
- Bug fix for exclude directory filter (for partial filenames).
- Minor bug fixes.
Version 3.10, 6th March 2009
Version 3.10 includes the following functionality:
- When running from command line in "hidden" mode, missing debug symbols dialog will not be displayed.
- When running from command line in "hidden" mode, MFC 8/9 symbols warning dialog will not be displayed.
- When running from command line in "hidden" mode, .Net application warning dialog will not be displayed.
- Bug fix for export when specifying a file in a non-existent directory.
- Bug fix for source code colouring component.
Version 3.09, 12th February 2009
Version 3.09 includes the following functionality:
- Bug fix for message map routing.
Version 3.08, 30th January 2009
Version 3.08 includes the following functionality:
- More improvements to C++ template handling.
Version 3.07, 24th December 2008
Version 3.07 includes the following functionality:
- More improvements to C++ template handling.
- Modified Inject dialog to be resizable and remember which column it sorts on and previous selection.
Version 3.06
Version 3.06 includes the following functionality:
- Bug fix for launching on Windows Vista and Windows 2008.
Version 3.05, 9th December 2008
Version 3.05 includes the following functionality:
- Bug fix for code exclusion cache expiry. If you change the code exclusion settings your cached hook data
should be refreshed. This bug fix ensures that happens.
- Bug fix for handling C++ template specialization expansion.
- 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.
- Addition of some status information on the Summary screen.
Version 3.04, 24th November 2008
Version 3.04 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 3.03, 23rd October 2008
Version 3.03 includes the following functionality:
Version 3.02
Version 3.02 includes the following functionality:
- 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.
- Addition of 32 bit executable test.
Version 3.01
Version 3.01 includes the following functionality:
- Bug fix for Session Manager dialog, attach dialog and attach wizard.
- Bug fix for caching with breakpoint data.
Version 3.00
Version 3.00 includes the following functionality:
- New "hooking with breakpoints" hooking mechanism reduces the number of unhookable lines to nearly zero.
- Addition of bar graph coverage statistics on main displays.
- Bug fix for crash with repainting embedded edit control.
- Improved call/function filtering for Map files and for Borland debug information.
Version 2.35
Version 2.35 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.34
Version 2.34 includes the following functionality:
- Bug fix for Source Files Filter Import/Export.
Version 2.33
Version 2.33 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.31
Version 2.32 includes the following functionality:
- Bug fix for hooking using Delphi MAP data, to handle .itext segments.
- 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.31
Version 2.31 includes the following functionality:
- Addition of merge-at-start option for Auto Merging.
- 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.29
Version 2.30 includes the following functionality:
- Internal development version.
Version 2.29
Version 2.29 includes the following functionality:
- Internal development version.
Version 2.27
Version 2.28 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.27
Version 2.27 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.25
Version 2.26 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.25
Version 2.25 includes the following functionality:
- Bug fix for exporting XML with line number information.
- Updated Source Files Filter dialog to add Export... and Import... buttons.
Version 2.24
Version 2.24 includes the following functionality:
- Performance improvement for reading and writing instrumentation cache files.
- Performance improvement for reading files.
- Change to export dialog for source code exporting and XML.
- Change to command line behaviour for source code exporting and XML.
- Addition of error code status to exported data.
- 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.23
Version 2.23 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.22
Version 2.22 includes the following functionality:
- Bug fix for crash when double click on Reset button on settings dialog.
- Misc maintenance improvements.
Version 2.21
Version 2.21 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.20
Version 2.20 includes the following functionality:
Version 2.19
Version 2.19 includes the following functionality:
- Minor user interface bug fixes and usability improvements.
Version 2.18
Version 2.18 includes the following functionality:
- UI modification for files and lines.
Version 2.17
Version 2.17 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.16
Version 2.16 includes the following functionality:
- Improved colouring on File and Lines tab..
Version 2.15
Version 2.15 includes the following new functionality:
- Bug fix for redisplay of data when Functions data display is set to "Directory".
Version 2.14
Version 2.14 includes the following new functionality:
- Support for instrumenting Borland BPL files.
Version 2.13
Version 2.13 includes the following new functionality:
Version 2.12
Version 2.12 includes the following new functionality:
- Support for launching .Net 1.0/1.1/2.0 applications.
Version 2.11
Version 2.11 includes the following new functionality:
- IMproved HTML Help handling.
Version 2.10
Version 2.10 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.09
Version 2.09 includes the following new functionality:
- 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.08
Version 2.08 includes the following new functionality:
- Bug fix for COFF/CodeView debugging info reading.
Version 2.06
Version 2.07 includes the following new functionality:
- Bug fix for load/saving settings.
- Updated scrollbar handling for editor component.
Version 2.06
Version 2.06 includes the following new functionality:
- Bug fix for auto merge settings and application shutdown.
Version 2.04
Version 2.05 includes the following new functionality:
- Bug fix for session manager dialog.
Version 2.04
Version 2.04 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.
Version 2.02
Version 2.03 includes the following new functionality:
- Bug fix for auto merge file creation.
- 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.02
Version 2.02 includes the following new functionality:
- Improvements to how regression tests are handled - files copied to different places, some files not created,
non-existent directory handling, etc.
Version 2.00
Version 2.01 includes the following new functionality:
- Default settings changed to provide more line hooking and provide diagnostic information by default.
- Bug fix for diagnostic tab when loading or switching sessions.
- Bug fix for potential buffer overflow on user interface.
- Bug fix for tutorial handling and tip of day.
- Improved splitter window resizing.
Version 2.00
Version 2.00 includes the following new functionality:
- UI modifications for launch dialog.
- Bug fix for Global Hook UI DLLs.
Version 1.99
Version 1.99 includes the following new functionality:
Version 1.98
Version 1.98 includes the following new functionality:
Version 1.97
Version 1.97 includes the following new functionality:
- New options for exporting data on export session dialog.
- New command line option for exporting data.
-showMergeWithReport none | top | bottom
- New command line options for controlling auto-merge.
- -mergeToCentralSession
- -mergeCentralToCurrentSession
- -centralDirectory dirName
- -centralFileName fileName
Version 1.96
Version 1.96 includes the following new functionality:
- Bug fix for failing to load MFC80(u)(d).DLL symbols.
- Minor user interface changes.
Version 1.95
Version 1.95 includes the following new functionality:
- Bug fix for export timestamp.
- Bug fix for UI Global Hook intercept dialog.
- Bug fix for DLL Hooking.
Version 1.94
Version 1.94 includes the following new functionality:
- Merge session dialog is now resizable.
- <SOURCEFILE> tag has extra data (NUM_FUNCTIONS and NUM_FUNCTIONS_VISITED) in summary and coverage view.
Version 1.93
Version 1.93 includes the following new functionality:
- Bug fix for command line processing.
- Command line processing documentation update.
- New command line parameter:
-exportType File
-exportType Class
-exportType SummaryAndCoverage
Version 1.92
Version 1.92 includes the following new functionality:
- Addition of timestamp threshold for MAP files.
- Change to sorting algorithm.
Version 1.91
Version 1.91 includes the following new functionality:
- New export format.
- New command line argument -exportDescription.
- Support for Borland MAP files.
Version 1.90
Version 1.90 includes the following new functionality:
- Bug fix for next/prev buttons on source code view causing statistics to disappear.
Version 1.89
Version 1.89 includes the following new functionality:
- Option to allow specification of files and directories to be processed or excluded from processing.
Version 1.88
Version 1.88 includes the following new functionality:
- Update to accomodated debug format change with Visual Studio 2005.
Version 1.87
Version 1.87 includes the following new functionality:
- Bug fix for data export for functions having the first line unhooked.
- Bug fix for filters - context menu filtering now supports multiple selection.
- Feature improvement - files that will be filtered on the next instrumentation run can
be displayed using different colours - new option on Colours settings tab.
Version 1.86
Version 1.86 includes the following new functionality:
- Bug fix for incorrectly displayed unhooked data.
- Addition of -- comment facility for -commandFile arguments.
- Bug fix for merging of session files.
- Editor component maintenance updated.
Version 1.85
Version 1.85 includes the following new functionality:
- Bug fix for Summary tab when delete a session.
- New command line options for controlling exporting of data.
- -exportUnvisitedLines
- -exportVisitedLines
- -exportUnvisitedFunctions
- -exportVisitedFunctions
- -exportUnhooked
- -exportDetailedReport
- -exportDoColourCode
- -exportMultipleFiles
- Bug fix for Num Visits statistics on Functions tab.
- Bug fix for setting instrumentation filters from context menu - settings saved to registry immediately.
- Updated Merge session dialog to allow user to choose how sessions are merged.
- New command line options for controlling session merging.
- -mergeUsingAddress
- -mergeUsingSymbol
Version 1.84
Version 1.84 includes the following new functionality:
- Bug fix for session export filename case-insensitivity comparison.
- Multiple titles added to session export - one per session.
Version 1.83
Version 1.83 includes the following new functionality:
- Automatic file association.
- Bug fix:Symbol Cache flag updated when settings loaded.
Version 1.82
Version 1.82 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.81
Version 1.81 includes the following new functionality:
- Editing options expanded to include Visual Studio.NET 2002, 2003, 2005, SCiTE editor.
Version 1.80
Version 1.80 includes the following new functionality:
- Bug fix for Unicode environment variables.
Version 1.79
Version 1.79 includes the following new functionality:
Version 1.78
Version 1.78 includes the following new functionality:
- New warnings for .NET applications on Launch dialog.
- 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.
- XML export SOURCEFILE tag has additional information about DLL added to it.
- Support for loading two sessions from the command line and comparing them without having to run a test session.
- New command line arguments -loadSession1, -loadSession2, -numSessions.
- Minor command line bug fixes.
- Improved command line help topics.
Version 1.77
Version 1.77 includes the following new functionality:
- Bug fix for HTML export and XML export occasionally appearing to not export data to a file when used on the
command line (the data was exported but not to the file the user specified).
Version 1.76
Version 1.76 includes the following new functionality:
- Help now supplied as HTML Help rather than WinHelp.
Version 1.75
Version 1.75 includes the following new functionality:
- StatusBar update.
- Bug fix for Borland symbol handling crash.
Version 1.74
Version 1.74 includes the following new functionality:
- Bug fix for long command arguments stored in registry failing to load.
Version 1.73
Version 1.73 includes the following new functionality:
Version 1.72
Version 1.72 includes the following new functionality:
- Bug fix for XML export.
- Bug fix for display diacritical characters and characters above 127.
Version 1.71
Version 1.71 includes the following new functionality:
- Instrumentation bug fix for hooking code containing computed unconditional jmp instructions.
Version 1.70
Version 1.70 includes the following new functionality:
- DLL Filtering bug fix.
- UI improvement for DLLs to Hook settings dialog.
- Bug fix for load/save settings.
- Command line bug fixes.
- Files not to hook - can now filter by directory.
- Class and Function filter - has symbol browser.
- New context menu filters on all views for Filename, Directory and DLL.
- Filtering bug fixes.
Version 1.69
Version 1.69 includes the following new functionality:
- Bug fix for failing to instrument a DLL that has been filtered.
- Bug fix for XML export crash.
Version 1.68
Version 1.68 includes the following new functionality:
- Injection feedback speedup.
Version 1.67
Version 1.67 includes the following new functionality:
- Misc user interface bug fixes.
Version 1.66
Version 1.66 includes the following new functionality:
- User Interface improvement - numbers formatted according to user's choice of locale.
Version 1.65
Version 1.65 includes the following new functionality:
- Bug fix register corruption in hook.
Version 1.64
Version 1.64 includes the following new functionality:
- Source code coverage colouring scheme change.
- Bug fix for editor.
- Bug fix for potential crash with synthetic hooks.
- Bug fix for line hooking with CodeView debug information (Metrowerks).
Version 1.63
Version 1.63 includes the following new functionality:
- Bug fix for session export.
Version 1.62
Version 1.62 includes the following new functionality:
- Licensing bug fix - only affects evaluation versions.
Version 1.61
Version 1.61 includes the following new functionality:
Version 1.60
Version 1.60 includes the following new functionality:
- Bug fix installer.
- Bug fix for licensing.
- Removal of SE_SECURITY_NAME privilege requirement for working with services.
- Updated help.
Version 1.59
Version 1.59 includes the following new functionality:
- Bug fix for session loading.
Version 1.58
Version 1.58 includes the following new functionality:
- Changed injection feedback mechanism to improve hooking.
- Improved error reporting during hooking.
Version 1.57
Version 1.57 includes the following new functionality:
Version 1.56
Version 1.56 includes the following new functionality:
- Context menu on tooltip support.
Version 1.55
Version 1.55 includes the following new functionality:
- Addition of User Privilege checks when accessing the Registry and setting debugging privileges.
Version 1.54
Version 1.54 includes the following new functionality:
- Bug fix for resource error for "Reset Statistics" button.
- Addition of Collapsed status for Functions view.
Version 1.53
Version 1.53 includes the following new functionality:
Version 1.52
Version 1.52 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.
Version 1.51
Version 1.51 includes the following new functionality:
- Edit menu clipboard handling bug fix.
Version 1.50
Version 1.50 includes the following new functionality:
- Bug fix for statistics update on source code viewing pane.
- Bug fix for Auto-Merge when set to rebuild and number of files changes.
Version 1.49
Version 1.49 includes the following new functionality:
- Bug fix for source file types on settings dialog.
- Bug fix for file extension filters on settings dialog.
- Bug fix for filter by file name with files that have no path in debug information (Borland C++).
- Bug fix for results tab data update.
- Feature improvement:Cached data is invalidated when hook extension filters are modified.
- Feature improvement:Cached data is invalidated source files to exclude are modified.
Version 1.48
Version 1.48 includes the following new functionality:
- Support for multiple instances of Coverage Validator running at the same time.
- Launch Dialog and Launch Wizard provide environment variable support.
- Additional statistics on the Summary tab.
Version 1.47
Version 1.47 includes the following new functionality:
- Virtual tree control font bug fix.
Version 1.46
Version 1.46 includes the following new functionality:
- Virtual grid/tree control graphics bug fix.
Version 1.45
Version 1.45 includes the following new functionality:
- Session export now asks for persmission to overwrite existing files.
- User interface controls updated after loading settings from a file.
Version 1.44
Version 1.44 includes the following new functionality:
- Bug fix for statistic on Summary view.
Version 1.43
Version 1.43 includes the following new functionality:
- Bug fix for unhooked lines count for inline functions when merging sessions or loading sessions.
- Bug fix for sorting by percentage visited on Coverage and Functions tabs when
including unhooked lines.
Version 1.42
Version 1.42 includes the following new functionality:
- Bug fix for changing cache related settings affecting instrumentation.
- Bug fix for sorting by percentage visited on Coverage and Functions tabs when
including unhooked lines.
- Bug fix for syntax coloured editor.
Version 1.41
Version 1.41 includes the following new functionality:
- Additional support for Borland BPL files.
- Bug fix for unloading of modules.
Version 1.40
Version 1.40 includes the following new functionality:
- Bug fix for template class name handling on Functions view.
- Addition of global hook detector.
Version 1.39
Version 1.39 includes the following new functionality:
- Bug fixes for when unhooked lines are not included in the statistics. These statistics manifest as
incorrect statistic value shown on display or incorrectly coloured line shown on display. The items shown
below have been fixed with regard to this issue.
- Summary View.
- Functions View (all 4 views available on combo box).
- File and Lines View.
- Address Query Dialog.
- Find Function Dialog.
- Address Query Dialog.
- HTML session export.
Version 1.38
Version 1.38 includes the following new functionality:
- New command line options:
- -exportMergedAsHTML filename
- -exportMergedAsXML filename
- -enableMergeIntoCurrentSession
- -disableMergeIntoCurrentSession
- Bug fixes for merging when run from the command line.
- Bug fix for merging when using the session merge dialog.
Version 1.37
Version 1.37 includes the following new functionality:
Version 1.36
Version 1.36 includes the following new functionality:
- File name compare bug fix for special case Auto Merge.
Version 1.35
Version 1.35 includes the following new functionality:
- Auto Merge user interface change - addition of directory specification.
- Bug fix for name of merged session during session merge.
- File extension bug fix.
- Misc other bug fixes.
Version 1.34
Version 1.34 includes the following new functionality:
- Hook insertion optimization.
- Bug fix for export session dialog.
Version 1.33
Version 1.33 includes the following new functionality:
- Bug fix for example project: removal of unnecessary link to dbghelp.lib.
- Example project: Addition of ANSI project settings.
- Multi-select on various file dialogs.
- Configurable embedded statistics in source code view.
Version 1.32
Version 1.32 includes the following new functionality:
- Bug fix: Hook Insertion tab did not correctly control hooking of statically linked CRT/MFC.
- Misc bug fixes.
- Updated help and tutorial.
Version 1.31
Version 1.31 includes the following new functionality:
- Addition of Summary tab.
- File locations bug fix.
- Updated help.
Version 1.30
Version 1.30 includes the following new functionality:
Version 1.29
Version 1.29 includes the following new functionality:
- Settings dialog bug fix.
- File locations bug fix.
Version 1.28
Version 1.28 includes the following new functionality:
- Tutorial bug fix.
- Bug fix for FORTRAN95 files.
- Example application shipped with Coverage Validator - for use with the tutorial.
Version 1.27
Version 1.27 includes the following new functionality:
- Bug fix for merged sessions support.
Version 1.26
Version 1.26 includes the following new functionality:
- Support for Borland C++ Builder.
- Support for Borland C++ Delphi.
- Synchronization handling changes to ensure robustness when exception handling.
- Bug fix for Salford Software's FORTRAN 95.
Version 1.25
Version 1.25 includes the following new functionality:
- Support for Metrowerks C++ compiler and other compilers using CodeView symbol data.
- Support for Salford Software FORTRAN95 compiler and other compilers using COFF symbol data.
Version 1.24
Version 1.24 includes the following new functionality:
- Maintenance update. Misc bug fixes.
Version 1.23
Version 1.23 includes the following new functionality:
- Mouse wheel support for editing component.
Version 1.22
Version 1.22 includes the following new functionality:
- Bug fix for XML export malformed XML document.
- Fully qualified filename display option.
- Editor component bug fix for selected region display.
Version 1.21
Version 1.21 includes the following new functionality:
- Improvement for symbol handling.
- Editor component bug fix.
Version 1.20
Version 1.20 includes the following new functionality:
- Enhanced editor component - embedded text can be aligned left or right.
Version 1.19
Version 1.19 includes the following new functionality:
- Visit count displayed alongside source code.
Version 1.18
Version 1.18 includes the following new functionality:
- Bug fix for code rewriting hooks.
- Bug fix for crash if editing definitions damaged in registry.
Version 1.17
Version 1.17 includes the following new functionality:
- Progress bar feedback for hooking using cached instrumentation data.
- Bug fix for merging sessions - symbol data was not merged correctly. This also resulted in failure
to display any data on the Functions tab when a merged session was loaded.
- Faster shutdown code in stub when not running in a service.
Version 1.15
Version 1.16 includes the following new functionality:
- Improved support for services.
Version 1.14
Version 1.15 includes the following new functionality:
- Performance improvement: Instrumentation without caching speed improvment of approximately 10% or more, depending upon application.
Version 1.13
Version 1.14 includes the following new functionality:
Version 1.12
Version 1.13 includes the following new functionality:
Version 1.12
Version 1.12 includes the following new functionality:
- Bug fix for command line quoted argument handling.
- New toolbar icons.
- Maintenance work.
Version 1.11
Version 1.11 includes the following new functionality:
- Bug fix for symbol handling.
Version 1.10
Version 1.10 includes the following new functionality:
- Bug fix for hooking DLLs.
Version 1.09
Version 1.09 includes the following new functionality:
- Feature improvement: Ability to attach to a running service.
Version 1.08
Version 1.08 includes the following new functionality:
- Bug fix:Map files only read when timestamp agrees with DLL.
Version 1.07
Version 1.07 includes the following new functionality:
- Bug fix for LoadLibraryEx().
Version 1.06
Version 1.06 includes the following new functionality:
- Improved performance of tree control.
- Improved function and line hooking algorithms.
Version 1.05
Version 1.05 includes the following new functionality:
- Addition of synthetic hooks to improve code coverage statistics.
Version 1.04
Version 1.04 includes the following new functionality:
- Addition code for cvLicense.exe and Coverage 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 1.03
Version 1.03 includes the following new functionality:
- Potential deadlock during advanced 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 1.02
Version 1.02 includes the following new functionality:
- More Robustness improvements for function and line hooking.
- Line Coverage information coallescing improvement for release builds of target application.
Version 1.01
Version 1.01 includes the following new functionality:
- Robustness improvement for function and line hooking.
Version 1.00
Version 1.00 is the first commercial version of Coverage Validator. Release date: 25 March, 2003.
Beta History
Version 0.28
Version 0.28 has the following improvements and changes.
Version 0.27
Version 0.27 has the following improvements and changes.
- Fix file locations bug.
- Column sorting on file and lines tab.
- Limited Column sorting on functions tab.
Version 0.26
Version 0.26 has the following improvements and changes.
- Tree control - fix redrawing bug found on Functions tab.
Version 0.25
Version 0.25 has the following improvements and changes.
- Summary tab, all columns can now be sorted by clicking on the column header.
- Column widths on all summary, functions and file and line tabs are remembered between sessions.
Version 0.24
Version 0.24 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.
Version 0.23
Version 0.23 includes the following new functionality:
- Internal minor bug fixes.
Version 0.22
Version 0.22 includes the following new functionality:
- Fix for subtle bug that can result in a very few addresses getting the wrong coverage statistics. The
correct statistics were collected, but a bug in the UI would attribute them to a different address.
- 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.21
Version 0.21 includes the following new functionality:
- Misc. internal improvements.
Version 0.20
Version 0.20 includes the following new functionality:
- Improvements for the don't hook DLLs option.
- Addition of global hook detection options.
Version 0.19
Version 0.19 includes the following new functionality:
- Bug fix for formatting of XML document tag codeFragment, attribute function.
Version 0.18
Version 0.18 includes the following new functionality:
- Symbol names mangled by the C++ compiler are displayed unmangled.
- Functions view has new check box to allow function return type and parameter types to be displayed.
- Minor UI resources fix.
- tips.txt updated.
Version 0.17
Version 0.17 includes the following new functionality:
- Bug fix for potential (but rare) deadlock on diagnostics tab.
- Bug fix for memory corruption when copying data to the clipboard.
Version 0.16
Version 0.16 includes the following new functionality:
- Auto update of source code window on right side to show coverage changes as they happen.
- Fixed broken resource IDs for Feedback check boxes on dialogs.
- No progress dialogs when running in hidden mode from the command line.
Version 0.15
Version 0.15 includes the following new functionality:
- Bug fix for command line interface eating alternate unspecified args.
- Addition of Auto Merge functionality, accessible via settings dialog, Auto Merge tab.
- Misc UI improvements.
Version 0.14
Version 0.14 includes the following new functionality:
- Improved command line interface.
- Addition of F5, F6, F7, F8 keys to provide navigation to visited/unvisited lines.
- Misc bug fixes.
- Addition of overall project summary statistics on Summary tab.
Version 0.13
Version 0.13 includes the following new functionality:
- Bug fix for crash on functions view when displaying very long method names.
Version 0.12
Version 0.12 includes the following new functionality:
- Source code panes cleared when session deleted.
- Improvement to error reporting for lines that could not be hooked.
- Improvement to hooking - more lines are now hooked.
- Bug fix for hooking - prevent hooking existing hooks caused by inline functions.
Version 0.11
Version 0.11 includes the following new functionality:
- Navigation buttons added to source code panes.
- XML export bug fixed.
- User interface crash fixed.
Version 0.10
Version 0.10 includes the following new functionality:
- Help file completed.
- Various user interface bugs fixed.
Version 0.09
Version 0.09 includes the following new functionality:
- Command line arguments completed.
- Class, method and function filtering completed.
Version 0.08
Version 0.08 includes the following new functionality:
- Partial implementation of filtering by class, method and function.
- Misc UI bug fixes.
Version 0.07
Version 0.07 includes the following new functionality:
- Coverage Validator now works release binaries as well as debug binaries.
- New data settings user interface.
- New Coverage data interface.
Version 0.06
Version 0.06 includes the following new functionality:
- Bug fix for rare crash when DLL loaded into same address space as a previously unloaded DLL, and
aggressive line hooking enabled.
- Bug fix for aggressive hooking of return instructions.
Version 0.05
Version 0.05 includes the following new functionality:
Version 0.04
Version 0.04 includes the following new functionality:
- Changed defaults for aggressiveness of line hooking to be non-aggressive. This is because we have found
some applications that these settings do not work for and we have not had time to analyse and fix the hooking failures.
- Added support for performing coverage analysis via command line parameters.
- Added support for merging of data in a new session into a previous session so that all
coverage data for the same application is recorded in one session. This allows you to do cumulative
analysis using multiple runs of your product. Merging is done using the session manager on the Managers menu.
At this time, no help documentation is available for this feature, although operation of the feature is
self explanatory. After merging sessions, remember to select the session you merged into, before you dro out
of the session manager.
Version 0.03
Version 0.03 includes the following new functionality:
- Hooking Feedback dialogs now displayed for modules loaded after start.
Version 0.02
Version 0.02 includes the following new functionality:
- Map file handling improvements.
- Internal maintenance bug fixes.
- Addition of exception handler dialog to present a callstack and register dump if Coverage Validator crashes.
Version 0.01
Initial Coverage Validator beta version made available to selected beta testers.
Software Verify Coverage Validator Team.