Lavorare con CipherShed da batch

Pubblicità

lissandra

Nuovo Utente
Messaggi
42
Reazioni
2
Punteggio
23
Buongiorno.

Premetto di essere quasi a digiuno di script di batch (ne ho scritto qualcuno semplice più di 10 anni fa).

Il mio obiettivo è questo:
Vorrei avviare CipherShed, fargli aprire la finestra con la password di un container, all'immissione della password farglielo montare e portare in primo piano la finestra appena creata.
L'eseguibile, il file .bat e l'archivio sono nella stessa cartella.

Tra una cosa e un'altra (più che altro AI) ho trovato questo codice:

Codice:
@echo off
CipherShed.exe /v "CipherShed.tc" /l z /q

echo In attesa che venga immessa la password in Ciphershed...
powershell -command "& {
  Add-Type -AssemblyName System.Windows.Forms;
  Add-Type -AssemblyName System.Drawing;
  while ($true) {
    $window = Get-Process | Where-Object { $_.MainWindowTitle -eq 'CipherShed - Enter Password' };
    if ($window) {
      [System.Windows.Forms.SendKeys]::SendWait('{ENTER}');
      break;
    }
    Start-Sleep -Seconds 1;
  }
}"
echo La password è stata immessa e il tasto Enter è stato premuto, ora il batch può continuare.

echo In attesa che il container venga montato...
:check
timeout /t 5 >nul
if exist Z:\nul goto mounted
goto check
:mounted
echo Il container è stato montato, ora il batch può continuare.

start Z:
exit
La prima riga funziona, mi apre il programma e se la password è corretta monta il volume.
Il problema viene dopo.
Come faccio a bloccare lo script in attesa della finestra?
Credo di avere individuato l'inghippo.
Non riesco a sapere come si chiama la finestra della password, quindi non riesco a stopparlo e mi prosegue...

Qualcuno mi può aiutare?

Grazie
 
Ultima modifica da un moderatore:
Pubblicità
Pubblicità
Indietro
Top