This function prompts the system to start running a specified application at a specified time.
BOOL CeRunAppAtTime( TCHAR* pwszAppName, SYSTEMTIME* lpTime );
[in] Pointer to a null-terminated string that specifies the name of the application to be run.
[in] Long pointer to a SYSTEMTIME structure that specifies the local time when the given application is to be run.
If this parameter is NULL, the existing run request is deleted and no new request is entered. The deleted run request must have been initiated by a call to CeRunAppAtTime.
Calling the CeRunAppAtTime function replaces any previous run request for the specified application.
The system passes the APP_RUN_AT_TIME string to the application as the command line. If an instance of the application is already running, the new instance must send a private message to the existing instance and then shut down.
Use CeRunAppAtTime sparingly because automatically starting an application can confuse the user and cause low-memory conditions on a machine with restricted memory. Ideally, the application should be small and non-intrusive.
If the specified time falls within the platform-dependent period defined by the accuracy of the real-time clock (RTC), the notification is scheduled immediately. The accuracy can be retrieved using IOCTL_KLIB_GETALARMRESOLUTION and ranges from 1 to 60 seconds. If the system does not implement IOCTL_KLIB_GETALARMRESOLUTION, the default RTC accuracy of 10 seconds is assumed.