|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Jun 2001
Città: Catania
Messaggi: 2690
|
[Visual Basic 2010] - Recupero seriale Hard Disk
Salve ragazzi,
sto costruendo un'applicazione che mi rileva il seriale del mio HDD ma c'è un problema; possibile che con VB2010 non è stata implementata alcuna classe che mi permetta di fare ciò? Questa un porzione di codice ma non rileva il seriale (VB2010) o cmq rileva qualcosa che sembra essere il seriale del volume logico che cambia ad ogni formattazione o spostamento della partizione interessata: Codice:
Private Function GetHddID(Optional ByVal strDriveLetter As String = "C") As String
Dim disk As ManagementObject = New ManagementObject(String.Format("win32_logicaldisk.deviceid=""{0}:""", strDriveLetter))
disk.Get()
Return disk("VolumeSerialNumber").ToString()
End Function
mentre questo scritto in VB6 funziona: Codice:
Private Sub cmdInfo_Click()
Call IsWMIInstalled
txtHddSN = GetSerialInfo("PhysicalMedia")
End Sub
![]() Qualche soluzione?
__________________
Unisciti a noi: http://www.swproduction.altervista.org/ - http://www.enews.altervista.org/
Ultima modifica di lucausa75 : 20-08-2010 alle 21:23. |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Dec 2004
Messaggi: 3210
|
Quello che vedo essere il risultato del codice VB6 sembra proprio il seriale fisico dell'hdd, mentre l'altro ha tutta l'aria, come pensi tu, di essere un seriale della partizione.
Non mi soffermo su questa o quella tecnica per rilevare il seriale fisico del drive, perchè ce ne sono un mucchio... In VB.NET comunque esiste eccome la libreria. Basta referenziare System.Management. Personalmente proverei con questo semplice giro di istruzioni : Codice:
Dim SCR As ManagementObjectSearcher = New ManagementObjectSearcher("SELECT * FROM Win32_PhysicalMedia")
For Each hdd As ManagementObject In SCR.Get()
MessageBox.Show(hdd("SerialNumber"))
Next
|
|
|
|
|
|
#3 | |
|
Senior Member
Iscritto dal: Jun 2001
Città: Catania
Messaggi: 2690
|
Quote:
:Codice:
Private Function GetHddID() As String
Dim strHddID As String = String.Empty
Dim query As New SelectQuery("Win32_PhysicalMedia")
Dim search As New ManagementObjectSearcher(query)
Dim info As ManagementObject
For Each info In search.Get()
If info("SerialNumber") <> "" Then
strHddID = info("SerialNumber").ToString
End If
Next info
If Trim(strHddID) = "" Then strHddID = "Cannot retrieve the serial number"
GetHddID = Trim(strHddID)
End Function
__________________
Unisciti a noi: http://www.swproduction.altervista.org/ - http://www.enews.altervista.org/
|
|
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Dec 2001
Città: Catania
Messaggi: 843
|
Invece mi potresti dire come hai preso il seriale della motherboard?
__________________
Asus A4744-KUH: AMD-64 3000+ - HD 55GB - RAM 512Mb - ATI Mobility 9700 Toshiba M70-167: Centrino PentiumM 740 - HD 100Gb - RAM 1Gb iPod Nano 1G 4Gb Nero - PS3 - Coming soon: new iMac 24" |
|
|
|
|
|
#5 | |
|
Senior Member
Iscritto dal: Jun 2001
Città: Catania
Messaggi: 2690
|
Quote:
Codice:
Private Function GetMotherBoardID() As String
Dim strMotherBoardID As String = String.Empty
Dim query As New SelectQuery("Win32_BaseBoard")
Dim search As New ManagementObjectSearcher(query)
Dim info As ManagementObject
For Each info In search.Get()
strMotherBoardID = info("SerialNumber").ToString()
Next info
If Trim(strMotherBoardID) = "" Then strMotherBoardID = "Cannot retrieve the serial number"
GetMotherBoardID = strMotherBoardID
End Function
__________________
Unisciti a noi: http://www.swproduction.altervista.org/ - http://www.enews.altervista.org/
|
|
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Dec 2001
Città: Catania
Messaggi: 843
|
mille grazie
__________________
Asus A4744-KUH: AMD-64 3000+ - HD 55GB - RAM 512Mb - ATI Mobility 9700 Toshiba M70-167: Centrino PentiumM 740 - HD 100Gb - RAM 1Gb iPod Nano 1G 4Gb Nero - PS3 - Coming soon: new iMac 24" |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 20:59.





















