First of all, a little more detail about your environment helps. I assume it is either Windows 2003 or Windows 2008 Server.
To be honest, I am not an expert in this regard, but who uses this box? If you have admin privileges on the box, you can use psexec (if you have not heard of it, is a free Sysinternals utility). You can have it start a process on the console session (so with the interactive desktop, in psexec parlance). If you auto-login in a box with the right registry settings, you can have PsExec do this if security settings be damned. The registry keys include storing the password in plaintext, so I would lock such an account down.
PsExec executes a program on a remote system, where remotely executed console
applications execute interactively.
Usage: psexec [\\computer[,computer2[,...] | @file][-u user [-p psswd]][-n s][-l][-s|-e][-x][-i [session]][-c [-f|-v]][-w directory][-d][-<priority>][-a n,n,...] cmd [arguments]
. . .
-d Don't wait for process to terminate (non-interactive).
-i Run the program so that it interacts with the desktop of the
So, for what its worth, I guess you could start a session, then have a scheduled task batch script that looks for which user is logged in then do the following, which start a process with a given session or the interactive desktop if you do not specify, and it will not wait for the process to exit either. It will just spawn it.
%SYSTEMDRIVE%\path\to\psexec.exe -i -d C:\path\to\your\app.exe
Now, if you have one of the Windows Server products, I think you can get away with logging in occasionally with RDP (mstsc.exe) using the
console parameter, now the
admin parameter in Windows 2008.
Then again, this is the rambling of a noobie. I could be way off-base with this working. Someone more knowledgeable could help.