If the .visible property of the top level form and the screen is set to .F., the application will not be visible in the taskbar.
We like trayico.ocx, it is free and is relatively easy to work with. You can create an OLE control and associate it with the control within a class or even a form, and control what happens if a user right clicks on its icon within the system tray or double clicks etc.. However it has to be registered first on the computer it is to be used on.
One more thing, a lot more is involved in setting up an application as a true service. A true service application can run, if you so choose, even if a user is not logged on. It starts up when the OS finishes booting up. This will involve using administrative tools to configure the OS to start the program. The application would have to use API calls to detect if a user has logged in, to instatiate a system tray icon or not.