Perché la mia cartella zip non è bloccata con password, ma i file all'interno sono bloccati?
Sto lottando da alcune ore, cercando di impostare una password su una cartella zip. Tuttavia, per quanto molte volte ho provato con codice diverso, la password viene applicata a ciascun file all'interno della cartella zip, e non è quello che voglio. Voglio solo applicare la password alla cartella stessa e nessuna password deve essere impostata sui singoli file all'interno.
Ecco il mio codice: (Per tua informazione, sto usando DotNetZip)
//Assume that there is a folder with multiple files in it at C:\\ExampleFolder
using (Ionic.Zip.ZipFile z = Ionic.Zip.ZipFile())
{
z.Password = "MyPassword"; //Setting the password
z.AddDirectory(@"C:\\ExampleFolder"); //I thought the directory added here should be pw-protected
z.Save(@"C:\\FinalResult.zip"); //Create the pw-protected zip folder
}
Tuttavia, quando eseguo questo programma, crea una cartella zip denominata FinalResult.zip
, ma quella cartella zip non è protetta da password. Tutti i file all'interno di quella cartella zip sono protetti da password. In tal caso, l'utente dovrà inserire la password ogni volta che tenta di aprire un file all'interno, il che è piuttosto scomodo. Voglio solo che l'utente debba inserire la password solo una volta quando tenta di aprire la cartella zip. Qualcuno può dirmi perché questo codice non fa quello che voglio ottenere?
Risposte
La password funziona effettivamente correttamente:
Quando si scrive un archivio zip, questa password viene applicata alle voci, non all'archivio zip stesso. Si applica a qualsiasi ZipEntry aggiunta successivamente allo ZipFile, utilizzando uno dei metodi AddFile, AddDirectory, AddEntry o AddItem, ecc. Durante la lettura di un archivio zip, questa proprietà si applica a qualsiasi voce successivamente estratta dallo ZipFile utilizzando uno dei metodi Extract nella classe ZipFile.
Vedere la sezione dei commenti nella documentazione per Password
in DotNetZip
https://documentation.help/DotNetZip/4444d7a5-3324-8af9-3ed3-5bf6551d3cd1.htm