Alessandro Del Sole's Blog

{ A programming space about Microsoft® .NET® }
posts - 1909, comments - 2047, trackbacks - 352

My Links

News

Your host

This is me! Questo spazio è dedicato a Microsoft® .NET®, di cui sono molto appassionato :-)

Cookie e Privacy

Microsoft MVP

My MVP Profile

Microsoft Certified Professional

Microsoft Specialist

Xamarin Certified Mobile Developer

Il mio libro su VB 2015!

Pre-ordina il mio libro su VB 2015 Pre-ordina il mio libro "Visual Basic 2015 Unleashed". Clicca sulla copertina per informazioni!

Il mio libro su WPF 4.5.1!

Clicca sulla copertina per informazioni! E' uscito il mio libro "Programmare con WPF 4.5.1". Clicca sulla copertina per informazioni!

These postings are provided 'AS IS' for entertainment purposes only with absolutely no warranty expressed or implied and confer no rights.
If you're not an Italian user, please visit my English blog

Le vostre visite

I'm a VB!

Guarda la mia intervista a Seattle

Follow me on Twitter!

Altri spazi

GitHub
I miei progetti open-source su GitHub

Article Categories

Archives

Post Categories

Image Galleries

Privacy Policy

L'assembly Microsoft.VisualStudio.Zip.dll

Con Visual Studio 2005 viene distribuito un assembly molto utile, chiamato Microsoft.VisualStudio.Zip.dll che viene installato nella GAC. E' probabilmente sconosciuto ai più perchè, quando si tenta di aggiungere un riferimento, l'assembly non viene mostrato nell'elenco, al contrario degli altri assembly di Visual Studio.

Come il nome suggerisce, l'assembly implementa classi per la rapida compressione/decompressione di archivi in formato .zip. Un esempio di utilizzo di questo assembly si può trovare nel codice sorgente dell'applicazione Microsoft Visual Basic Snippet Editor. Curiosando nel codice, ecco come la sola seguente riga permetta di creare un archivio compresso con due file:

Dim myzip As New Microsoft.VisualStudio.Zip.ZipFileCompressor(VSIpath, tempPath, New String() {filename & ".vscontent", filename & ".snippet"}, True, False)

La classe ZipFileDecompressor consente, invece, di decomprimere file. Girando su Google ho visto che c'è un particolare work-around per visualizzare l'assembly nell'elenco dei riferimenti, ma al contrario di quanto avviene normalmente si tratta di una modifica al registro che permette di sfogliare la GAC come una normale cartella. Scaricando il codice sorgente di Snippet Editor, c'è un file Readme relativo all'assembly che spiega anche come ottenere questo work-around e ci sono due file .reg per modificare e ripristinare il registro.

Sinceramente ho dei dubbi sulla possibilità di ridistribuire l'assembly, sebbene venga ridistribuito con Snippet Editor. Mi sarebbe interessato utilizzarlo per la creazione di file .vsi, come abbiamo fatto in questo mio articolo utilizzando la libreria IcSharpCode.SharpZipLib.dll, perchè preferirei non utilizzare assembly esterni, quindi cercherò di documentarmi su questo aspetto. A dire il vero, ho notato una piccola pecca: non consente di aggiungere commenti agli archivi .zip, cosa che invece è consentita dalla libreria IcSharpCode.SharpZipLib.

Beh, mi sembra un argomento interessante ed eventualmente da approfondire prima di passare con serietà al .NET Framework 3.0... ;-)

Alessandro

Print | posted on sabato 23 giugno 2007 23:48 | Filed Under [ .NET Framework ]

Powered by:
Powered By Subtext Powered By ASP.NET