Delphi悬浮窗任务栏解决方案

Delphi悬浮窗任务栏
 我主窗体用的是MDI,用Delphi写了一个悬浮窗,主窗体最小化到托盘是用的TrayNotifyIcon。有两个问题:
1.不开启悬浮窗,主窗体最小化时,如果子窗体不关闭,则任务栏上仍会显示标题,若我先循环关闭子窗体,
 for i:=0 to MDIChildCount-1 do       //循环读取存在的子窗体
       MDIChildren[i].close;
 self.visible := false;
这样最小化时任务栏上则会消失,我想问有没有办法不用关闭子窗体就可以让MDI主窗体在最小化时不在任务栏上显示。

2. 我另写了一个窗体用作悬浮窗,窗体设置成bsNone,fsStayOnTop.在MDI主窗体最小化时show悬浮窗,悬浮窗功能正常,但任务栏上仍会有标题存在,即使我把子窗体全部关闭了也一样,求解如何让任务栏上不显示标题。
------解决方案--------------------
得到窗口样式然后去掉任务栏??

ExTaskTitle := GetWindowLong(Application.Handle, GWL_EXSTYLE);
ExTaskTitle := ExTaskTitle - WS_EX_TOOLWINDOW;
SetWindowLong(Application.Handle, GWL_EXSTYLE, ExTaskTitle);

未测试.