at 8:24am "c:\windows\system32\calc.exe"
I see see a new item in task scheduler
8:24am comes, it says running, calc.exe appears in task manager stays there but no window shows.
ADDED
strange things going on
C:\>at /interactive 7:36 calc
Invalid command.
The AT command schedules commands and programs to run on a computer at
a specified time and date. The Schedule service must be running to use
the AT command.
AT [\\computername] [ [id] [/DELETE] | /DELETE [/YES]]
AT [\\computername] time [/INTERACTIVE]
[ /EVERY:date[,...] | /NEXT:date[,...]] "command"
\\computername Specifies a remote computer. Commands are scheduled on the
local computer if this parameter is omitted.
id Is an identification number assigned to a scheduled
command.
/delete Cancels a scheduled command. If id is omitted, all the
scheduled commands on the computer are canceled.
/yes Used with cancel all jobs command when no further
confirmation is desired.
time Specifies the time when command is to run.
/interactive Allows the job to interact with the desktop of the user
who is logged on at the time the job runs.
/every:date[,...] Runs the command on each specified day(s) of the week or
month. If date is omitted, the current day of the month
is assumed.
/next:date[,...] Runs the specified command on the next occurrence of the
day (for example, next Thursday). If date is omitted, the
current day of the month is assumed.
"command" Is the Windows NT command, or batch program to be run.
C:\>
I just tried reversing it so /interactive afterwards
C:\>at 7:38 calc /interactive
Added a new job with job ID = 28
And Calc.exe still only came in the background
答案1
Do not use at
. It's insecure – all jobs are given SYSTEM
privileges, which is even worse than Administrator.
Use schtasks
instead:
schtasks /create /tn "Foo" /tr calc.exe /sc once /st 8:24
By default jobs run by at
are executed in background. You can use at /interactive
to change this:
at 8:24 /interactive calc
答案2
The calculator started up on a sort of "virtual" desktop. It's there, you just can't see it. This is entirely expected behavior for at
+gui
.
The same thing happens when you use MS Office interop with ASP or ASP.Net -- the entire program starts on a private desktop on the server that no one can see.