BG personal blog Approfondimenti tecnici sul mondo informatico – By Gabriele Besta

6nov/082

VB.NET – una funzione che genera il valore di hash MD5 e SHA-1 di un qualunque file

E' ormai risaputo che il web offre uno sconfinato mondo di possibilità ma che allo stesso tempo racchiude innumerevoli minacce di ogni sorta. Virus, Spyware, Trojan, Adware, spopolano sulla rete e spesso sfruttano la celebrità di software distribuiti gratuitamente per insinuarsi nei nostri computer. Un caso emblematico è sicuramente il famosissimo software di peer-to-peer eMule clonato in decine di versioni, spesso difficilmente distinguibili dall'originale, ma che incorporano ogni genere di minaccia (a tal proposito vi ricordo che il vero e originale eMule è scaricabile in modo del tutto gratuito dal sito ufficiale www.emule-project.net). Pensate se inavvertitamente doveste installare un dialer illegale sul vostro computer, vi lascio immaginare le conseguenze sulla bolletta telefonica... Al fine di tutelare i propri utenti gli sviluppatori, sempre più spesso, assieme al download del loro software forniscono il valore di hash, ovvero "l'impronta digitale" del programma, che consente di verificarne l'integrità. Oltretutto verificare il file prima di procedere all'installazione, in particolare nel caso di file di grossi dimensioni come ad esempio distribuzioni linux, permette di evitare problematiche dovute ad errori nella trasmissione dei dati.

Capita l'importanza di questa prassi vi propongo una semplice funzione che permette di generare il valore di hash MD5 o SHA-1 di un qualunque file. Come sempre il codice è ampiamente commentato ma non esitate a postare dubbi o richieste di chiarimento.

Stampa
28ott/080

VB.NET – ridimensionare un’immagine

In questo brevissimo post vi mostro come, molto facilmente, ridimensionare un'immagine in VB.NET. Il codice è molto semplice ed ampliamente commentato, può essere utilizzato sia per rimpicciolire sia per ingrandire un immagine in formato .bmp .jpeg .gif .png .tiff.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Dim bitmap As New Bitmap("C:\immagine_originale.jpg") 'path dell'immagine originale
 
Dim larghezza As Integer = 800 'larghezza nuova immagine
Dim altezza As Integer = 600 'altezza nuova immagine
Dim nuova_immagine As New Bitmap(larghezza, altezza)
Dim temp As Graphics = Graphics.FromImage(nuova_immagine)
 
temp.InterpolationMode = Drawing2D.InterpolationMode.HighQualityBicubic
temp.DrawImage(bitmap, New Rectangle(0, 0, larghezza, altezza), New Rectangle(0, 0, bitmap.Width, bitmap.Height), GraphicsUnit.Pixel)
 
nuova_immagine.Save("C:\nuova_immagine.jpg", System.Drawing.Imaging.ImageFormat.Jpeg) 'path dove salvare l'immagine ridimensionata
 
'ricordiamoci di riliasciare gli oggetti caricati in memoria
temp.Dispose()
bitmap.Dispose()
nuova_immagine.Dispose()
Stampa