es muy facil esto te servira evita cerrar la aplicacion
void __fastcall TForm1::FormCloseQuery(TObject *Sender, bool &CanClose) 
{ 
 
CanClose = false; 
} 
para el icono al lado del reloj usa esto
codigo en el Unit1.cpp
//---------------------------------------------------------------------------
#include <vcl.h>
#include <shellapi.h>
#pragma hdrstop
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
  TrayMessage(NIM_ADD);
  TrayMessage(NIM_MODIFY);
}
//---------------------------------------------------------------------------
//--------------------------------------------------------------------------
bool __fastcall TForm1::TrayMessage(DWORD dwMessage)
{
  NOTIFYICONDATA tnd;
  PSTR pszTip;
   tnd.cbSize          = sizeof(NOTIFYICONDATA);
   tnd.hWnd            = Handle;
   tnd.uID             = IDC_MYICON;
   tnd.uFlags          = NIF_MESSAGE | NIF_ICON | NIF_TIP;
   tnd.uCallbackMessage   = MYWM_NOTIFY;
   if (dwMessage == NIM_MODIFY)
    {
        tnd.hIcon      = (HICON)IconHandle();
        if (pszTip)
           lstrcpyn(tnd.szTip, pszTip, sizeof(tnd.szTip));
       else
        tnd.szTip[0] = '\0';
    }
   else
    {
        tnd.hIcon = NULL;
        tnd.szTip[0] = '\0';
    }
   return (Shell_NotifyIcon(dwMessage, &tnd));
}
HICON __fastcall TForm1::IconHandle(void)
{
 return (Image1->Picture->Icon->Handle);
}
void __fastcall TForm1::FormDestroy(TObject *Sender) {
  TrayMessage (NIM_DELETE);
}
en el Unit1.h
//---------------------------------------------------------------------------
#ifndef Unit1H
#define Unit1H
//---------------------------------------------------------------------------
#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <Forms.hpp>
#include <ExtCtrls.hpp>
#include <Graphics.hpp>
#define MYWM_NOTIFY         (WM_APP+100)
#define IDC_MYICON                     1006
//---------------------------------------------------------------------------
class TForm1 : public TForm
{
__published:   // IDE-managed Components
        TButton *Button1;
        TImage *Image1;
        void __fastcall FormDestroy(TObject *Sender);
private:   // User declarations
    bool __fastcall TrayMessage(DWORD dwMessage);
    HICON __fastcall IconHandle(void);
    PSTR __fastcall TipText(void);
public:      // User declarations
        __fastcall TForm1(TComponent* Owner);
};
//---------------------------------------------------------------------------
extern PACKAGE TForm1 *Form1;
//---------------------------------------------------------------------------
#endif
para la barra de tareas puedes hacer lo siguiente fijate las lineas que no te aparecen en la aplicacion 
codigo en el Proyect1.cpp
#include <vcl.h> 
#pragma hdrstop 
//--------------------------------------------------------------------------- 
USEFORM("Unit1.cpp", Form1); 
//--------------------------------------------------------------------------- 
WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int) 
{ 
//Agrega estas lineas 
        DWORD dwExStyle = GetWindowLong(Application->Handle, GWL_EXSTYLE); 
        dwExStyle |= WS_EX_TOOLWINDOW; 
        SetWindowLong(Application->Handle, GWL_EXSTYLE, dwExStyle); 
//Hasta aqui 
        try 
        { 
                 Application->Initialize(); 
                 Application->CreateForm(__classid(TForm1), &Form1); 
                 Application->Run(); 
        } 
        catch (Exception &exception) 
        { 
                 Application->ShowException(&exception); 
        } 
        catch (...) 
        { 
                 try 
                 { 
                         throw Exception(""); 
                 } 
                 catch (Exception &exception) 
                 { 
                         Application->ShowException(&exception); 
                 } 
        } 
        return 0; 
}