Início > C# > Método para Buscar um Serial do Hard Disk em C#

Método para Buscar um Serial do Hard Disk em C#

Olá, pessoal. Estou disponibilizando um código em C# bem interessante para quem deseja pegar o Serial do disco físico (Hard Disk ou HD), no exemplo abaixo ele recupera as instâncias da partição e adiciona a um coleção de objeto do tipo  ManagementObjectCollection  que posteriormente é acessado pela sua classe ManagementObjec e neste objeto podemos pegar o VolumeSerialNumber.

Exemplo, método C# para retornar o Serial:

public string BuscarDiscoLogico()

{

   ManagementClass particaoClass = new ManagementClass("Win32_LogicalDisk");

   ManagementObjectCollection particoes = particaoClass.GetInstances();

   string hdd = string.Empty;

   foreach (ManagementObject particao in particoes)

   {

      return hdd = particao["VolumeSerialNumber"]ToString();

   }

return hdd;

}

 

Algumas funcionalidades do WMI / Win32_LogicalDiskClass -> http://msdn.microsoft.com/en-us/library/aa394173.aspx

Exemplos de funções que são mais utilizados: 

Win32 function Função Win32

Description Descrição

.NET Framework API . NET Framework API

GetDiskFreeSpace GetDiskFreeSpace

Retrieves information about the specified disk, including the amount of free space on the disk. Recupera informações sobre o disco especificado, incluindo a quantidade de espaço livre no disco, etc

System.Management.ManagementObject ("Win32_LogicalDisk.DeviceID=\"C:\"").Get System.Management.ManagementObject ( "Win32_LogicalDisk.DeviceID = \" C: \ ""). Get
System.Management.ManagementObject.Properties System.Management.ManagementObject.Properties

GetDiskFreeSpaceEx GetDiskFreeSpaceEx

Retrieves information about the specified disk, including the amount of free space on the disk. Recupera informações sobre o disco especificado

System.Management.ManagementObject ("Win32_LogicalDisk.DeviceID=\"C:\"").Get System.Management.ManagementObject ( "Win32_LogicalDisk.DeviceID = \" C: \ ""). Get
System.Management.ManagementObject.Properties System.Management.ManagementObject.Properties

GetLogicalDriveStrings GetLogicalDriveStrings

Fills a buffer with strings that specify valid drives in the system. Preenche um buffer com strings que especificam unidades válidasdo sistema.

Either of the following: Qualquer uma das seguintes opções:
System.Environment.GetLogicalDrives System.Environment.GetLogicalDrives
System.IO.Directory.GetLogicalDrives System.IO.Directory.GetLogicalDrives

 

Mais informações:

http://msdn.microsoft.com/en-us/library/system.management.managementclass.getrelatedclasses(VS.71).aspx

http://msdn.microsoft.com/en-us/library/aa329113(VS.71).aspx

 

Abraço[],

 

 

Categorias:C#
  1. Jonatas
    7 de março de 2013 às 20:11

    Sempre dá erro no “ManagementObject disk = new ManagementObject…”, já importei o using System.Management, mas de nada adiantou.

  1. No trackbacks yet.

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

%d blogueiros gostam disto: