Note that there are some explanatory texts on larger screens.

plurals
  1. POWhy does this error keep messing up the XE2 IDE Toolbars?
    primarykey
    data
    text
    <p><strong>Screen Shot</strong></p> <p><img src="https://i.stack.imgur.com/qeWWq.jpg" alt="enter image description here"></p> <p>The following source code was used to produce the error above. All you have to do is compile the program and make sure the IDE is still running (the error does NOT happen if the IDE is closed), click the button 12 to 15 times and the error will popup.</p> <p>Once the error has occurred, switch back to the IDE, all the toolbars for the IDE have then disappeared. You have to shut down the IDE and run again, for them to reappear.</p> <p><strong>Source Code</strong></p> <pre><code>unit MainUnit; interface uses Winapi.Windows, Winapi.Messages, Winapi.ShlObj, System.SysUtils, System.Variants, System.Classes, System.StrUtils, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.StdCtrls; type TMainFrm = class(TForm) Button1: TButton; procedure FormCreate(Sender: TObject); procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var MainFrm: TMainFrm; hDesktop: HWND; implementation {$R *.dfm} function GetHandle(theHandle: HWND; NotUsed: NativeInt): LongBool; stdcall; begin if (theHandle &lt;&gt; 0) then begin hDesktop := FindWindowEx(FindWindowEx(theHandle, 0, 'SHELLDLL_DefView', nil), 0, 'SysListView32', nil); end; Result := (hDesktop = 0); end; procedure TMainFrm.FormCreate(Sender: TObject); var lpss: TShellState; begin ZeroMemory(@lpss, SizeOf(lpss)); try SHGetSetSettings(lpss, SSF_HIDEICONS, False); finally Button1.Caption := IfThen(lpss.fHideIcons, 'Show Icons', 'Hide Icons'); end; EnumWindows(@GetHandle, 0); Button1.Enabled := (hDesktop &lt;&gt; 0); end; procedure TMainFrm.Button1Click(Sender: TObject); const nCmdShow: array [Boolean] of NativeInt = (SW_HIDE, SW_SHOW); var lpss: TShellState; begin ZeroMemory(@lpss, SizeOf(lpss)); try SHGetSetSettings(lpss, SSF_HIDEICONS, False); ShowWindow(hDesktop, nCmdShow[lpss.fHideIcons]); lpss.fHideIcons := (not BOOL(lpss.fHideIcons)); Button1.Caption := IfThen(lpss.fHideIcons, 'Show Icons', 'Hide Icons'); finally SHGetSetSettings(lpss, SSF_HIDEICONS, True); end; end; end. </code></pre> <p><strong>Application Screen Shot</strong></p> <p><img src="https://i.stack.imgur.com/aGWPr.jpg" alt="enter image description here"></p> <p>Any help would be greatly appreciated.</p> <p><strong>UPDATE</strong></p> <p>The IDE toolbars no longer disappear, and the error doesn't appear anymore, thanks to TOndrej for the information about turning off the "Profiler toolbar". Now I get a very annoying flicker that sometimes takes 10 to 15 seconds to return back to normal.</p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload