Forum Discussion

ael's avatar
ael
New Contributor
15 years ago

Delphi 2010 executables cause crash

Hello,



I've tried (as per another thread suggestion) to exclude routines with no source info but to no avail, AQTime (4.93) always crash when loading a Delphi 2010 executable.



Is there a way to make this version of AQTime work with executables produced with Delphi 2010 or is it only possible with AQTime 6.3 ?



Also, is the first chance exception bug caused by FastMM fixed in recent AQTime builds ?



Cordially.

  • Hi Boris,





    AQtime 4.93 does not support Delphi 2010, we have implemented the support much later, in AQtime 6. So, the only reliable way to avoid the problem is to upgrade to the latest AQtime version.





    >>> Also, is the first chance exception bug caused by FastMM fixed in recent AQTime builds ?

    Please check whether you can reproduce the problem in AQtime 6 when profiling a simple application with FastMM included. If you can, please send us the application (the compiled executable and the source code) via the Contact Support form:

    http://www.automatedqa.com/support/message/


  • ael's avatar
    ael
    New Contributor
    Thanks for the clarification.



    Indeed as far as I know AQTime 6.2 still crash, but 6.3 seems to handle the executable without errors.

  • Hi Giel,





    The case you mentioned is a known limitation of AQtime - due to some technical issues with the delayed functions implementation in Delphi 2010, AQtime cannot profile them. So, AQtime 6.30 automatically excludes the functions from the profiling, and thus avoids the application's crashing.
  • Giel's avatar
    Giel
    Occasional Contributor
    Are you sure 6.3 excludes the delayed imports already? Allen's reply in the thread I mentioned led me to believe it's not in the current version yet, maybe I've misinterpreted that.





    Giel

  • Hello Giel,





    I have checked and the problem was actually closed before AQtime 6.30 release, so the fix should have been included in this release.

    If you see the problem in version 6.30, please let me know.
  • Giel's avatar
    Giel
    Occasional Contributor
    Alex,



    I tried 6.30. It says it doesn't instrument the delayed imports indeed. There's still one that causes a crash though: adding the small unit below will cause the program to crash in AQTime, even though AQTime says it didn't instrument IsThemeActive. I guess the interesting part is that the function is called in the unit initialization section.





    Giel



    ---------------------------------------



    unit crash;


    interface


    uses Windows;


    implementation


    function IsThemeActive: bool; external 'uxtheme.dll' name 'IsThemeActive' delayed;


    begin

      IsThemeActive;

    end.



  • Hi Giel,





    Thanks for the sample code - we are aware of the problem, and we will fix it in the next AQtime update.

    Sorry for the inconvenience.
  • Giel's avatar
    Giel
    Occasional Contributor
    It works fine in 6.40. I even purchased an upgrade :-)



    Giel