Situazione
Ho uno script batch che prepara alcuni file, esegue un programma ( .exe
) e quindi elimina tali file.
Questa attività dovrebbe essere eseguita ogni ora, quindi sto provando a configurarla utilizzando Attività pianificate. Il problema è che il programma menzionato in precedenza non viene eseguito correttamente quando viene richiamato dall'attività (né tramite lo .bat
script, né quando si chiama .exe
direttamente), ma non viene visualizzato alcun messaggio di avviso o errore nei registri.
Impostare
L'attività è configurata per essere eseguita come account del servizio Windows con tutti i privilegi impostati correttamente. Quando utilizzo questo account per accedere tramite RDP, posso eseguire direttamente .bat
e .exe
senza problemi, ma l'attività sembra non fare nulla. Questo è facilmente osservabile perché il programma sempre modifica un file, e la cambiata su timestamp non cambia attraverso il compito.
Nei registri delle attività pianificate ricevo i messaggi informativi per l'attività che avvia un processo, esce, ecc. Il "codice risultato", tuttavia, è 111
(provato a Google questo senza fortuna, l'unica associazione che ottengo è "il nome del file è troppo lungo ", che è completamente irrilevante AFAIK). Nei registri delle applicazioni non ottengo assolutamente nulla.
Ciò di cui sospetto è il problema
Il programma è una vecchia mostruosità che genera una sorta di schermata iniziale (in realtà è una finestra normale), anche se la GUI non è necessaria perché non richiede interazione e si chiude dopo le operazioni. La finestra appare per circa 2 secondi.
Sospetto che questo requisito per una GUI abbia qualcosa a che fare con il fallimento dell'attività, ma non ne sono sicuro. Quando eseguo l'accesso con l'utente in cui viene eseguita l'attività (tramite RDP), non viene visualizzata alcuna finestra all'avvio dell'attività pianificata.
Modifica la GUI
Ho creato un eseguibile C # molto piccolo che avvia il programma senza la finestra principale (usando ProcessStartInfo.WindowStyle = ProcessWindowStyle.Hidden
). Anche in questo modo, l'attività pianificata non riesce ancora ad avviare correttamente il programma, ma il codice di ritorno è ora 0
.
Aggiornare
Quando configuro l'attività per dire "Esegui se l'utente è connesso o meno" e l' run with highest privileges
opzione è deselezionata , il valore di errore è 2147943859
.
Cosa posso fare per risolvere i problemi?
Sistema operativo = Windows Server 2008 R2 SP1
Se sono necessarie ulteriori informazioni, per favore fatemi sapere nei commenti.
.exe
"programma" con parametri all'interno di uno script, l'input deve essere correttamente fornito come argomento.