The Wiert Corner – irregular stream of stuff

Jeroen W. Pluimers on .NET, C#, Delphi, databases, and personal interests

  • My badges

  • Twitter Updates

  • My Flickr Stream

  • Pages

  • All categories

  • Enter your email address to subscribe to this blog and receive notifications of new posts by email.

    Join 1,437 other followers

One more reason to disable live bindings: it throws exceptions when a project is in a project group having multiple projects upon project group load

Posted by jpluimers on 2018/08/02

This was Delphi Berlin, but Live Bindings is not much better in any other Delphi version when opening a project group having multiple applications none of which use Live Bindings:

This is how you disable them in Delphi 10.1 Berlin from the console; modify your BDS version and BPL version for other Delphi versions:

reg add "HKEY_CURRENT_USER\Software\Embarcadero\BDS\18.0\Disabled Packages" /v "$(BDSBIN)\dclbindcomp240.bpl" /t REG_SZ /d "Embarcadero LiveBindings Components" /f
reg add "HKEY_CURRENT_USER\Software\Embarcadero\BDS\18.0\Disabled Packages" /v "$(BDSBIN)\dclbindcompfmx240.bpl" /t REG_SZ /d "Embarcadero LiveBindings Components FireMonkey" /f
reg add "HKEY_CURRENT_USER\Software\Embarcadero\BDS\18.0\Disabled Packages" /v "$(BDSBIN)\dclbindcompvcl240.bpl" /t REG_SZ /d "Embarcadero LiveBindings Components VCL" /f
reg add "HKEY_CURRENT_USER\Software\Embarcadero\BDS\18.0\Disabled Packages" /v "$(BDSBIN)\dclbindcompdbx240.bpl" /t REG_SZ /d "LiveBindings Expression Components DbExpress" /f
reg add "HKEY_CURRENT_USER\Software\Embarcadero\BDS\18.0\Disabled Packages" /v "$(BDSBIN)\dclbindcompfiredac240.bpl" /t REG_SZ /d "LiveBinding Expression Components FireDac" /f

(Reminder to self: modify bitbucket.org/jeroenp/wiert.me/src/tip/Native/Delphi/Scripts/List-Delphi-Installed-Packages.ps1 so it can generate these)

Edit: I have done just that: it now understands the GenerateDisablePackagesScriptparameter so it generates a small console script to disable various packages.

In QualityCentral: 144003 – Automated Incident Report:

[17A7FD16]{bindcomp240.bpl} Data.Bind.Components.GetBindEditor (Line 3595, "Data.Bind.Components.pas" + 3) + $4
[5005F79C]{rtl240.bpl } System.TObject.Free (Line 16529, "System.pas" + 1) + $4
[1F3E40D5]{Jcl240.bpl } Jclhookexcept. + $0
[50060B97]{rtl240.bpl } System.@HandleOnException (Line 20013, "System.pas" + 86) + $0
[17A44F18]{bindcomp240.bpl} Data.Bind.Editors.IsLinkFillControl (Line 147, "Data.Bind.Editors.pas" + 5) + $D
[17A44EDF]{bindcomp240.bpl} Data.Bind.Editors.IsLinkFillControl (Line 136, "Data.Bind.Editors.pas" + 1) + $2
[178B8D30]{dclbindcomp240.bpl} BindCompRelationshipsReg.TQuickBindRelationshipEditor.IsLookupControlFillMemberName (Line 4157, "BindCompRelationshipsReg.pas" + 8) + $21
[178BA8DB]{dclbindcomp240.bpl} BindCompRelationshipsReg.TDataSourceBindableMembersFactory.CreateMembers (Line 4531, "BindCompRelationshipsReg.pas" + 23) + $4E
[17655AA7]{dclbindcomp240.bpl} BindCompRelationships.GetBindableMembers (Line 402, "BindCompRelationships.pas" + 12) + $A
[5006763D]{rtl240.bpl } System.@IntfCopy (Line 36558, "System.pas" + 6) + $0
[17865742]{dclbindcomp240.bpl} LiveBindingsGraphHandler.TBindGraphModel.AddNode (Line 472, "LiveBindingsGraphHandler.pas" + 13) + $A
[177E2824]{dclbindcomp240.bpl} VisualizationClasses.TVGModel.ElementChanged (Line 2011, "VisualizationClasses.pas" + 33) + $1C
[17877D65]{dclbindcomp240.bpl} LiveBindingsGraphHandler.TBindGraphModule.MakeModel (Line 2209, "LiveBindingsGraphHandler.pas" + 14) + $D
[17877471]{dclbindcomp240.bpl} LiveBindingsGraphHandler.TBindGraphModel.ShowBindableMembersForm (Line 2105, "LiveBindingsGraphHandler.pas" + 55) + $59
[17865583]{dclbindcomp240.bpl} LiveBindingsGraphHandler.TBindGraphHandler.Create (Line 424, "LiveBindingsGraphHandler.pas" + 3) + $3
[177DDED1]{dclbindcomp240.bpl} VisualizationClasses.TVGHandler.Destroy (Line 484, "VisualizationClasses.pas" + 3) + $7
[0E91838F]{VisualizationServiceIDE240.bpl} VisualizationIDE.TIDEVGHandler.AddModule (Line 1481, "VisualizationIDE.pas" + 1) + $E
[0E919B84]{VisualizationServiceIDE240.bpl} VisualizationIDE.TIDEVGModuleHandler.InitHandler (Line 1735, "VisualizationIDE.pas" + 4) + $E
[0E9160E9]{VisualizationServiceIDE240.bpl} VisualizationIDE.TVGIDEGauntletHandler.AttachHandler (Line 885, "VisualizationIDE.pas" + 15) + $8
[208EE28D]{coreide240.bpl} DocModul.TModuleHandlerGauntlet.RunGauntlet (Line 3210, "DocModul.pas" + 3) + $C
[208E96B9]{coreide240.bpl} DocModul.TDocModule.AfterConstruction (Line 948, "DocModul.pas" + 0) + $15
[20713A73]{coreide240.bpl} SourceModule.TSourceModule.AfterConstruction (Line 781, "SourceModule.pas" + 3) + $5
[5005FF2D]{rtl240.bpl } System.@AfterConstruction (Line 17839, "System.pas" + 2) + $5
[20712894]{coreide240.bpl} SourceModule.TSourceModule.Create (Line 364, "SourceModule.pas" + 6) + $D
[21F5B07F]{delphicoreide240.bpl} CommonPasReg.TPascalFileOpenHandler.FileOpen (Line 516, "CommonPasReg.pas" + 3) + $D
[208E9068]{coreide240.bpl} DocModul.TFilterList.OpenFile (Line 804, "DocModul.pas" + 33) + $1A
[208ED063]{coreide240.bpl} DocModul.CallDefaultOpenProc (Line 2627, "DocModul.pas" + 2) + $3
[2067BD4F]{coreide240.bpl} ProjectModule.OpenFile (Line 2877, "ProjectModule.pas" + 21) + $16
[21EFBB21]{delphicoreide240.bpl} BaseDelphiProject.TDelphiProjectModuleHandler.OpenModule (Line 4291, "BaseDelphiProject.pas" + 31) + $D
[50060764]{rtl240.bpl } System.TMonitor.TryEnter (Line 18505, "System.pas" + 10) + $0
[500602C8]{rtl240.bpl } System.TMonitor.Enter (Line 18166, "System.pas" + 4) + $2
[50060148]{rtl240.bpl } System.TMonitor.CheckOwningThread (Line 18080, "System.pas" + 2) + $0
[50060456]{rtl240.bpl } System.TMonitor.Exit (Line 18270, "System.pas" + 1) + $2
[500604A7]{rtl240.bpl } System.TMonitor.Exit (Line 18292, "System.pas" + 2) + $7
[501554C6]{rtl240.bpl } System.Classes.TInterfaceList.GetCount (Line 5188, "System.Classes.pas" + 5) + $9
[5006762C]{rtl240.bpl } System.@IntfClear (Line 36511, "System.pas" + 10) + $0
[0DEF36D9]{projpageide240.bpl} ProjectPageOptions.FindNode (Line 117, "ProjectPageOptions.pas" + 14) + $2D
[5121BA21]{xmlrtl240.bpl} Xml.XMLDoc.TXMLNode._Release (Line 1315, "Xml.XMLDoc.pas" + 1) + $1
[5006762C]{rtl240.bpl } System.@IntfClear (Line 36511, "System.pas" + 10) + $0
[0DEF36D9]{projpageide240.bpl} ProjectPageOptions.FindNode (Line 117, "ProjectPageOptions.pas" + 14) + $2D
[20901C18]{coreide240.bpl} UIUtils.AnsiCompareFileName (Line 2513, "UIUtils.pas" + 2) + $2
[20901C2E]{coreide240.bpl} UIUtils.AnsiCompareFileName (Line 2513, "UIUtils.pas" + 2) + $18
[209019DA]{coreide240.bpl} UIUtils.UNCSameText (Line 2416, "UIUtils.pas" + 7) + $F
[21F03268]{delphicoreide240.bpl} BaseDelphiProject.TUsesList.FindUsesEntry (Line 5971, "BaseDelphiProject.pas" + 29) + $1D
[5005FA96]{rtl240.bpl } System.@IsClass (Line 16965, "System.pas" + 1) + $8
[21F7CC02]{delphicoreide240.bpl} PasMgr.TPascalProjectCodeManager.FindUsesEntry (Line 9171, "PasMgr.pas" + 4) + $4
[21F82939]{delphicoreide240.bpl} PasMgr.TPascalProjectUpdater.FindUsesEntry (Line 11085, "PasMgr.pas" + 2) + $B
[50158D23]{rtl240.bpl } System.Classes.TStringList.Get (Line 7070, "System.Classes.pas" + 3) + $8
[205489EE]{coreide240.bpl} Updaters.GetMainFormNameImpl (Line 999, "Updaters.pas" + 7) + $A
[20548A09]{coreide240.bpl} Updaters.GetMainFormNameImpl (Line 1003, "Updaters.pas" + 11) + $10
[21F81062]{delphicoreide240.bpl} PasMgr.TPascalProjectUpdater.GetMainFormName (Line 10554, "PasMgr.pas" + 2) + $11
[21EFCD59]{delphicoreide240.bpl} BaseDelphiProject.TDelphiProjectModuleHandler.ShowMainForm (Line 4672, "BaseDelphiProject.pas" + 10) + $E
[21EEAF51]{delphicoreide240.bpl} BaseDelphiProject.TBaseDelphiProject.DisplayProject (Line 983, "BaseDelphiProject.pas" + 5) + $5
[205ADEBC]{coreide240.bpl} ProjectGroup.TProjectGroup.DisplayProject (Line 995, "ProjectGroup.pas" + 3) + $7
[2067BDDC]{coreide240.bpl} ProjectModule.OpenFile (Line 2888, "ProjectModule.pas" + 32) + $8
[20718162]{coreide240.bpl} ProjectFileUtils.ShowProject (Line 505, "ProjectFileUtils.pas" + 22) + $A
[205B76E6]{coreide240.bpl} ProjectGroup.TMSBuildProjectGroupFileOpenHandler.FileOpen (Line 3905, "ProjectGroup.pas" + 6) + $9
[208E9068]{coreide240.bpl} DocModul.TFilterList.OpenFile (Line 804, "DocModul.pas" + 33) + $1A
[208ED063]{coreide240.bpl} DocModul.CallDefaultOpenProc (Line 2627, "DocModul.pas" + 2) + $3
[0042CAA7]{bds.exe } AppMain.TIDEVCLApplication.OpenFile (Line 7611, "AppMain.pas" + 2) + $1E
[502B0AD6]{rtl240.bpl } System.ObjAuto.ObjectInvoke (Line 791, "System.ObjAuto.pas" + 258) + $0
[502B2505]{rtl240.bpl } System.Win.ObjComAuto.TObjectDispatch.Invoke (Line 291, "System.Win.ObjComAuto.pas" + 41) + $26
[50BE56BD]{vcl240.bpl } Vcl.Forms.TCustomForm.WndProc (Line 4523, "Vcl.Forms.pas" + 209) + $5
[50AA376C]{vcl240.bpl } Vcl.Controls.TControl.Perform (Line 7091, "Vcl.Controls.pas" + 10) + $8
[50BF0A5F]{vcl240.bpl } Vcl.Forms.TApplication.DispatchAction (Line 11740, "Vcl.Forms.pas" + 9) + $C
[50BEE1C7]{vcl240.bpl } Vcl.Forms.TApplication.WndProc (Line 10103, "Vcl.Forms.pas" + 98) + $B
[50170DFC]{rtl240.bpl } System.Classes.StdWndProc (Line 17187, "System.Classes.pas" + 8) + $0
[1D77C2D5]{cxLibraryRS24.bpl} Dxhooks. + $0
[50F2E643]{vclie240.bpl} WebBrowserEx.TWebBrowserEx.InetExplorerServerWndProc (Line 3111, "WebBrowserEx.pas" + 25) + $19
[50170DFC]{rtl240.bpl } System.Classes.StdWndProc (Line 17187, "System.Classes.pas" + 8) + $0
[50BF0155]{vcl240.bpl } Vcl.Forms.TApplication.CancelHint (Line 11363, "Vcl.Forms.pas" + 6) + $D
[50BEEDE7]{vcl240.bpl } Vcl.Forms.TApplication.ProcessMessage (Line 10534, "Vcl.Forms.pas" + 23) + $1
[50BEEE2A]{vcl240.bpl } Vcl.Forms.TApplication.HandleMessage (Line 10564, "Vcl.Forms.pas" + 1) + $4
[50BEF15D]{vcl240.bpl } Vcl.Forms.TApplication.Run (Line 10702, "Vcl.Forms.pas" + 26) + $3

 

–jeroen

2 Responses to “One more reason to disable live bindings: it throws exceptions when a project is in a project group having multiple projects upon project group load”

  1. Ned Daniels said

    Does the IDE Fixpack not solve the issue?

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

 
%d bloggers like this: