Visualizzazione dei risultati da 1 a 10 su 10
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2004
    Messaggi
    200

    [VB.NET] Numero serie hard disk

    Ciao a tutti,
    c'č qualcuno di voi che sā come si riesce ad ottenere il numero seriale del proprio hard disk attraverso VB.NET????

    Danke.
    Ciao

  2. #2
    Utente di HTML.it L'avatar di cassano
    Registrato dal
    Aug 2004
    Messaggi
    3,002
    con il framework 1.1 mi pare nn ci sia una classe apposita,devi usare le api di windows


    Conoscere il numero di serie dell'Hard Disk

    Private Declare Function GetVolumeInformation Lib "kernel32.dll" Alias
    "GetVolumeInformationA" (ByVal lpRootPathName As String, ByVal
    lpVolumeNameBuffer As String, ByVal nVolumeNameSize As Integer,
    lpVolumeSerialNumber As Long, lpMaximumComponentLength As Long,
    lpFileSystemFlags As Long, ByVal lpFileSystemNameBuffer As String, ByVal
    nFileSystemNameSize As Long) As Long

    Function GetSerialNumber(strDrive As String) As Long
    Dim SerialNum As Long
    Dim Res As Long
    Dim Temp1 As String
    Dim Temp2 As String
    Temp1 = String$(255, Chr$(0))
    Temp2 = String$(255, Chr$(0))
    Res = GetVolumeInformation(strDrive, Temp1, Len(Temp1), SerialNum, 0,
    0, Temp2, Len(Temp2))
    GetSerialNumber = SerialNum
    End Function

    Esempio di utilizzo :
    (se voglio il serial number del disco C)
    Call MsgBox GetSerialNumber("C:\")

  3. #3
    Utente di HTML.it L'avatar di Rplus
    Registrato dal
    Mar 2002
    Messaggi
    150
    interessante questa cosa..č possibile sapere la fonte?

  4. #4
    Utente di HTML.it
    Registrato dal
    Sep 2004
    Messaggi
    200
    Grazie per la risposta, ma lavoro in ambiente VB.NET, questo non č VB6?

  5. #5
    Utente di HTML.it L'avatar di Mychy
    Registrato dal
    Oct 2000
    Messaggi
    794
    Non so se puoi riuscire tramite
    Enviroment.GetEnviromentVariable("nomevariabile")

  6. #6
    Utente di HTML.it L'avatar di cassano
    Registrato dal
    Aug 2004
    Messaggi
    3,002
    bč anche in vb.net si possono usare le api,casomai aggiusti un po il codice per vb.net.

  7. #7
    Utente di HTML.it
    Registrato dal
    Jul 2001
    Messaggi
    798
    Imports System.Management

    Dim drive As String = "C"
    Dim disk As ManagementObject = New ManagementObject("Win32_Logicaldisk="
    + "\"" + drive + ":\"")

    Dim SerialNumber As String =
    disk.Properties("Volumeserialnumber").Value.ToStri ng()


    That's all.
    Ans.

  8. #8
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Ma intendevi avere il numero di serie del costruttore o il volume serial number assegnato dopo una formattazione?

    Il primo e' una caratteristica unica del device, l'altro e' un semplice valore modificabile in seguito ad una nuova formattazione.

  9. #9
    Originariamente inviato da ans
    Imports System.Management

    Dim drive As String = "C"
    Dim disk As ManagementObject = New ManagementObject("Win32_Logicaldisk="
    + "\"" + drive + ":\"")

    Dim SerialNumber As String =
    disk.Properties("Volumeserialnumber").Value.ToStri ng()


    That's all.
    Per funzionare devi avere Windows Management Interface (WMI) installato nella macchina. WMI puō essere installato su Windows 2003,Windows XP e Windows 2000 SP4.0.
    Su NT4.0 e precedenti non funziona

  10. #10
    Utente di HTML.it
    Registrato dal
    Sep 2004
    Messaggi
    200
    Mi servirebbe il numero seriale unico del costruttore, NON quello del volume.

    Qualcuno sā ottenerlo?

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.