Visualizzazione dei risultati da 1 a 10 su 10
  1. #1

    [Batch] Errore senza senso

    Scusatemi nel caso abbia messo il topic in una sezione sbagliata, non ne ho trovato uno più adatto a questo linguaggio. Allora, il codice è questo :
    codice:
    @ECHO OFF
    CLS CHOICE /C:YN /N Eseguo il ping del server "%1" [Y/N]? 
    IF ERRORLEVEL 1 GOTO PING
    IF ERRORLEVEL 2 GOTO END
    :PING ECHO Eseguo il ping del server "%1"...
    ECHO L'operazione potrebbe richiedere alcuni minuti...
    ECHO Premere CTRL+N in qualsiasi momento per annullare l'operazione...
    ECHO L'analisi sarà salvata nel file "Ping_%1.txt"...
    PING %1>Ping_%1.txt ECHO
    Analisi completata
    :END
    PAUSE
    EXIT
    Ma quando scelgo no mi fa lo stesso il ping del server, come faccio ?

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Elimina la riga

    IF ERRORLEVEL 1 GOTO PING
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Originariamente inviato da oregon
    Elimina la riga

    IF ERRORLEVEL 1 GOTO PING
    Ho provato a fare come dici te :
    codice:
    @ECHO OFF
    CLS
    CHOICE /C:YN /n Eseguo il ping del server "%1" [Y/N]? 
    IF ERRORLEVEL 2 GOTO END
    ECHO Eseguo il ping del server "%1"...
    ECHO L'operazione potrebbe richiedere alcuni minuti...
    ECHO Premere CTRL+N in qualsiasi momento per annullare l'operazione...
    ECHO L'analisi sarà salvata nel file "Ping_%1.txt"...
    PING %1>Ping_%1.txt
    ECHO Analisi completata
    :END
    PAUSE
    EXIT
    Ma mi dice :
    CHOICE: only one prompt string allowed. Expected Form:
    CHOICE [/C[:]choices] [/N] [/S] [/T[:]c,nn] [text]
    Come posso fare ?

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Questo non c'entra con la riga eliminata. Te lo dava anche prima ... no?
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  5. #5
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    Originariamente inviato da Il-predestinato
    codice:
    @ECHO OFF
    CHOICE /C:YN /n Eseguo il ping del server "%1" [Y/N]?
    Non ho a disposizione il comando choice, ma credo proprio che il problema sia la parte in rosso: viene vista come una seconda opzione /N, ma choice ne ammette solo una.

    PS: gli errori non sono mai senza senso... al massimo siamo noi a non comprenderlo.

    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  6. #6
    Adesso è così :
    codice:
    @ECHO OFF
    CLS
    CHOICE /C:YN /N Eseguo il ping del server "%1" ? 
    IF ERRORLEVEL 1 GOTO PING
    IF ERRORLEVEL 2 GOTO END
    :PING
    ECHO Eseguo il ping del server "%1"...
    ECHO L'operazione potrebbe richiedere alcuni minuti...
    ECHO Premere CTRL+N in qualsiasi momento per annullare l'operazione...
    ECHO L'analisi sara' salvata nel file "Ping_%1.txt"...
    PING %1>Ping_%1.txt
    ECHO Analisi completata
    :END
    PAUSE
    EXIT
    Non mi sembra ci errori...

  7. #7
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    [QUOTE]Originariamente inviato da Il-predestinato
    Adesso è così :
    codice:
    @ECHO OFF
    CLS
    CHOICE /C:YN /N Eseguo il ping del server "%1" ? 
    IF ERRORLEVEL 1 GOTO PING
    IF ERRORLEVEL 2 GOTO END
    :PING
    ECHO Eseguo il ping del server "%1"...
    ECHO L'operazione potrebbe richiedere alcuni minuti...
    ECHO Premere CTRL+N in qualsiasi momento per annullare l'operazione...
    ECHO L'analisi sara' salvata nel file "Ping_%1.txt"...
    PING %1>Ping_%1.txt
    ECHO Analisi completata
    :END
    PAUSE
    EXIT
    Non mi sembra ci errori...
    Ma perchè non togli la riga che ti ho detto?
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  8. #8
    Grande, ce lo fatta, era come dicevi te :

    codice:
    @ECHO OFF
    CLS
    CHOICE /C:YN /N Eseguo il ping del server "%1" ? 
    IF ERRORLEVEL 2 GOTO END
    ECHO Eseguo il ping del server "%1"...
    ECHO L'operazione potrebbe richiedere alcuni minuti...
    ECHO Premere CTRL+N in qualsiasi momento per annullare l'operazione...
    ECHO L'analisi sara' salvata nel file "Ping_%1.txt"...
    PING %1>Ping_%1.txt
    ECHO Analisi completata
    :END
    PAUSE
    EXIT

  9. #9
    Originariamente inviato da LeleFT
    PS: gli errori non sono mai senza senso... al massimo siamo noi a non comprenderlo.
    Oddio, questo è generalmente vero, ma quando si parla di batch tutto è possibile...
    Amaro C++, il gusto pieno dell'undefined behavior.

  10. #10
    Originariamente inviato da MItaly
    Oddio, questo è generalmente vero, ma quando si parla di batch tutto è possibile...
    CONCORDO

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.