|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Member
Iscritto dal: May 2009
Messaggi: 96
|
[VB6] Hardware ID
Ciao a tutti
Vorrei sapere se e come è possibile ottenere degli identificativi univoci e non modificabili (che possono essere Mac address, serial number o simili) dei componenti più comuni di un PC, come ad esempio scheda madre, processore, vga, hard disk etc. Tali identificativi formeranno poi un ID unico che verrà utilizzato da me per la generazione di un codice di attivazione. Grazie in anticipo Christian |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Jan 2007
Messaggi: 404
|
Devi utilizzare le WMI e c'è anch un programma free chiamato WMI Code Generator della Microsoft che ti facilita la creazione del codice come serve a te. dacci un'occhiata qui
Codice HTML:
http://www.microsoft.com/downloads/en/confirmation.aspx?familyId=2CC30A64-EA15-4661-8DA4-55BBC145C30E&displayLang=en&oRef= |
|
|
|
|
|
#3 |
|
Member
Iscritto dal: May 2009
Messaggi: 96
|
ottimo, è proprio quello che mi serviva!
una domandina però, vedo che per alcune periferiche non è possibile ottenere il serial number, come ad esempio l'hard disk che mi ritorna una stringa vuota è normale??? oppure, sapete se è già presente magari nel registro un qualche ID, anche software, che posso sfruttare? |
|
|
|
|
|
#4 | |
|
Senior Member
Iscritto dal: Jan 2007
Messaggi: 404
|
Quote:
Codice:
Dim search As New ManagementObjectSearcher("SELECT * FROM Win32_BIOS")
Dim search2 As New ManagementObjectSearcher("SELECT * FROM Win32_Processor")
Dim search3 As New ManagementObjectSearcher("SELECT * FROM Win32_PhysicalMedia")
Dim search4 As New ManagementObjectSearcher("SELECT * FROM Win32_ComputerSystem")
|
|
|
|
|
|
|
#5 | |
|
Member
Iscritto dal: May 2009
Messaggi: 96
|
Quote:
adesso physicalmedia mi è pure scomparso dal generator volevo dare un minimo di tolleranza, ossia prendere in considerazione tre ID hardware (processore, mobo e hard disk) e creare una licenza che tolleri la modifica di massimo 2 componenti su tre. per il processore ho trovato il campo ProcessorID che dovrebbe essere adatto alle mie esigenze, ma per gli altri due che posso usare? |
|
|
|
|
|
|
#6 | |
|
Senior Member
Iscritto dal: Jan 2007
Messaggi: 404
|
Quote:
Codice:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim search As New ManagementObjectSearcher("SELECT * FROM Win32_BaseBoard")
Dim search2 As New ManagementObjectSearcher("SELECT * FROM Win32_Processor")
Dim search3 As New ManagementObjectSearcher("SELECT * FROM Win32_PhysicalMedia")
Dim info As ManagementObject
Dim txt,finale As String
'Recupero l'ID della mobo
For Each info In search.Get()
If info("SerialNumber") Is Nothing Then
txt = "Non presente"
Else
txt = info("SerialNumber").ToString()
End If
finale = "Mobo ID: " & txt & vbCrlF
Next
'Recupero l'ID del processore
For Each info In search2.Get()
If info("SerialNumber") Is Nothing Then
txt = "Non presente"
Else
txt = info("ProcessorID").ToString()
End If
finale="Processore ID: " & txt & vbCrlF
Next
'Recupero l'ID dell'HD
For Each info In search3.Get()
If info("SerialNumber") Is Nothing Then
txt = "Non presente"
Else
txt = info("SerialNumber").ToString()
End If
finale="Hard Disk ID: " & txt
Next
'Stampo a video
MsgBox (finale)
End Sub
|
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 17:58.




















