Salve, su proposta di Cato vi presento il programma per estrarre la guid di windows (o un qualunque altro valore REG_SZ) in versione VB
Dunque cominciamo come al solito col codice,
file->nuovo progetto->applicazione console (io l'ho fatta console, ma potete fare quale volete, cambia solo il modo in cui manipolerete la variabile)
Cancelliamo tutto e incolliamo:
VB Programming
Module Module1
Sub Main()
Dim readValue As String
readValue = My.Computer.Registry.GetValue _
("HKEY_LOCAL_MACHINE\SOFTWARE\\MICROSOFT\\Windows NT\\CurrentVersion", "BuildGUID", Nothing)
Console.Write("BuildGUID: " & readValue)
Console.ReadKey()
End Sub
End Module
Dunque non credo ci sia da dire qualcosa su Module e Sub Main()
Quindi saltiamo subito al succo del programma, quello che la routine main esegue.
Il tutto è strutturato in sole 3 operazioni:
1) Dichiarazione (non d'amore
)
Dichiariamo una variabile di tipo stringa e la chiamiamo readValue (ma la potete chiamare come volete)
2) La parte più importante
VB Programming
readValue = My.Computer.Registry.GetValue _
("HKEY_LOCAL_MACHINE\SOFTWARE\\MICROSOFT\\Windows NT\\CurrentVersion", "BuildGUID", Nothing)
Assegna a readValue il valore restituito dalla funzione GetValue deo namespace My.Cumputer.Registry
La cosa importante sono il primo e il secondo parametro:
Il primo indica l'indirizzo della chiave da estrarre, il secondo indica il nome, da non confondere con il valore
3)Parte finale, variabile in funzione del tipo di applicazione che avete scelto, avendo scelto io tipo console mi servirò della funzione console per visualizzare il valore, ma se non è console e non lo vloete viusalizzare, ma soltanto usare in qualunque altra parte del programma vi basta accedere alla variabile readValue.
VB Programming
readConsole.Write("BuildGUID: " & readValue)
Console.ReadKey()
La prima riga scrive "BuildGUID: " seguito dal valore di readValue e la seconda aspetta che venga premuto un tasto per terminare l'esecuzione del programma.
Come vedete in 4 righe abbiamo realizzato lo stesso programma che in c++ richiedeva 10/15 righe...
Ma questo perchè??
Lo so, state dicendo "e che ne sacc i???", non siete napoletani?
ah ok, allora avete detto ma che ne so io ne??
Semplicemente il c è un linguaggio a basso livello, cioè offre la possibilità di interagire con il so, la cpu e il kernel, che stanno ai livelli più bassi, basti pensare che il c++ permette di scrivere funzioncine in asm, linguaggio macchina, e pertanto è più 'complesso' e molto più complessamente-strutturato (omg che parolone
)
Mentre il vb è ad alto livello, cioè ben lontano dalla cpu e infatti non offre molte possibilità di apportare delle modifiche 'pesanti'
Vi saluto, sperando che zio Cato sia soddisfatto
Alla prossima,
onle, ops uncle
Skyline@69