Entra

View Full Version : [Batch] Eseguire batch senza che compaiano finestre prompt


D4N!3L3
31-07-2016, 20:29
Salve, come da titolo ho già fatto parecchie ricerche ma non sono ancora riuscito ad ottenere nulla.

In pratica ho scritto un batch file che venga eseguito a seguito di un evento, per questo ho messo su un task dal task scheduler.

Il punto è che all'esecuzione si aprono un paio di finestre dos e nonostante tutto quello che abbia provato continua ad accadere.

C'è qualche comando per far si che l'esecuzione avvenga nascosta o in background, senza che si vedano le finestre?

Se ho una finestra aperta non voglio che perda il focus per capirsi, l'esecuzione deve avvenire in background.

Inutile dire che il solito .vbs:


Set WshShell = CreateObject("WScript.Shell" )
WshShell.Run chr(34) & "C:\Batch Files\syncfiles.bat" & Chr(34), 0
Set WshShell = Nothing


Non funziona, mi si aprono due finestre devcon.exe, una per ogni comando.

Spero sia la sezione giusta, grazie per l'aiuto.

!fazz
01-08-2016, 11:30
se usi un bat lo script viene eseguito nella finestra dos che quindi appare

le soluzioni sono due
1) fai in modo che le finestre scompaiono subito, per far questo devi eseguire i programmi in modo asincrono allo script (semplicemente ti basta aggiungere start prima del nome del programma che lanci ) in questo modo la finestra appare e scompare subito
2) trasformi il tuo script in un servizio di windows programmandolo nel linguaggio che più ti aggrada

D4N!3L3
01-08-2016, 12:34
se usi un bat lo script viene eseguito nella finestra dos che quindi appare

le soluzioni sono due
1) fai in modo che le finestre scompaiono subito, per far questo devi eseguire i programmi in modo asincrono allo script (semplicemente ti basta aggiungere start prima del nome del programma che lanci ) in questo modo la finestra appare e scompare subito
2) trasformi il tuo script in un servizio di windows programmandolo nel linguaggio che più ti aggrada

Grazie del suggerimento, avevo già messo il comando start, il problema è che vorrei che non si aprissero del tutto le finestre in quanto anche se mi si aprono in un istante mi spostano il focus dalla finestra evidenziata.

Per ora mi sembra di aver risolto con il file vbs che attivo tramite il task che ho creato, non avevo provato a selezionare l'opzione "Esegui con privilegi più alti". Pare che adesso venga eseguito il task senza che compaiano finestre di nessun tipo.