lunedì 19 gennaio 2009

Leggere un singolo valore da una query in VB.Net

In certe occasioni è necessario leggere un singolo valore da una tabella o comunque ottenere un singolo valore calcolato da una query. Qui c'è il codice:

Imports System.Data.Oledb


Dim ConnString As String = "stringa di connessione"
' apertura connessione
Dim Conn As New Data.OleDb.OleDbConnection(ConnString)
Cn.Open()

' preparazione ed esecuzione della richiesta
Dim SQL As String = "SELECT Dato FROM Tabella WHERE ID = 'aaaa';"
Dim comando As New Data.OleDb.OleDbCommand(Sql, Conn)
Dim ID As Integer = comando.ExecuteScalar()

' chiusura connessione
Cn.Close()

domenica 18 gennaio 2009

Conversione di un immagine in un array di byte

Convertire un'immagine in array di byte, in VB.NET, è molto semplice; si sfrutta, al riguardo, l'oggetto MemoryStream:

Private Function ConvertImageToByteArray(ByVal inputImage As Image) As Byte()
    Dim ms As New System.IO.MemoryStream
    inputImage.Save(ms, System.Drawing.Imaging.ImageFormat.Bmp)
    Return ms.ToArray
End Function


Il risultato contrario si ottiene sfruttando la classe ImageConverter:

Private Function ConvertByteArrayToBitmap(ByVal array As Byte()) As Bitmap
    Dim ic As New ImageConverter
    Dim img As Image = CType(ic.ConvertFrom(array), Image)
    Dim bmp As New Bitmap(img)
    Return bmp
End Function

venerdì 16 gennaio 2009

Validazione di indirizzo email con VB.Net e Regular Expression

Imports System.Text.RegularExpressions


Dim ValidateMail As String = "^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-z]{2,4}|[0-9]{1,3})(\]?)$"

Dim EmailAddress As String = "$mionome@dominio.com$"

If Regex.IsMatch(EmailAddress, ValidateMail) Then
...
Else
...
End If

giovedì 15 gennaio 2009

Mount di un'unità cd in un sistema SCO/Unix

Dopo aver creato una cartella per il mount con il comando mkdir   /mnt/cdrom è necessario trovare il "nome" fisico dell'unità cdrom. Per farlo bisogna posizionarsi all'interno della cartella del device con

cd   /dev/cdrom

e dare un

ls

per verificare il nome. In questo esempio, supponiamo che il nome sia c0b0t6l0

Di conseguenza, il comando per effettuare il mount è:

mount   -r   -F   cdfs   /dev/cdrom/c0b0t6l0   /mnt/cdrom