PDA

View Full Version : [VB]: Script per inviare comandi al prompt dos.


ccccc
28-12-2006, 16:25
Salve a tutti.

Ho l'esigenza di migliorare un file batch e ho risolto alcuni problemi scrivendo un piccolo programma in ".vbs".
Premetto che sono a zero in vbs, ma per le poche operazioni che deve compiere questo programmino, non mi serve conoscere tutto il visual basic, mi basterebbe qualche dritta per venire a capo di alcuni problemi.

Vorrei scrivere questo file ".vbs", in modo tale che apra una finestra prompt e passi dei comandi a questa. Questo riesco a farlo col comando "WshShell.SendKeys"...riuscendo a simulare anche al pressione di tasti come "invio" e combinazioni tipo "ctrl+c". Fin qui tutto ok.
Però avrei anche la necessità di introdurre un blocco if in modo tale da compiere un'operazione solo se l'operazione precedente restituisce un certo esito.
In batch mi arrangiavo con la funzione " | find "testo" "....mi spiego con un esempio:

Volendo stabilire se la mia connessione dialup è down oppure no e volendo eventualmente eseguire la riconnessione, eseguo un ping ad un sito e ordino la riconnessione solo se trovo nell'esito del ping la frase "100% persi". In batch me la cavavo così:

ping 195.210.91.83 | find "100%% persi"
goto aspetta%errorlevel%

dove ":aspetta" è un'etichetta seguita da operazioni corrispondenti...

Ora vorrei tradurre questo programmino in vbs. Deve eseguire le seguenti operazioni:

1- aprire una finestra prompt e settarla come applicazione attiva
2- simulando la pressione di tasti deve inviare al prompt il ping ad un sito qualsiasi
(tanto per capirci WshShell.SendKeys "ping 195.210.91.83" )
3- a questo punto (e questo non so come si faccia) vorrei che leggesse il responso dell'operazione "ping" e se travasse "100% persi", facesse una serie di operazioni.

Vi chiederei aiuto per quanto riguarda il punto (3). Non riesco a capire come fargli "leggere" il testo che mi restituisce il prompt. E come fare a fargli "trovare" in quel testo una particolare frase.
Spero che sia possibile fare tutto ciò e mi rimetto alla vostra conoscenza.

Ringrazio in anticipo chiunque volesse aiutarmi, pregandovi di rispondermi in modo quanto più possibile semplice, visto che sono a zero in questo campo. Se qualcuno avesse anche un link inerente a questo problema, non esiti a metterlo.

Arrisentirci :P

misocurdo
13-07-2011, 12:31
Vorrei scrivere questo file ".vbs", in modo tale che apra una finestra prompt e passi dei comandi a questa. Questo riesco a farlo col comando "WshShell.SendKeys"...riuscendo a simulare anche al pressione di tasti come "invio" e combinazioni tipo "ctrl+c". Fin qui tutto ok.


Ciao, purtroppo non sono in gradi di darti una mano sul tuo problema. Penso però che forse tu potresti dare una mano a me... Io dovrei semplicemente aprire un prompt dei comandi e mandare in esecuzione del codice Java. Purtroppo non sono riuscito a trovare come mandare in esecuzione il prompt dei comandi... Potresti dirmelo (non sò se cambi ma io sto usando Windows 7...). Grazie mille... :)