This can't be done.
When you log in, the OS creates a desktop for you. All the apps you launch run in this desktop. When you log out, the desktop is destroyed, so all apps running in that desktop need to go bye-bye.
There are two options:
First, you can use terminal services, which allows multiple users to connect to an OS and will allow you to "disconnect" your session instead of logging out. When you "disconnect," your physical keyboard/mouse/monitor go bye-bye, but the logical desktop stays. (I know of no way to log into a TS session and then disconnect from the console. If anyone knows if this is possible, please let me konw.) You would unfortunately need a remote machine to log in to.
Under Windows XP that's not part of a domain, you could use Fast User Switching, which is essentially terminal services from the local console.
Lastly, you could write a service. A service is an app that runs under Winlogon's desktop (I think) and can run when no one is logged in.
I'm not sure if any of these solutions will work for you, but at least now you know the nuts and bolts of why you can't do this.