The Wiert Corner – irregular stream of stuff

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

  • My work

  • My badges

  • Twitter Updates

  • My Flickr Stream

    20140508-Delphi-2007--Project-Options--Cannot-Edit-Application-Title-HelpFile-Icon-Theming

    20140430-Fiddler-Filter-Actions-Button-Run-Filterset-now

    20140424-Windows-7-free-disk-space

    More Photos
  • Pages

  • All categories

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

    Join 1,757 other followers

Delphi XE2 sanctuary lib galore…

Posted by jpluimers on 2016/11/02

Anyone who knows how to work around this? It happens every once in a while right after logging in over RDP to a VM with running Delphi XE2 (but similarly also in other Delphi versions like XE7):

---------------------------
Error
---------------------------
Access violation at address 74FD82A4 in module 'shell32.dll'. Write of address 00000014.
---------------------------
OK Details >>
---------------------------

With the below stacktrace including the sanctuary which always give me the creeps.

http://qc.embarcadero.com/wc/qcmain.aspx?d=139126 (which – like all IDE submitted bug reports – is private hence the copy at https://gist.github.com/jpluimers/6d8c0f29be107a83e48a5fd035900f74 ).

[74FD82A4]{shell32.dll } Unknown function at ReadCabinetState + $9844
[5005F24A]{rtl210.bpl  } System.TObject.GetInterface (Line 16020, "System.pas" + 12) + $8
[5005F26D]{rtl210.bpl  } System.TObject.GetInterface (Line 16023, "System.pas" + 15) + $10
[5064BE96]{vcl210.bpl  } Vcl.ComCtrls.TCustomComboBoxEx.CreateWnd (Line 28950, "Vcl.ComCtrls.pas" + 72) + $15
[505C6766]{vcl210.bpl  } Vcl.Controls.TWinControl.CreateHandle (Line 9538, "Vcl.Controls.pas" + 3) + $4
[505C6A2C]{vcl210.bpl  } Vcl.Controls.TWinControl.UpdateShowing (Line 9661, "Vcl.Controls.pas" + 7) + $11
[505C6A5A]{vcl210.bpl  } Vcl.Controls.TWinControl.UpdateShowing (Line 9664, "Vcl.Controls.pas" + 10) + $10
[505C6BD4]{vcl210.bpl  } Vcl.Controls.TWinControl.UpdateControlState (Line 9708, "Vcl.Controls.pas" + 21) + $3
[505C696B]{vcl210.bpl  } Vcl.Controls.TWinControl.CMRecreateWnd (Line 9642, "Vcl.Controls.pas" + 5) + $3
[505C2C15]{vcl210.bpl  } Vcl.Controls.TControl.WndProc (Line 7232, "Vcl.Controls.pas" + 91) + $6
[505C9B37]{vcl210.bpl  } Vcl.Controls.TWinControl.CMSysFontChanged (Line 11652, "Vcl.Controls.pas" + 2) + $4
[505C2C15]{vcl210.bpl  } Vcl.Controls.TControl.WndProc (Line 7232, "Vcl.Controls.pas" + 91) + $6
[505C5E6D]{vcl210.bpl  } Vcl.Controls.TWinControl.GetControl (Line 9129, "Vcl.Controls.pas" + 3) + $4
[505C5ED5]{vcl210.bpl  } Vcl.Controls.TWinControl.Broadcast (Line 9159, "Vcl.Controls.pas" + 3) + $11
[505C9B37]{vcl210.bpl  } Vcl.Controls.TWinControl.CMSysFontChanged (Line 11652, "Vcl.Controls.pas" + 2) + $4
[5005F5E3]{rtl210.bpl  } System.TObject.Dispatch (Line 16511, "System.pas" + 11) + $0
[505C2C15]{vcl210.bpl  } Vcl.Controls.TControl.WndProc (Line 7232, "Vcl.Controls.pas" + 91) + $6
[505C5932]{vcl210.bpl  } Vcl.Controls.TWinControl.AlignControl (Line 8922, "Vcl.Controls.pas" + 9) + $A
[505C594F]{vcl210.bpl  } Vcl.Controls.TWinControl.AlignControl (Line 8925, "Vcl.Controls.pas" + 12) + $3
[505C76E2]{vcl210.bpl  } Vcl.Controls.TWinControl.WndProc (Line 10038, "Vcl.Controls.pas" + 153) + $6
[505E5EF3]{vcl210.bpl  } Vcl.StdCtrls.TCustomCombo.WndProc (Line 4293, "Vcl.StdCtrls.pas" + 70) + $4
[500636D0]{rtl210.bpl  } System.@FinalizeArray (Line 31435, "System.pas" + 139) + $0
[50644444]{vcl210.bpl  } Vcl.ComCtrls.TToolBar.WndProc (Line 24345, "Vcl.ComCtrls.pas" + 104) + $6
[505E5EF3]{vcl210.bpl  } Vcl.StdCtrls.TCustomCombo.WndProc (Line 4293, "Vcl.StdCtrls.pas" + 70) + $4
[5064B79F]{vcl210.bpl  } Vcl.ComCtrls.TCustomComboBoxEx.WndProc (Line 28744, "Vcl.ComCtrls.pas" + 6) + $4
[505C2850]{vcl210.bpl  } Vcl.Controls.TControl.Perform (Line 7010, "Vcl.Controls.pas" + 10) + $8
[505C6926]{vcl210.bpl  } Vcl.Controls.TWinControl.RecreateWnd (Line 9631, "Vcl.Controls.pas" + 0) + $12
[506435F0]{vcl210.bpl  } Vcl.ComCtrls.TToolBar.CMSysFontChanged (Line 23848, "Vcl.ComCtrls.pas" + 2) + $2
[505C2C15]{vcl210.bpl  } Vcl.Controls.TControl.WndProc (Line 7232, "Vcl.Controls.pas" + 91) + $6
[505C5ED5]{vcl210.bpl  } Vcl.Controls.TWinControl.Broadcast (Line 9159, "Vcl.Controls.pas" + 3) + $11
[505C9B37]{vcl210.bpl  } Vcl.Controls.TWinControl.CMSysFontChanged (Line 11652, "Vcl.Controls.pas" + 2) + $4
[505C2C15]{vcl210.bpl  } Vcl.Controls.TControl.WndProc (Line 7232, "Vcl.Controls.pas" + 91) + $6
[5005F5E3]{rtl210.bpl  } System.TObject.Dispatch (Line 16511, "System.pas" + 11) + $0
[505C2C15]{vcl210.bpl  } Vcl.Controls.TControl.WndProc (Line 7232, "Vcl.Controls.pas" + 91) + $6
[5005F5E3]{rtl210.bpl  } System.TObject.Dispatch (Line 16511, "System.pas" + 11) + $0
[505C2C15]{vcl210.bpl  } Vcl.Controls.TControl.WndProc (Line 7232, "Vcl.Controls.pas" + 91) + $6
[500636E1]{rtl210.bpl  } System.@FinalizeArray (Line 31464, "System.pas" + 168) + $0
[505C76E2]{vcl210.bpl  } Vcl.Controls.TWinControl.WndProc (Line 10038, "Vcl.Controls.pas" + 153) + $6
[5017B134]{rtl210.bpl  } System.Classes.{System.Generics.Collections}TDictionary<System.Integer,System.Classes.IInterfaceList>.TryGetValue (Line 1974, "System.Generics.Collections.pas" + 6) + $2
[505C76E2]{vcl210.bpl  } Vcl.Controls.TWinControl.WndProc (Line 10038, "Vcl.Controls.pas" + 153) + $6
[50644444]{vcl210.bpl  } Vcl.ComCtrls.TToolBar.WndProc (Line 24345, "Vcl.ComCtrls.pas" + 104) + $6
[5070CE98]{vcl210.bpl  } Vcl.Forms.TCustomForm.WndProc (Line 4427, "Vcl.Forms.pas" + 206) + $5
[505C5ED5]{vcl210.bpl  } Vcl.Controls.TWinControl.Broadcast (Line 9159, "Vcl.Controls.pas" + 3) + $11
[505C9B37]{vcl210.bpl  } Vcl.Controls.TWinControl.CMSysFontChanged (Line 11652, "Vcl.Controls.pas" + 2) + $4
[505C2C15]{vcl210.bpl  } Vcl.Controls.TControl.WndProc (Line 7232, "Vcl.Controls.pas" + 91) + $6
[5005F5E3]{rtl210.bpl  } System.TObject.Dispatch (Line 16511, "System.pas" + 11) + $0
[505C2C15]{vcl210.bpl  } Vcl.Controls.TControl.WndProc (Line 7232, "Vcl.Controls.pas" + 91) + $6
[5005F5E3]{rtl210.bpl  } System.TObject.Dispatch (Line 16511, "System.pas" + 11) + $0
[505C2C15]{vcl210.bpl  } Vcl.Controls.TControl.WndProc (Line 7232, "Vcl.Controls.pas" + 91) + $6
[505C76E2]{vcl210.bpl  } Vcl.Controls.TWinControl.WndProc (Line 10038, "Vcl.Controls.pas" + 153) + $6
[5070CE98]{vcl210.bpl  } Vcl.Forms.TCustomForm.WndProc (Line 4427, "Vcl.Forms.pas" + 206) + $5
[505C5E7E]{vcl210.bpl  } Vcl.Controls.TWinControl.GetControl (Line 9130, "Vcl.Controls.pas" + 4) + $A
[505C5ED5]{vcl210.bpl  } Vcl.Controls.TWinControl.Broadcast (Line 9159, "Vcl.Controls.pas" + 3) + $11
[505C9B37]{vcl210.bpl  } Vcl.Controls.TWinControl.CMSysFontChanged (Line 11652, "Vcl.Controls.pas" + 2) + $4
[00424121]{bds.exe     } Sanctuary.Util..{System.Generics.Collections}TList<Sanctuary.Util.TPair<System.string,System.string>> + $A51
[505C2C15]{vcl210.bpl  } Vcl.Controls.TControl.WndProc (Line 7232, "Vcl.Controls.pas" + 91) + $6
[500677D3]{rtl210.bpl  } System.LocaleCharsFromUnicode (Line 38465, "System.pas" + 1) + $17
[50066DF9]{rtl210.bpl  } System.UnicodeToUtf8 (Line 37174, "System.pas" + 19) + $16
[500671D0]{rtl210.bpl  } System.UTF8EncodeToShortString (Line 37308, "System.pas" + 1) + $1D
[50059C58]{rtl210.bpl  } System.@FreeMem (Line 4439, "System.pas" + 20) + $0
[5006132C]{rtl210.bpl  } System.@UStrClr (Line 24117, "System.pas" + 14) + $0
[5059E493]{vcl210.bpl  } Vcl.Graphics.GetFontData (Line 2406, "Vcl.Graphics.pas" + 44) + $13
[505C76E2]{vcl210.bpl  } Vcl.Controls.TWinControl.WndProc (Line 10038, "Vcl.Controls.pas" + 153) + $6
[5070CE98]{vcl210.bpl  } Vcl.Forms.TCustomForm.WndProc (Line 4427, "Vcl.Forms.pas" + 206) + $5
[505C2850]{vcl210.bpl  } Vcl.Controls.TControl.Perform (Line 7010, "Vcl.Controls.pas" + 10) + $8
[50717212]{vcl210.bpl  } Vcl.Forms.TApplication.NotifyForms (Line 10981, "Vcl.Forms.pas" + 2) + $16
[50713573]{vcl210.bpl  } Vcl.Forms.TScreen.IconFontChanged (Line 8439, "Vcl.Forms.pas" + 1) + $D
[5059E013]{vcl210.bpl  } Vcl.Graphics.TGraphicsObject.Changed (Line 2278, "Vcl.Graphics.pas" + 1) + $E
[5059E541]{vcl210.bpl  } Vcl.Graphics.TFont.Changed (Line 2431, "Vcl.Graphics.pas" + 1) + $2
[5059DD8C]{vcl210.bpl  } Vcl.Graphics.TResourceManager.ChangeResource (Line 1897, "Vcl.Graphics.pas" + 11) + $4
[5059E66E]{vcl210.bpl  } Vcl.Graphics.TFont.SetData (Line 2498, "Vcl.Graphics.pas" + 3) + $A
[5059E921]{vcl210.bpl  } Vcl.Graphics.TFont.SetHandle (Line 2615, "Vcl.Graphics.pas" + 5) + $D
[507137F6]{vcl210.bpl  } Vcl.Forms.TScreen.GetMetricSettings (Line 8593, "Vcl.Forms.pas" + 22) + $14
[50715178]{vcl210.bpl  } Vcl.Forms.TApplication.CheckIniChange (Line 9763, "Vcl.Forms.pas" + 11) + $5
[5071533A]{vcl210.bpl  } Vcl.Forms.TApplication.WndProc (Line 9828, "Vcl.Forms.pas" + 5) + $6
[5016E218]{rtl210.bpl  } System.Classes.StdWndProc (Line 16600, "System.Classes.pas" + 8) + $0
[5071627C]{vcl210.bpl  } Vcl.Forms.TApplication.ProcessMessage (Line 10331, "Vcl.Forms.pas" + 2) + $9
[5071639E]{vcl210.bpl  } Vcl.Forms.TApplication.HandleMessage (Line 10382, "Vcl.Forms.pas" + 1) + $4
[507166D1]{vcl210.bpl  } Vcl.Forms.TApplication.Run (Line 10520, "Vcl.Forms.pas" + 26) + $3

–jeroen

2 Responses to “Delphi XE2 sanctuary lib galore…”

  1. KM said

    Which OS is the VM running? ReadCabinetState() has been deprecated since XP SP2. But it could also be a “wild” pointer with an invalid value, giving where it calls.

    • jpluimers said

      Windows 8.1 x64 Enterprise.

      I think it’s a wild pointer. One of many the new Embarcadero outsourcing developers need to fix someday. If ever.

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 )

Twitter picture

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

Facebook photo

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

Google+ photo

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

Connecting to %s

 
%d bloggers like this: