Punto informatico Network
Login Esegui login | Non sei registrato? Iscriviti ora (è gratuito!)
Username: Password:
  • Annuncio Pubblicitario

batch file in background

Problemi con i sistemi operativi di casa Microsoft? Questa è la sezione che fa per te!

batch file in background

Messaggioda pcost » mar set 09, 2008 10:51 pm

Non mi ricordo più... come fare per eseguire un .bat in background ( o comunque un qualsioasi prg dos)???

Grazie! [:I]
Avatar utente
pcost
Neo Iscritto
Neo Iscritto
 
Messaggi: 15
Iscritto il: mer lug 02, 2008 11:24 am

Re: batch file in background

Messaggioda ste_95 » mer set 10, 2008 5:46 am

Dovrebbe bastare scrivere
Codice: Seleziona tutto
@echo off

in cima al file.
«A volte è meglio tacere e sembrare stupidi che aprir bocca e togliere ogni dubbio.» Oscar Wilde
Avatar utente
ste_95
Membro Ufficiale (Gold)
Membro Ufficiale (Gold)
 
Messaggi: 17271
Iscritto il: lun ago 06, 2007 11:19 am

Re: batch file in background

Messaggioda clic » mer set 10, 2008 7:19 am

in realtà @echo off disattiva la visualizzazione del codice interno al file.
Non so se è possibile nascondere totalmente l'esecuzione dei batch, ma creando un collegamento allo stesso è possibile modificare alcuni paramatri facendo clic con il destro\proprietà sul file *.lnk. Li troverai la possibilità di modificare alcuni comportamenti tra i quali anche la modalità di esecuzione ("Finestra normale", "Ridotto a icona" e "Finestra ingrandita")
Un modo alternativo per non visualizzare la finestra, se non ricordo male, si può ottenere tramite il ricorso al comando AT. In sostanza si crea una operazione pianificata non interattiva che richiama il file batch. Mi pare che non NT4 non compare alcuna finestra di esecuzione del batch, con XP non saprei.
Avatar utente
clic
Bronze Member
Bronze Member
 
Messaggi: 931
Iscritto il: lun mar 17, 2008 9:03 pm


Re: batch file in background

Messaggioda pcost » mer set 10, 2008 1:41 pm

Dunque....

@echo off disabilita semplicemente la visualizzazione delle righe comando.

Mentre invece con il collegamento si puo avviare ridotto ad icona, il che mi va bene.

Inutile aggiungere cose già dette per Micro$oft....

perché con il collegamento ci sono più opzioni che non si possono dare al file originale???

Comunque risolto - ho .bat che si attiva ogni 15 min come azione pianificata e mi rompeva vedermelo comparire sempre a schermo intero

Grazie come sempre!! [applauso+]
Avatar utente
pcost
Neo Iscritto
Neo Iscritto
 
Messaggi: 15
Iscritto il: mer lug 02, 2008 11:24 am

Re: batch file in background

Messaggioda pcost » mer set 10, 2008 2:24 pm

Ho esultato troppo presto.

Le operazioni pianificate: se con sfoglia si seleziona un .lnk il sistema operativo "intelligente" punta direttamente al file origine .bat ....
e quindi siamo daccapo [acc2]

Se si sforza scrivendo il file .lnk .... non funziona [cry] [cry]

Sono nella palta!!! Aiuto!
Avatar utente
pcost
Neo Iscritto
Neo Iscritto
 
Messaggi: 15
Iscritto il: mer lug 02, 2008 11:24 am

Re: batch file in background

Messaggioda clic » mer set 10, 2008 10:55 pm

in effetti le impostazioni del file di collegamento vengono ignorate, ci sarebbe da capire se è possibile passare quei parametri di esecuzione direttamente all'interno del file batch
Avatar utente
clic
Bronze Member
Bronze Member
 
Messaggi: 931
Iscritto il: lun mar 17, 2008 9:03 pm

Re: batch file in background

Messaggioda kap » mer set 10, 2008 11:34 pm

Puoi aiutarti con questo simpatico programmino [:)]

Non ho avuto modo di provarlo ma dovrebbe essere abbastanza efficiente [;)]


...Altrimenti puoi fare una cosa molto più pulità ma un attimino più laboriosa..

Using only built-in tools, I have scripted HideBatch.bat to run a batch script hidden.

The syntax for using HideBatch.bat is:

HideBatch BatchFile [Param1 Param2 ... ParamN]

Where:

BatchFile is the path to the batch file and ParamX are optional parameters.

HideBatch.bat contains:

@echo off
if {%1}=={} @echo Syntax: HideBatch BatchFile [Param1 Param2 ... ParamN]&goto :EOF
setlocal
set VBS="%TEMP%\HideBatch.vbs"
if exist %VBS% goto Runit
@echo dim obj, obj1, obj2, objArgument>%VBS%
@echo Set WshShell = WScript.CreateObject("WScript.Shell")>>%VBS%
@echo Set objArgument = Wscript.Arguments>>%VBS%
@echo obj1=objArgument(0)>>%VBS%
@echo obj2=Replace(obj1, "```", """")>>%VBS%
@echo obj = WshShell.Run(obj2, 0)>>%VBS%
@echo set WshShell = Nothing>>%VBS%
:Runit
set param=%*
set param="%param:"=```%"
cscript //nologo %VBS% %param%
endlocal
Fonte


..poi magari c'è una soluzione molto più semplice ma non ci ho pensato [fischio]

saluti [std]
In bocca al lupo per tutto ragazzi
Avatar utente
kap
Membro Ufficiale (Gold)
Membro Ufficiale (Gold)
 
Messaggi: 2876
Iscritto il: lun ott 09, 2006 11:10 am
Località: car el me car milan


Torna a Sistema Operativo

Chi c’è in linea

Visitano il forum: Nessuno e 5 ospiti

Powered by phpBB © 2002, 2005, 2007, 2008 phpBB Group
Traduzione Italiana phpBB.it

megalab.it: testata telematica quotidiana registrata al Tribunale di Cosenza n. 22/09 del 13.08.2009, editore Master New Media S.r.l.; © Copyright 2008 Master New Media S.r.l. a socio unico - P.I. 02947530784. GRUPPO EDIZIONI MASTER Spa Tutti i diritti sono riservati. Per la pubblicità: Master Advertising