IDE Fix Pack 4.0 / DelphiSpeedUp 3.0 release

By | April 18, 2011

After more than 5 months of testing I eventually found the time to release the new IDE Fix Pack 4.0 and DelphiSpeedUp 3.0. The main change is the improved Code Completion/Code Insight performance that IDE Fix Pack (2009, 2010, XE) and DelphiSpeedUp (7, 2007) introduce.

Update 2011-04-20:
For those with the Tools/Options problem in D2007/2009/2010/XE.
You could try the following:
Create a new system environment variable “IDEFixPack.DisabledPatches” and set its value to “RTL.StringOptimization” (both without the quotes). Then start BDS.exe.

Download:

Name IDE Version File Size Downloads Added
IDE Fix Pack 6.4.2 2009 (UP4) IDEFixPack2009Reg64.2.7z 242.75 KB 5773 times 2019-03-23
IDE Fix Pack 6.4.2 2010 (UP5) IDEFixPack2010Reg64.2.7z 237.09 KB 6579 times 2019-03-23
IDE Fix Pack 6.4.2 XE (UP1) IDEFixPackXEReg64.2.7z 221.38 KB 4097 times 2019-03-23
IDE Fix Pack 6.4.2 XE2 (UP4+HF1) IDEFixPackXE2Reg64.2.7z 316.78 KB 4515 times 2019-03-23
IDE Fix Pack 6.4.2 XE3 (UP2) IDEFixPackXE3Reg64.2.7z 257.4 KB 3640 times 2019-03-23
IDE Fix Pack 6.4.2 XE4 (UP1) IDEFixPackXE4Reg64.2.7z 260.1 KB 3253 times 2019-03-23
IDE Fix Pack 6.4.2 XE5 (UP2) IDEFixPackXE5Reg64.2.7z 257.7 KB 3754 times 2019-03-23
IDE Fix Pack 6.4.2 XE6 (UP1) IDEFixPackXE6Reg64.2.7z 423 KB 3441 times 2019-03-23
IDE Fix Pack 6.4.2 XE7 (UP1) IDEFixPackXE7Reg64.2.7z 429.48 KB 4609 times 2019-03-23
IDE Fix Pack 6.4.2 XE8 (UP1) IDEFixPackXE8Reg64.2.7z 431.7 KB 3891 times 2019-03-23
IDE Fix Pack 6.4.2 10 Seattle (RTM/UP1) IDEFixPackD10Reg64.2.7z 428.33 KB 5379 times 2019-03-23
IDE Fix Pack 6.4.2 10.1 Berlin IDEFixPackD101Reg64.2.7z 430.65 KB 5965 times 2019-03-23
IDE Fix Pack 6.4.2 10.2 (RTM/UP1/2/3) IDEFixPackD102Reg64.2.7z 426.27 KB 9423 times 2019-03-23
IDE Fix Pack 6.4.4 10.3 (RTM/UP1/2/3) IDEFixPackD103Reg64.4.7z 444.98 KB 17852 times 2019-08-01

Name IDE Version File Size Downloads Added
DelphiSpeedUp 3.0 for Delphi 7 7DelphiSpeedUpV30D7.7z78.55 KB1447 times2011-04-18

Name IDE Version File Size Downloads Added
DelphiSpeedUp 3.0 for Delphi 2007 2007DelphiSpeedUpV30D2007.7z100.66 KB1044 times2011-04-18

Changelog: 2011-04-18 (4.0):

  • Added: Extensive Code Completion/Code Insight optimizations
  • Added: Compiler file search cache
  • Added: Fix for: Compilation takes longer and longer when compiling multiple times
  • Added: TXmlIniFile optimization for the IDE’s usage pattern / dproj files are now better formatted.
  • Added: Reduces the time that the background compiler needs to compile
  • Added: Another Error Insight “Cannot resolve unit” fix
  • Added fix for: QC #88038: Delphi always maximizes itself on taskbar change
  • Added fix for: QC #89148: TListView ItemData streaming error
  • Added fix for: QC #89149: Saving a form with a ListView can kill the IDE
  • Added fix for: QC #93152: TBitBtn.DoubleBuffered default doesn’t match constructor’s default
  • Fixed: The Editor Focus fix caused the IDE’s menu bar to shrink if “Minimize on start” is set

31 thoughts on “IDE Fix Pack 4.0 / DelphiSpeedUp 3.0 release

  1. Cesar Romero

    Hi Andreas,

    Im getting this error when click in Menu Tools | Options, after click OK, it works, but I see this error every time, any idea how to avoid this?

    (00002C5E){IDEFixPack.dll} [0B803C5E]
    [40006FFB]{vcltouch150.bpl} Gestures.TPlatformGestureEngine.TRealTimeStylus.InAirPackets (Line 723, “Gestures.pas” + 0) + $7
    [5004F206]{rtl150.bpl } SysUtils.Trim (Line 5811, “SysUtils.pas” + 3) + $18
    [4808111E]{Jcl150.bpl } Jclunitversioning.TUnitVersion.RCSfile + $E
    [139F4A64]{JclBaseExpert150.bpl} Jclotaunitversioningsheet.TJclOtaUnitVersioningFrame + $228
    [20AE03AE]{coreide150.bpl} OTAAddinPropPage.TOTAAddinPropSheet.PropertySheetCreate (Line 57, “OTAAddinPropPage.pas” + 13) + $B
    [21174EB1]{vclide150.bpl} IDEPropSheet.TPropertySheet.AfterConstruction (Line 127, “IDEPropSheet.pas” + 3) + $C
    [5003A7C1]{rtl150.bpl } System.@AfterConstruction (Line 12170, “System.pas” + 2) + $5
    [21174E66]{vclide150.bpl} IDEPropSheet.TPropertySheet.Create (Line 121, “IDEPropSheet.pas” + 10) + $2A
    [21175582]{vclide150.bpl} IDEPropSheet.TPropertySheetControl.CreateTabSheet (Line 397, “IDEPropSheet.pas” + 3) + $4
    [2117555E]{vclide150.bpl} IDEPropSheet.TPropertySheetControl.PropertySheetChanged (Line 386, “IDEPropSheet.pas” + 27) + $5
    [2117527D]{vclide150.bpl} IDEPropSheet.TPropertySheets.Update (Line 274, “IDEPropSheet.pas” + 1) + $10
    [5009EE6A]{rtl150.bpl } Classes.TCollection.Changed (Line 4715, “Classes.pas” + 0) + $A
    [5009EEDB]{rtl150.bpl } Classes.TCollection.EndUpdate (Line 4735, “Classes.pas” + 1) + $0
    [2097CBF5]{coreide150.bpl} EnvOptions.TEnvironmentOptions.AddInCustomizeDialog (Line 1874, “EnvOptions.pas” + 11) + $5
    [2097A44F]{coreide150.bpl} EnvOptions.TEnvironmentOptions.StampIt (Line 1022, “EnvOptions.pas” + 19) + $10
    [5013A3F5]{rtl150.bpl } Rtti.RawInvoke (Line 5538, “Rtti.pas” + 46) + $0
    [5013A75A]{rtl150.bpl } Rtti.Invoke (Line 5729, “Rtti.pas” + 38) + $6
    [501335D9]{rtl150.bpl } Rtti.TRttiInstanceMethodClassic.GetCallingConvention (Line 4103, “Rtti.pas” + 1) + $2
    [50133F7F]{rtl150.bpl } Rtti.TRttiInstanceMethodEx.DispatchInvoke (Line 4408, “Rtti.pas” + 130) + $17
    [5013ABC0]{rtl150.bpl } Rtti.TRttiMethod.Invoke (Line 5859, “Rtti.pas” + 1) + $11
    [2097A30E]{coreide150.bpl} EnvOptions.TEnvironmentOptions.Edit (Line 990, “EnvOptions.pas” + 2) + $6F
    [500AED6F]{rtl150.bpl } Classes.TBasicAction.Execute (Line 12988, “Classes.pas” + 3) + $7
    [5026AA15]{vcl150.bpl } ActnList.TContainedAction.Execute (Line 448, “ActnList.pas” + 8) + $2C
    [5026B7F0]{vcl150.bpl } ActnList.TCustomAction.Execute (Line 1094, “ActnList.pas” + 7) + $8
    [500AEC33]{rtl150.bpl } Classes.TBasicActionLink.Execute (Line 12917, “Classes.pas” + 2) + $7
    [21773505]{vclactnband150.bpl} ActnMenus.TCustomActionMenuBar.ExecAction (Line 1071, “ActnMenus.pas” + 6) + $D
    [21774D5C]{vclactnband150.bpl} ActnMenus.TCustomActionMenuBar.TrackMenu (Line 1837, “ActnMenus.pas” + 19) + $15
    [21778386]{vclactnband150.bpl} ActnMenus.TCustomActionMainMenuBar.TrackMenu (Line 3574, “ActnMenus.pas” + 5) + $3
    [217730C9]{vclactnband150.bpl} ActnMenus.TCustomActionMenuBar.CMItemClicked (Line 950, “ActnMenus.pas” + 3) + $4
    [5027DF6C]{vcl150.bpl } Controls.TControl.WndProc (Line 7074, “Controls.pas” + 91) + $6
    [171C3469]{cxLibraryD15.bpl} Cxcontainer.TcxCustomInnerListBox.CNDrawItem + $695
    [50282830]{vcl150.bpl } Controls.TWinControl.WndProc (Line 9831, “Controls.pas” + 144) + $6
    [21774E72]{vclactnband150.bpl} ActnMenus.TCustomActionMenuBar.WndProc (Line 1876, “ActnMenus.pas” + 25) + $4
    [50281ED0]{vcl150.bpl } Controls.TWinControl.MainWndProc (Line 9552, “Controls.pas” + 3) + $6
    [500AFA64]{rtl150.bpl } Classes.StdWndProc (Line 13491, “Classes.pas” + 8) + $0
    [50278AA6]{vcl150.bpl } Controls.FindControl (Line 3378, “Controls.pas” + 6) + $9
    [50358AF7]{vcl150.bpl } Forms.TApplication.ProcessMessage (Line 9760, “Forms.pas” + 23) + $1
    [50358B3A]{vcl150.bpl } Forms.TApplication.HandleMessage (Line 9790, “Forms.pas” + 1) + $4
    [50358E65]{vcl150.bpl } Forms.TApplication.Run (Line 9927, “Forms.pas” + 26) + $3

    1. Nedko

      @Cesar, I get the same error.
      In order to stop this annoying message from appearing I go to “Install Packages” and I uncheck the “JCL Integration of version control systems in the IDE”

      @Andy: Thank you for the great work! Embarkadero should pay you full time salary for making their product much more bearable 🙂

      1. Andreas Hausladen Post author

        That must be it. I don’t have the JCL Version Control IDE expert installed (because I do not need it, I’m using Explorer+TortoiseSVN).

        1. Andreas Hausladen Post author

          Don’t look good. I’ve now installed JclVersionControlExpert###.bpl into Delphi 2010 and XE, and I can’t reproduce this bug.

          1. Sharken

            I get the same error as above using these versions:
            JCL 2.2 Build 3817
            JVCL 3.40

            Selecting Tools->JCL Options and clicking NO also returns the error.

            What version did you test with Andreas ?

  2. Delphinium

    In Delphi 7 with DelphiSpeedUp 3.0 I get “Access violation at 40008EEC in rtl70.bpl. Read of address 0000002C” when switching between projects (sometimes one switch works). After that I hve to restart Delphi.
    DelphiSpeedUp 2.80 works without any problems.
    Do you have any idea what might cause the error?

    1. Andreas Hausladen Post author

      I haven’t tested Delphi 7 (and 2007) that much because I don’t use them and I have to start a VM to test them.

      1. Anonymous

        The bug can be reproduced by using the “Find Declaration” feature in the IDE. Do a “Find Declaration” or “Ctrl-Left Click” on any class that is defined in a different unit. The IDE will navigate to that unit. The access violation will happen when closing the unit that was loaded to return to the original location.

        Great work !

        1. Andreas Hausladen Post author

          I still must do something differently (or DSU is in conflict with another IDE plugin you have installed).

          1. Start Delphi 7 (DSU, CnWizards, thousands of components)
          2. Open a large project
          3. Ctrl+Left Click on a class name that is declared in a different unit
          4. Close the newly opened editor tab by pressing Ctrl+F4

  3. Rico

    Thank you! These are most important “extensions” for my daily work.

  4. EMB

    Using IDEFixpack for 2010 and DelphiSpeedUP for 7.o Working great till now. Thank you very much! 🙂

  5. Torsten Spieckermann

    Hi Andreas,

    I have the same errors in D7 and DXE above.
    Is an explicit version of JCL / JVCL required ?
    But thanks anyway for your work !

    From the sunny Berlin

    Torsten

  6. Petr

    Hi Andreas,

    great work and thank you very much for the tools.

    @JCL problem: I too have the same problem in Delphi XE, but it is not IDE fix related, because I do get the error without IDE fix (if I remember correctly there is no stack trace without IDE fix). So far I ignore it, maybe next version of JCL will fix it.

    @IDE Fix: Could it be that it can cause the editor window to hang, or better stop painting? I still can write code, but editor windows does not react at all (like still image). I am able to save my work and correctly close the whole IDE, with the “unseen” changes being saved correctly as well. There was no such problem with 3.5 version. It doesn’t happen immediately, but after several minutes (or hours) of programming. I also have CnWizards installed.

    Thanks anyway for your effort.
    Petr

    1. Anonymous

      I see the same editor repaint problem. Seems to be quite random.

  7. Ijcro

    Dear Andreas
    I am using BDS 2006 still, so is old now sorry, I know. Please exists fix for this IDE? Thank you
    I.

  8. egon

    I can reliably produce this Delphi 7 bug. This happens when a file is being closed.

    Here’s the call stack:


    Call Stack Information:
    ----------------------------------------------------------------------------------------------
    |Address |Module |Unit |Class |Procedure/Method |Line|
    ----------------------------------------------------------------------------------------------
    |Running Thread: ID=704; Priority=0; Class=; [Main] |
    |--------------------------------------------------------------------------------------------|
    |7C903247|ntdll.dll | | |RtlConvertUlongToLargeInteger| |
    |77F17E1C|GDI32.dll | | |GetTextMetricsW | |
    |77F17E2C|GDI32.dll | | |GetTextMetricsW | |
    |7C90E485|ntdll.dll | | |KiUserApcDispatcher | |
    |400095F0|rtl70.bpl |System.pas | |_IntfClear | |
    |7C9010E0|ntdll.dll | | |RtlLeaveCriticalSection | |
    |00D244DA|borlndmm.dll |Borlndmm.pas | |SysGetMem | |
    |7C90D6F8|ntdll.dll | | |NtProtectVirtualMemory | |
    |7C90D348|ntdll.dll | | |ZwFlushInstructionCache | |
    |7C80228B|kernel32.dll | | |WriteProcessMemory | |
    |400062D6|rtl70.bpl |System.pas | |_HandleAnyException | |
    |4002F482|rtl70.bpl |Classes.pas |TList |Add | |
    |40010008|rtl70.bpl |Sysutils.pas | |FmtStr | |
    |4000FFE6|rtl70.bpl |Sysutils.pas | |Format | |
    |7C9010E0|ntdll.dll | | |RtlLeaveCriticalSection | |
    |40003445|rtl70.bpl |System.pas | |_FreeMem | |
    |40003440|rtl70.bpl |System.pas | |_FreeMem | |
    |40006E20|rtl70.bpl |System.pas | |_LStrClr | |
    |7C910380|ntdll.dll | | |RtlImageNtHeader | |
    |400062D6|rtl70.bpl |System.pas | |_HandleAnyException | |
    |7C903247|ntdll.dll | | |RtlConvertUlongToLargeInteger| |
    |7C90E485|ntdll.dll | | |KiUserApcDispatcher | |
    |400095F0|rtl70.bpl |System.pas | |_IntfClear | |
    |005142CC|coreide70.bpl |Docmodul.pas |TCodeIDocModule |NotifyDestroyed | |
    |0035746C|designide70.bpl|Toolutils.pas| |ForEach | |
    |0051424A|coreide70.bpl |Docmodul.pas |TCodeIDocModule |NotifyDestruction | |
    |0051423C|coreide70.bpl |Docmodul.pas |TCodeIDocModule |NotifyDestruction | |
    |400060F0|rtl70.bpl |System.pas | |_BeforeDestruction | |
    |0054EC2F|coreide70.bpl |Modules.pas | |TUnitModule | |
    |00513090|coreide70.bpl |Docmodul.pas |TDocModule |CanFree | |
    |40005CE0|rtl70.bpl |System.pas |TObject |Free | |
    |40005CD8|rtl70.bpl |System.pas |TObject |Free | |
    |00513C09|coreide70.bpl |Docmodul.pas |TDocModule |WalkDependencies | |
    |00513BFC|coreide70.bpl |Docmodul.pas |TDocModule |WalkDependencies | |
    |005130AC|coreide70.bpl |Docmodul.pas |TDocModule |Close | |
    |005139B3|coreide70.bpl |Docmodul.pas |TDocModule |SaveAndClose | |
    |4003D37B|rtl70.bpl |Classes.pas |TBasicAction |Execute | |
    |4003D36C|rtl70.bpl |Classes.pas |TBasicAction |Execute | |
    |0083D4A9|vcl70.bpl |Actnlist.pas |TContainedAction |Execute | |
    |0083D478|vcl70.bpl |Actnlist.pas |TContainedAction |Execute | |
    |0083E16B|vcl70.bpl |Actnlist.pas |TCustomAction |Execute | |
    |4003D24F|rtl70.bpl |Classes.pas |TBasicActionLink |Execute | |
    |0084496F|vcl70.bpl |Menus.pas |TMenuItem |Click | |
    |40005EF0|rtl70.bpl |System.pas | |_CallDynaInst | |
    |0085559C|vcl70.bpl |Forms.pas |TApplication |IsShortCut | |
    |7E42F406|user32.dll | | |SendMessageA | |
    |7E42F3C2|user32.dll | | |SendMessageA | |
    |0082D29E|vcl70.bpl |Controls.pas | |SendAppMessage | |
    |0082D284|vcl70.bpl |Controls.pas | |SendAppMessage | |
    |008369A0|vcl70.bpl |Controls.pas |TWinControl |IsMenuKey | |
    |00836A34|vcl70.bpl |Controls.pas |TWinControl |CNKeyDown | |
    |0057B786|coreide70.bpl |Editors.pas |TCustomEditControl|CNKeyDown | |
    |00831A98|vcl70.bpl |Controls.pas |TControl |WndProc | |
    |7E42B3C6|user32.dll | | |CallNextHookEx | |
    |00831910|vcl70.bpl |Controls.pas |TControl |WndProc | |
    |00834914|vcl70.bpl |Controls.pas |TWinControl |MainWndProc | |
    |7E42F406|user32.dll | | |SendMessageA | |
    |7E42F3C2|user32.dll | | |SendMessageA | |
    |00855527|vcl70.bpl |Forms.pas |TApplication |IsKeyMsg | |
    |008554B0|vcl70.bpl |Forms.pas |TApplication |IsKeyMsg | |
    |00855608|vcl70.bpl |Forms.pas |TApplication |ProcessMessage | |
    |008556C2|vcl70.bpl |Forms.pas |TApplication |HandleMessage | |
    |008556B8|vcl70.bpl |Forms.pas |TApplication |ProcessMessages | |
    |0085585C|vcl70.bpl |Forms.pas |TApplication |Run | |
    |7C90DCB8|ntdll.dll | | |ZwSetInformationThread | |
    ----------------------------------------------------------------------------------------------

    If you need any additional info or want me to run some debug thing then you can contact me.

  9. Andreas Hausladen Post author

    For those with the Tools/Options problem in D2007/2009/2010/XE.
    You could try the following:
    Create a new system environment variable “IDEFixPack.DisabledPatches” and set its value to “RTL.StringOptimization” (both without the quotes). Then start BDS.exe.

  10. Alexander

    Hi Andreas,

    I made this video http://db.tt/WZqYiJK (Windows Media Player codec) for you.
    May be it help you for D7 bug.
    DelphiSpeedUp 3.0, DDevExtensions 2.3, GExperts 1.34

    Thanks for your work!

    1. Andreas Hausladen Post author

      Thanks for the video. But even after installing GExperts 1.34 I can’t reproduce this bug (WinXP SP3, all updates installed, VMWare 832MB, 1 CPU, Delphi 7 Professional, all Updates)

      1. Evandro

        Do you have fixed it? It’s annoying, and when I close a unit without saving the changes and this error happens, if I open that again it’s like I had saved, then I have to close Delphi and open all again so that my unit come back without the unsaved changes. One more thing that I noted, is that using the close all other units option is not working anymore, and in the 2.8 version that I was using it works well. DelphiSpeedUp 3.0, DDevExtensions 2.3, GExperts 1.34, CnPack and using Windows 7 x64.

Comments are closed.