AutoIT Criptatore file (base in un img)

Stato
Discussione chiusa ad ulteriori risposte.

clich

Utente Electrum
9 Marzo 2012
225
48
27
147
Ciao ragazzi, ho appena finito di scrivere questo semplice programmino e mi stò scervellando a risolvere un problema: il programma con la funzione Send() nella riga 20 dovrebbe scrivere una stringa al cmd, peccato che non mi stampi il "+", così facendo non è completamente automatico il programma. (per il resto però è completamente funzionante)

Codice:
#RequireAdmin
#NoTrayIcon
#include <Process.au3>
#include <FileConstants.au3>
#include <Zip.au3>


local $folderdev = @DesktopDir & "\tabledev"


Run("cmd.exe") ;apro il cmd
Sleep(1500)
DirCreate($folderdev) ;creo cartella tabledev
Sleep(1500)
Send("cd " & $folderdev) ;mi sposto in desktop/tabledev
Send("{ENTER}")
Global $filebase = FileOpenDialog("File da criptare.." @[I][B][URL="http://www.inforge.net/community/member.php?u=190952"]Windows[/URL][/B][/I]Dir,"All (*.*)") ;carico il file di base
_Zip_Create($folderdev & "\table1base.zip") ;creo archivio
_Zip_AddFile($folderdev & "\table1base.zip",$filebase) ;aggiungo file di base all'archivio
Global $fileoutput = FileOpenDialog("Immagine finale" @[I][B][URL="http://www.inforge.net/community/member.php?u=190952"]Windows[/URL][/B][/I]Dir,"Img (*.JPG)") ;carico il il file esterno
FileCopy($fileoutput, $folderdev & "\outputimage.jpg") ;porto il file esterno nella dir di lavoro
Send("copy /b outputimage.jpg + table1base.zip criptato.jpg") ;eseguo l'unione dei file // li "cripto"
MsgBox(64,"Tocca a te!","Chiudi questo messaggio e lancia il comando dal cmd.")
WinActivate("C:\Windows\system32\cmd.exe") ;attivo finestra cmd
Sleep(5000) ;aspetto 5 secondi per eventuali tempi d'attesa
while (FileExists($folderdev & "\criptato.jpg") = False) ;continua finchè il file non è esistente
    Sleep(1000)
WEnd
ProcessClose("cmd.exe") ;chiudo cmd

Ho commentato il codice per una facile comprensione anche se è già notevolmente facile, chiunque può modificarlo come meglio crede, ma aiutatemi a risolvere questo problemino. :sisi:
Ah dimenticavo, il codice è volutamente semplice è privo della 'funzione' di decript. perchè la versione completa la pubblicherò più avanti, quando riuscirò a personalizzare l'algoritmo di codifica del file di base.

Detto questo, ciao ragazzi!
 
Ciao ragazzi, ho appena finito di scrivere questo semplice programmino e mi stò scervellando a risolvere un problema: il programma con la funzione Send() nella riga 20 dovrebbe scrivere una stringa al cmd, peccato che non mi stampi il "+", così facendo non è completamente automatico il programma. (per il resto però è completamente funzionante)

Codice:
#RequireAdmin
#NoTrayIcon
#include <Process.au3>
#include <FileConstants.au3>
#include <Zip.au3>


local $folderdev = @DesktopDir & "\tabledev"


Run("cmd.exe") ;apro il cmd
Sleep(1500)
DirCreate($folderdev) ;creo cartella tabledev
Sleep(1500)
Send("cd " & $folderdev) ;mi sposto in desktop/tabledev
Send("{ENTER}")
Global $filebase = FileOpenDialog("File da criptare.." @[I][B][URL="http://www.inforge.net/community/member.php?u=190952"]Windows[/URL][/B][/I]Dir,"All (*.*)") ;carico il file di base
_Zip_Create($folderdev & "\table1base.zip") ;creo archivio
_Zip_AddFile($folderdev & "\table1base.zip",$filebase) ;aggiungo file di base all'archivio
Global $fileoutput = FileOpenDialog("Immagine finale" @[I][B][URL="http://www.inforge.net/community/member.php?u=190952"]Windows[/URL][/B][/I]Dir,"Img (*.JPG)") ;carico il il file esterno
FileCopy($fileoutput, $folderdev & "\outputimage.jpg") ;porto il file esterno nella dir di lavoro
Send("copy /b outputimage.jpg + table1base.zip criptato.jpg") ;eseguo l'unione dei file // li "cripto"
MsgBox(64,"Tocca a te!","Chiudi questo messaggio e lancia il comando dal cmd.")
WinActivate("C:\Windows\system32\cmd.exe") ;attivo finestra cmd
Sleep(5000) ;aspetto 5 secondi per eventuali tempi d'attesa
while (FileExists($folderdev & "\criptato.jpg") = False) ;continua finchè il file non è esistente
    Sleep(1000)
WEnd
ProcessClose("cmd.exe") ;chiudo cmd

Ho commentato il codice per una facile comprensione anche se è già notevolmente facile, chiunque può modificarlo come meglio crede, ma aiutatemi a risolvere questo problemino. :sisi:
Ah dimenticavo, il codice è volutamente semplice è privo della 'funzione' di decript. perchè la versione completa la pubblicherò più avanti, quando riuscirò a personalizzare l'algoritmo di codifica del file di base.

Detto questo, ciao ragazzi!
Non capisco...Non puoi semplicemente mettere un
Send("{ENTER}")
sotto a qui:
Send("copy /b outputimage.jpg + table1base.zip criptato.jpg") ;eseguo l'unione dei file // li "cripto"

?


- - - Updated - - -

Oh, ho capito, non mette il "+"...Per un semplice motivo ;)
https://www.autoitscript.com/autoit3/docs/functions/Send.htm
 
Non ho messo il send.enter perchè non mi stampa il carattere "+"..
Comunque sia, grazie non avevo pensato di guardare nella documentazione, chiudo! :)
 
Stato
Discussione chiusa ad ulteriori risposte.