vb6 (Normal User)
Pro
Messaggi: 154
Iscritto: 10/01/2007
|
Ciao a tutti. Come da titolo, mi piacerebbere sapere il modo per comprimere e decomprimere un file attraverso due command button.
Ciao e ringrazio anticipatamente
|
|
P4p3r0g4 (Member)
Guru
Messaggi: 1319
Iscritto: 29/12/2006
|
chiami da shell zip e unzip
shell "zip " & percorso
sicuramente ci sono anche delle api a proposito hai cercato su google?
|
|
vb6 (Normal User)
Pro
Messaggi: 154
Iscritto: 10/01/2007
|
Ho provato a fare shell "zip" & C:\prova.txt, ma non va...
Non è che mi potresti dare qualche altro consiglio?
|
|
P4p3r0g4 (Member)
Guru
Messaggi: 1319
Iscritto: 29/12/2006
|
hai messo lo spazio?
|
|
P4p3r0g4 (Member)
Guru
Messaggi: 1319
Iscritto: 29/12/2006
|
e poi non funziona così
shell ti richiama da dos la funzione
quindi shell "zip " & percorso
cosa fa? scrive una finestra dos contenente "zip " e il conetuto della variabile percorso
percorso io lo intendevo come stringa.
dovrai metter in una stringa chiamata come ti pare AD ESEMPIO percorso la frase "c:\prova.txt"
e poi chamare lo shell con
shell "zip " & percorso
se devi comprimere solo prova.txt basta che scrivi
shell "zip C:\prova.txt"
|
|
gabryk (Normal User)
Rookie
Messaggi: 24
Iscritto: 04/10/2006
|
Ho un problema con la compressione/decompressione.
Uso una ottima dll trovata in rete e ovviamente le dll zip32 e unzip.
Diciamo che, in linea di massima funziona tutto, ovvero ottengo l'archivio zip di quello che voglio e riesco a decomprimerlo, però c'è un "particolare" nel mio caso molto importante che non riesco a correggere.
Il mio programma per funzionare si basa su alcune cartelle situate nella app.path, tramite il comando zip interno al programma io voglio che venga creato un archivio contenente queste cartelle (con tutti i file all'interno).
Mettiamo che la mia app.path sia D:\Pippo\Progetti\FC\ e poi qui ho la cartella "ciao", io voglio ottenere uno zip che dentro abbia solo il percorso "ciao", invece ottengo uno zip che riporta tutto il percorso, "Pippo\Progetti\FC\ciao"... come faccio a restringere il percorso zippato a solo quello che mi interessa?
Perchè io voglio che quando unzippo il file mi venga chiesto se voglio sostituire le cartelle esistenti per sovrascrivere i dati, invece con quello che succede a me viene creato il percorso "Pippo\Progetti\FC\ciao" dentro al già esistente "Pippo\Progetti\FC\" ed è un casino...
Spero di essermi capito
|
|
gabryk (Normal User)
Rookie
Messaggi: 24
Iscritto: 04/10/2006
|
RISOLTO!
Grazie a Mid(app.path, InStrRev(app.path, "\") + 1, Len(app.path)) + "\*.*" che restituisce solo l'ultima directory di un dato percorso.
Ad esempio da "Pippo\Progetti\FC\ciao" restituisce "ciao", che è quello che mi serviva. Grazie a internet!
|
|
P4p3r0g4 (Member)
Guru
Messaggi: 1319
Iscritto: 29/12/2006
|
Postato originariamente da gabryk:
RISOLTO!
Grazie a Mid(app.path, InStrRev(app.path, "\") + 1, Len(app.path)) + "\*.*" che restituisce solo l'ultima directory di un dato percorso.
Ad esempio da "Pippo\Progetti\FC\ciao" restituisce "ciao", che è quello che mi serviva. Grazie a internet! |
ehm NO.
Mid(app.path, InStrRev(app.path, "\") + 1, Len(app.path))
restituisce l'ultima directory (nel tuo caso "ciao")
Mid(app.path, InStrRev(app.path, "\") + 1, Len(app.path)) + "\*.*"
restituisce tutti i file dell'ultima directory (nello specifico restituisce nel tuo caso "ciao\*.*") |
|
gabryk (Normal User)
Rookie
Messaggi: 24
Iscritto: 04/10/2006
|
Che è esattamente quello che mi serve perchè sto parlando di compressione/decompressione e quella stringa la uso per aggiungere all'archivio tutti i file di una cartella!
|
|