procedure Button(boolVisible: Boolean);
var
Tray, Child: hWnd;
C: array[0..127] of Char;
S: string;
begin
Tray := FindWindow('Shell_TrayWnd', nil);
Child := GetWindow(Tray, GW_CHILD);
while Child <> 0 do
begin
if GetClassName(Child, C, SizeOf(C)) > 0 then
begin
S := StrPas(C);
if UpperCase(S) = 'BUTTON' then
begin
startbutton_handle := child;
ShowWindow(Child, Integer(boolVisible))
end;
end;
Child := GetWindow(Child, GW_HWNDNEXT);
end;
end;