ProDelphi 44.x Version for 64 and 32-bit-applications
--------------------------------------------------------

Additional remarks which are not in the description or might be overlooked:

  - Don't use the optimization switch of the compiler, in some cases the
    compiler produces wrong code ( this has nothing to do with ProDelphi ),
    and second the measurement results are less correct.

  - The best results concerning correctness are got if the profiled
    program does not run under the IDE.

Limitations of use:

  - Arithmetic expressions in $IF or $ELSEIF statements are always treated
    as TRUE. This is normally no problem (see GuidePD.pdf).
  - An overwritten TForms method DefaultHandler or WndProc should be excluded
    from measurement (//PROFILE-NO): It might be that the runtime inclusive
    child time has a wrong value. (In the call craph the values for the
    called procedures are correct, the sum value displayed in the viewer
    grid MIGHT be incorrect).

Changes made in ProDelphi version 44.0  (9/14/2025)	
- Support of Delphi 13
- Optimization hint concerning ternary operator added (concerning Delphi 13 only)

Changes made in ProDelphi version 43.1  (4/15/2025)	
- If a program has more than 65500 procedures, not all files will be instrumented !
- Therefore, measurement results are not available for all procedures.
- Run times may contain times of uninstrumented child procedures.
	
Changes made in ProDelphi version 43.0  (3/14/2025)
- 64 Bit IDE support for Delphi 12.3 added

Changes made in ProDelphi version 42.3  (2/27/2025)
- UnInstall improved

Changes made in ProDelphi version 42.2  (2/24/2025)
- Internal optimizations

Changes made in ProDelphi version 42.1  (11/10/2024)
- Number of procedures to measure increased from 64000 up to 65500

Changes made in ProDelphi version 42.0  (9/12/2024)
- UI languages Dutch, French and Italian added

Changes made in ProDelphi version 41.3  (5/3/2024)
- Delphi library path was not found, fixed now
- VCL programs without defined unit scope names supported now
- Result data export to CSV files improved

Changes made in ProDelphi version 41.2  (4/2/2024)
- Fonts in callgraph improved

Changes made in ProDelphi version 41.1  (2/15/2024)
- Settings read from project file set by Delphi and visualized by ProDelphi not changeable anymore.

Changes made in ProDelphi version 41.0  (11/7/2023)
- Adaption to Delphi 12
- Viewer font changed to improve readability
- Paper printout font also changed to improve readability

Changes made in ProDelphi version 40.5  (07/10/2023)
  - Cosmetical improvement of the viewer 
  - Log improvement
  - Some wrong hints corrected
  - Progress bar fixed
  - Switching off hints in the viewer deactivates hints in the call graph too
  - English corrected
  - Precision of the viewer selectable: 0, 1, 2 or 3 decimal places

Changes made in ProDelphi version 40.4  (06/08/2023)
  - Viewer window enlargement fixed

Changes made in ProDelphi version 40.4  (05/25/2023)
  - One click expanding for browsers added
  - Callgraph window enlargement added
  
Changes made in ProDelphi version 40.3  (04/7/2023)
  - Wrong warning message deleted
	
Changes made in ProDelphi version 40.2  (04/7/2023)
  - Bugfix: Closing online operation window caused error when ending measured app
  - Improvement: Viewer displays values with localized decimal separator (. ,)

Changes made in ProDelphi version 40.1  (02/27/2023)
  - Warning added
  - Problem with Delphi 11 solved (Starting a measured program by IDE with debugger)

Changes made in ProDelphi version 40.0  (10/08/2022)
  - Viewer displays waiting times (e.g. Sleep / MessageBox)

Changes made in ProDelphi version 39.3  (6/23/2022)
  - UI Beautyfied

Changes made in ProDelphi version 39.2  (3/21/2022)
  - Internal optimizations

Changes made in ProDelphi version 39.1  (12/9/2021)
  - Interface unit improved
  - Closing the online operation window caused exception at program end, fixed

Changes made in ProDelphi version 39.0  (9/9/2021)
  - Adaption to Delphi 11 (Alexandria)

Changes made in ProDelphi version 38.4  (8/29/2021)
  - Problem with Windows scaling text by 150 % solved
  - Displaying of excluded directories fixed

Changes made in ProDelphi version 38.3  (3/30/2021)
  - Call graph now resizable
  - Call graph can be closed by ESC key
  - Selected method in viewer is marked in blue
  - Ctrl + Home and Ctrl + End in viewer realized
  - Unit, class and method search improved

Changes made in ProDelphi version 38.2  (2/21/2021)
  - Interface changed to make console apps profilable

Changes made in ProDelphi version 38.2  (10/20/2020)
  - Automatic profiling improved

Changes made in ProDelphi version 38.1  (10/4/2020)
  - Online Operation Window made usable even a modal form is open
  - Bugfix for measuring threaded 64 bit programs (Prodel64 and Prodel6432)

Changes made in ProDelphi version 38.0  (6/1/2020)
  - Adaption to Delphi 10.4 (Sydney)

Changes made in ProDelphi version 37.5  (9/4/2019)
  - Problem with measurement activation by selected methods

Changes made in ProDelphi version 37.4  (6/9/2019)
  - Mssing headlines for export file and exclusion window added.

Changes made in ProDelphi version 37.3  (5/12/2019)
  - Run up made faster

Changes made in ProDelphi version 37.2  (4/12/2019)
  - Exclude directory window made sizable

Changes made in ProDelphi version 37.1  (3/25/2019)
  - Problem with very long search path solved

Changes made in ProDelphi version 37.0  (11/25/2018)
  - Adaption to Delphi 10.3 Rio
	
Changes made in ProDelphi version 36.1  (7/18/2018)
  - Print functions for tables fixed
	
Changes made in ProDelphi version 36.0  (3/8/2018)
  - Optical improvement
	
Changes made in ProDelphi version 35.4  (12/3/2017)
  - Measuring of inline procedures made possible
	
Changes made in ProDelphi version 35.3  (6/20/2017)
  - One warning message extended
  - Problem with abnormal dproj file fixed

Changes made in ProDelphi version 35.2  (4/23/2017)
  - Wrong warning about undefined compiler symbol PROFILE eliminated
  - Automatic setting of the Delphi version when started by tools menue
  - Batch processing fixed

Changes made in ProDelphi version 35.1  (4/14/2017)
  - Viewer operation improved, log suppressable.

Changes made in ProDelphi version 35.0  (3/25/2017)
  - Adaption to Delphi 10.2 Tokyo.

Changes made in ProDelphi version 34.1  (8/3/2016)
  - Start with commandline parameters improved.

Changes made in ProDelphi version 34.0  (4/24/2016)
  - Adaption to Delphi 10 Berlin.

Changes made in ProDelphi version 33.0  (9/4/2015)
  - Adaption to Delphi 10 Seattle.

Changes made in ProDelphi version 32.0  (4/7/2015)
  - Adaption to Delphi XE8.

Changes made in ProDelphi version 31.2  (4/6/2015)
  - Viewer improved.

Changes made in ProDelphi version 31.1  (2/6/2015)
  - Historical writing of compiler directives [e.g. (*$I filename *) instead
    of {$I filename } ] added.

Changes made in ProDelphi version 31.0a (1/25/2015)
  - Bugfix in interface file (MessageDLG call could not be used with Delphi
    XE6 and XE7).
  - Default value for measurement start set to automatic start (activates
    automatic start of measurement when Profile.ini is missing).
  - Warning in online operation window when profile.ini is missing.
  - Setup program did not detect Delphi 2007.

Changes made in ProDelphi version 31.0  (9/1/2014)
  - Adaption to Delphi XE7.

Changes made in ProDelphi version 30.4  (7/18/2014)
  - Missing German translations added.
  - Warning: No online operation window for console apps added.
  - Missing unit name for console apps in viewer added.

Changes made in ProDelphi version 30.3  (6/6/2014)
  - One error message added, one fixed.

Changes made in ProDelphi version 30.2  (5/20/2014)
  - Viewer exception and size problem fixed.

Changes made in ProDelphi version 30.1  (5/6/2014)
  - Instrumentation exclusion of directories for all projects possible now
    (see Chapter A 12.5 of user guide).

Changes made in ProDelphi version 30.0  (4/15/2014)
  - Adaption to Delphi XE6.

Changes made in ProDelphi version 29.2  (11/23/2013)
  - Source code navigation with Delphi XE5 fixed.

Changes made in ProDelphi version 29.1  (10/29/2013)
  - Environmentvariable in exe-path was not evaluated.
  - For instrumenting programs to be compiled with D2007 you can select
    Debug or Release build (they have different conditionals: DEBUG/RELEASE).
    Importand for whom ? Maybe for no one.

Changes made in ProDelphi version 29.0a  (9/25/2013)
  - Feature Permit Optimization had no effect, activated now.

Changes made in ProDelphi version 29.0  (9/12/2013)
  - Adaption to Delphi XE5

Changes made in ProDelphi version 28.3 / 27.9 (8/30/2013)
  - Optional German user guide

Changes made in ProDelphi version 28.2 / 27.8 (6/22/2013)
  - New Option for measuring application which were compiled with
    optimizaion. 

Changes made in ProDelphi version 28.1 / 27.6 (6/15/2013)
  - Output directory for exe-files was not always read for XE .. XE4. 

Changes made in ProDelphi version 28.0 / 27.5 (4/26/2013)
  - Adaption to Delphi XE4. 

Changes made in ProDelphi version 27.5 / 26.12 (4/7/2013)
  - UI beautified. 
  - German texts for UI added.

Changes made in ProDelphi version 27.4 / 26.11 (3/26/2013)
  - Firemonkey apps could not be measured, fixed. 

Changes made in ProDelphi version 27.3 / 26.10 (1/8/2013)
  - Improvement to make it possible that also instrumented files which are 
    reformatted with the Delphi IDE can be cleaned or re-instrumented.

Changes made in ProDelphi version 27.2 / 26.9 (11/8/2012)
  - Viewer improved.
  - Result can be exported to CSV-files (';' - separated)

Changes made in ProDelphi version 27.1 / 26.8 (11/1/2012)
  - Problem with excluding directories solved.

Changes made in ProDelphi version 27.0 (8/30/2012)
  - Adaption to Delphi XE3

Changes made in ProDelphi version 26.7 / 25.91 (8/24/2012)
  - Multiple entries of the same directory in the Delphi search path now
    without problems (multiple instrumenting of the same file or problems
    with exclusion of directories).

Changes made in ProDelphi version 26.6 / 25.91 (8/13/2012)
  - Setup improved for Windows 7
  - Cosmetical improvement for online operation window

Changes made in ProDelphi version 26.5 / 25.91 (5/1/2012)
  - Compatibility problem in setup for Delphi 5 under Windows 7 solved.
  - Enhancement of trace option for post mortem review.

Changes made in ProDelphi version 26.4 / 25.91 (3/12/2012)
  - Compatibility problem with JEDI solved.

Changes made in ProDelphi version 26.4 / 25.91 (3/10/2012)
  - Problem with creation of temporary files on virtual machines solved.

Changes made in ProfMeas.dll for versions 26.3 / 25.9 (2/13/2012)
  - Functions StopCounting / ContinueCounting made thread safe.

Changes made in ProDelphi version 26.3 / 25.9 (2/13/2012)
  - A search path containing two path separators without a directory between caused exception

Changes made in ProDelphi version 26.2 / 25.8 (11/4/2011)
  - Post Mortem Review now with Trace option. If this option is checked,
    every entering and leaving a method is listed in the DebugDelphi log.
    To use this option, DebugDelphi must be installed and started.

Changes made in ProDelphi version 26.1 / 25.8 (9/16/2011)
  - Anonymus methods were not instrumented properly fixed.

Changes made in ProDelphi version 25.7(9/1/2011)
  - Path problem with Delphi XE solved: '$(PLATFORM)' was not replaced by 'Win32'.

Changes made in ProDelphi version 26.0(8/1/2011)
  - Adaption to Delphi XE2

Changes made in ProDelphi version 25.6(7/12/2011)
  - All DLL's for runtime measurement moved to measured application instead
    of using Windows\System32 directory.

Changes made in ProDelphi version 25.5(5/14/2011)
  - Checked option 'Program + DLLs' caused that files which are not stored
    in directories of the units search path were not cleaned.

Changes made in ProDelphi version 25.4(4/27/2011)
  - Name clash with default handler procedures solved

Changes made in ProDelphi version 25.3(3/20/2011)
  - Besides Debug and Release build configuration now also user configuration
    is possible.
	
Changes made in ProDelphi version 25.2(10/30/2010)
  - Cosmetical improvement.
	
Changes made in ProDelphi version 25.1(9/20/2010)
  - Viewer improvement.
	
Changes made in ProDelphi version 25.0(9/1/2010)
  - Support for Delphi XE.
	
Changes made in ProDelphi version 24.7(8/19/2010)
  - Error message when more than 32 Threads are executed.

Changes made in ProDelphi version 24.6(7/5/2010)
  - Missing warning message and exception when instrumenting files which are
    encoded UCS-2 Big-Endian (Only UCS-2 Little Endian and UTF8 is supported).

Changes made in ProDelphi version 24.5(6/13/2010)
  - Result files can be copied automatically to files with unique file names.
  - Instrumentation stopped when instrumenting a procedure definition with a
    missing ';' after the end statement.

Changes made in ProDelphi version 24.4(2/11/2010)
  - Some VCL-Functions (MESSAGEDLG...) were not recognized if put in brackets.

Changes made in ProDelphi version 24.3(12/1/2009)
  - Adaption to Windows 7.

Changes made in ProDelphi version 24.2(11/11/2009)
  - Bugfix for Setup concerning Delphi 2010.
  - Navigation interface recompiled due to false Virus alert with AVIRA
    Virus scanner.

Changes made in ProDelphi version 24.1(9/10/2009)
  - Support of generic classes.
  - Warning if //PROFILE-BEGIN without // PROFILE-END.
  - Substitution for Delphi directory recognized: 
    e.g. SUBST S: D:\Delphi\D6 -> Delphi source files on drive S: will
    no longer be instrumented if S: is named in the search path.

Changes made in ProDelphi version 24.0(8/28/2009)
  - Adaption to Delphi 2010.

Changes made in ProDelphi version 23.13(8/19/2009)
  - Cosmetical problem in parser solved.

Changes made in ProDelphi version 23.12(7/31/2009)
  - Default directory for loading measurement results set to the correct directory.
  - Explanation in 'First steps' made better understandable.
  - Include files with file extension other than PAS or INC possible now.
  
Changes made in ProDelphi version 23.11(7/9/2009)
  - Changed settings now are stored to file immediately instead at instrumenting
    time.
  - Include files were instrumented even they are stored in an excluded directory
    when a path was given in the include statement.
  - Three more waiting VCL functions (MessageDlg, MessageDlgPos, MessageDlgPosHelp)
    excluded from measurement.
  - Option 'Keep File Date' no longer global, project specific now.
	
Changes made in ProDelphi version 23.10(6/12/2009)
  - Checked option 'Do not change file dates' now also makes that the
    archive attributes are not changed.
  - Profiling log can be copied to clipboard now.
  - Pathes containing 2 subsequent spaces were not profiled.
  - Delphi directories OCX and ObjRepos are excluded from instrumentation.
  - Initialization parts starting with multiple comment lines caused wrong
    instrumentation and compiling error.
  - Settings for excluded directories were lost for new projects when set
    before first instrumentation.
  - Nested include files could cause errors.
  - Cleaning sources did not clean all include files.
  - Maximized viewer window could not be resized.

Changes made in ProDelphi version 23.9(5/8/2009)
  - Pathes containing characters '()' and enviroment variables, e.g. '($XYZ)' caused
    'OutOfMemory', fixed.
  - FastMM units are not instrumented anymore because that stopped using FastMM
    memory manager
	
Changes made in ProDelphi version 23.8(4/29/2009)
  - Profiling log now visible also for cleaning run
  - Try or Case block in Initialisation or Finalisation part caused wrong instrumentation.
  - Number of instrumented methods now displayed in status bar and profiling log.
  - Maximum windows size for callgraph window set.
  - Measured runtime of procedures calling DispatchMessage corrected.
  - Cleaning caused an exception when DPR-file ended with many comments.
  - Measuement results for procedures which use API-function DispatchMessage were wrong, fixed.
  - Sorting bug of %-column in viewer fixed.
  
Changes made in ProDelphi version 23.7(3/30/2009)
  - Command line start of ProDelphi with relative pathname is possble now.
  
Changes made in ProDelphi version 23.6(2/24/2009)
  - Option 'Do not change file dates' did not have any effect, fixed.
  
Changes made in ProDelphi version 23.5(2/16/2009)
  - Commandline start without full pathname of DPR-file does not lead to crash anymore
  - The DelphiSpeedUp units RtlVclOptimize and VclFixPack are not instrumented anymore,
    (instrumenting these caused a crash of the using application)	

Changes made in ProDelphi version 23.4(12/31/2008)
  - Changes only in Unicode version.

Changes made in ProDelphi version 23.3(12/31/2008)
  - Viewer window opens with size and position of last program start.

Changes made in ProDelphi version 23.2(11/2/2008)
  - Problem with path name containing non-english characters solved.

Changes made in ProDelphi version 23.1 (10/24/2008)
  - Problem with non-standard line ends solved (e.g. Citadel example code).
  - Instrumentation optimized
  
Changes made in ProDelphi (Ansi code) version 23.0 (10/9/2008)
  - D2009 support (Ansi code only).
  
Changes made in ProDelphi Version 22.2 (9/21/2008)
  - D2007 problem with different output directories for release and debug
    build solved.
  
Changes made in ProDelphi Version 22.1 (7/21/2008)
  - Incompatibility withe EurekaLog resolved.
  
Changes made in ProDelphi Version 22.0e (5/27/2008)
  - Library path (user part) could not be profiled with D2005 and better.

Changes made in ProDelphi Version 22.0d (4/10/2008)
  - End statement in a label sometimes not recognized completed.

Changes made in ProDelphi Version 22.0c (3/10/2008)
  - End statement in a label sometimes not recognized.

Changes made in ProDelphi Version 22.0b (1/5/2008)
  - A write-protected file was instrumented if it was named as the first
    one in a USES-statement.

Changes made in ProDelphi Version 22.0a (12/21/2007)
  - If-statement in initialization and finalization caused syntax error
  - Instrumented Class functions caused syntax errors

Changes made in ProDelphi Version 22.0 (11/15/2007)
  - Some changes to make ProDelphi run under Vista.
  - Parser bug fixed

Changes made in ProDelphi Version 21.0c (8/28/2007)
  - Processing of Uses-statement improved: Unit parameter split up in 2
    lines caused exception.

Changes made in ProDelphi Version 21.0b (6/12/2007)
  - Cleaning function for CLX library fixed
  - Interface unit for CLX library fixed

Changes made in ProDelphi Version 21.0a (5/29/2007)
  - Improvement of the API-function ProfAppendResults: works now also if
    called inside profiler statements in nested functions.

Changes made in ProDelphi Version 21.0 (5/7/2007)
  - Support for Delphi 2007.
  - Improvements of the viewer.

Changes made in ProDelphi Version 20.0c (29/3/2007)
  - Bugfix: For Delphi 2005 and 2006 the INLINE OFF statement was inserted
    only then when optimization is switched on.

Changes made in ProDelphi Version 20.0b (1/2/2007)
  - Bugfix: Empty initialization section caused finalization statement to
    be deleted.

Changes made in ProDelphi Version 20.0a (10/5/2006)
  - Bugfix: Inserted profiler statement to deactivate inline functions for
    Delphi 2006 was wrong (was for Delphi 2005)

Changes made in ProDelphi Version 20.0 (9/15/2006)
  - Turbo Delphi support  
  - Package support for Delphi 2005 and above improved..

Changes made in ProDelphi 4.0 (10/11/1998):

  - Export into data base,
  - Adding a viewer to look at the results directly with the profiler,
  - measurement results in CPU-cycles availlable
  - 2 minor bug fixes
  - greater accuracy and less measurement overhead compared to previous
    versions by using 64 bit integers instead of data type Comp.
  - measurement results for recursive procedures fixed.
  - greater accuracy for calling of deactivated procedures (professional
    version only).
  - support of Delphi 4.




