VB.NET: il namespace My
Il namespace My è stato introdotto in Visual Basic 2005: contiene un’insieme di oggetti che forniscono percorsi ‘semplificati’ a molte aree del framework .NET, semplificando la scrittura del codice e riducendo la grandezza dello stesso.
Da notare che tale funzionalità è disponibile esclusivamente in VisualBasic .NET: non esiste niente di equivalente in C#.
Diamo ora un rapido sguardo a gli oggetti contenuti nel namespace
- My.Application fornisce informazioni sull’applicazione corrente (percorso, versione ecc..)
- My.Computer mette a disposizione una serie di oggetti child che permettono di avere informazioni e accedere a caratteristiche specifiche del computer (filesyste, rete, audio, video, mouse, memoria, stampanti ecc..)
- My.Forms permette di referenziare l’istanza principale di un form senza la necessità di creare una istanza della classe form.
- My.Resources fornisce un oggetto per ogni risorsa definita nel progetto corrente.
- My.Settings espone una proprietà per ogni impostazione di configurazione, sia a livello di applicazione che a livello utente
- My.User fornisce informazioni sull’utente collegato e permette la realizzazione di un sistema di autenticazionepersonalizzato
- My.WebServices mette a disposizione una proprietà per ciascun WebService a cui il progetto corrente fa riferimento.
Trattare tutte le funzionalità del namespace My in un singolo articolo è improponibile, mi limiterò quindi a proporre qualche semplice esempio di utilizzo, quasi tutti tratti da MSDN .
- Scrivere nei log di sistema: utilizzeremo l’entry point My.Application.Log My.Application.Log.WriteEntry(“Avvio Applicazione”)
- Effettuare il download di un file: My.Computer.Network.DownloadFile(“http://sito/file.zip”, “c:\temp") file.zip verrà scaricato nella directory c:\temp
- Eseguire un file sonoro come ‘sottofondo’ a una applicazione: My.Computer.Audio.Play(“c:\suono.wav”, AudioPlayMode.BackgroundLoop) per fermarne l’esecuzione My.Computer.Audio.Stop()
- Scrivere e leggere nella clipboard: My.Computer.Clipboard.SetText(“testo”) Dim testoclip As String = My.Computer.Clipboard.GetText
- Effettuare un ‘ping’: If My.Computer.Network.Ping(“andreafortuna.wordpress.com”) Then MessageBox.Show(“Host raggiungibile!”) Else MessageBox.Show(“Host NON raggiungibile!”) End If
- Copiare un file: My.Computer.FileSystem.CopyFile(“C:\Temp\test.txt”, “C:\Logs”) Se si vuole fare in modo che il file venga sovrascritto se già presente e venga visualizzata la finestra standard di ‘copia in corso’ usare questa sintassi My.Computer.FileSystem.CopyFile(“C:\Temp\test.txt”, “C:\Logs”, True, True)
- Scrivere e leggere valori nel registro di configurazione: My.Computer.Registry.SetValue _ (“HKEY_CURRENT_USER\MyTestKey”,”MyTestKeyValue”,”This is a test value.”) readValue = My.Computer.Registry.GetValue _ (“HKEY_CURRENT_USER\MyTestKey”, “MyTestKeyValue”, Nothing)
- Ottenere informazioni sul sistema: Memoria fisica disponibile My.Computer.Info.AvailablePhysicalMemory Memoria fisica totale My.Computer.Info.TotalPhysicalMemory Sistema Operativo My.Computer.Info.OSFullName & vbCrLf & _ My.Computer.Info.OSPlatform & vbCrLf & My.Computer.Info.OSVersion
Come al solito, per maggiori informazioni, vi rimando alla apposita pagina su MSDN .