Página 3 de 4

Número serial do HD - Anti cópia

Enviado: 29 Mar 2013 20:29
por Hasse

Número serial do HD - Anti cópia

Enviado: 29 Mar 2013 21:13
por lugab
Sorrry, Hasse, but this link is broken.....

Código: Selecionar todos

 http://www.wizdownloads.com/download/Wi ... serial-dll

Page not found

The page you are looking for does not exist.
It's possible that you typed the address incorrectly, or that the page no longer exists.

You can try to use the search on top to find the page you wanted.

Número serial do HD - Anti cópia

Enviado: 30 Mar 2013 09:08
por Hasse
Então vamos mudar a forma de proceder.
Digitar no Google:
"Diskserial.dll download", que aparecem centenas de sites para downloads.

ou colar o código abaixo na janela de URL:

Número serial do HD - Anti cópia

Enviado: 30 Mar 2013 19:08
por esgici

Número serial do HD - Anti cópia

Enviado: 07 Mar 2021 19:22
por asimoes
Só funciona com IDE

Número serial do HD - Anti cópia

Enviado: 07 Mar 2021 21:13
por JoséQuintas
asimoes escreveu:Só funciona com IDE
Não entendi.

Código: Selecionar todos

FUNCTION DriveSerial( cDisk )

   hb_Default( @cDisk, "C:\" )

   RETURN Transform( Padl( hb_NumToHex( VolSerial( cDisk ) ), 8 ), "@R XXXX-XXXX" )
hbmk2 -find serial

hbct.hbc (installed):
VolSerial()
https://github.com/vszakats/hb/blob/mas ... isk.c#L224

Número serial do HD - Anti cópia

Enviado: 07 Mar 2021 21:49
por asimoes
Testei com no meu notebook que é SSD não retornou nada, não testei com a sua função.
Testei agora com a sua função funciona, mas existem outras formas usando a classe Win32_DiskDrive

Acho que esse serial é do windows quando ele instala e não do hd, do hd é usando a classe Win32_DiskDrive método SerialNumber

Número serial do HD - Anti cópia

Enviado: 07 Mar 2021 22:01
por asimoes
2021-03-07 22_00_06-QUERY.png
2021-03-07 22_02_58-Greenshot.png
2021-03-07 22_04_38-Greenshot.png
Usando a classe Win32_DiskDrive

Número serial do HD - Anti cópia

Enviado: 08 Mar 2021 18:53
por JoséQuintas
Aquele serial que mostrei é o que o Windows coloca no drive após formatar.
Pra um uso geral tá bom.

Número serial do HD - Anti cópia

Enviado: 10 Mar 2021 11:30
por asimoes
Descobri que essa classe tras também o serial do windows

Código: Selecionar todos

 FOR EACH oDiskDrive IN oWMIServerA2:ExecQuery( "SELECT * FROM Win32_LogicalDisk" )
      hRecord := Nil
      hRecord := {=>}
      hRecord["Caption"]            := oDiskDrive:Caption
      hRecord["Description"]        := oDiskDrive:Description
      hRecord["FileSystem"]         := oDiskDrive:FileSystem
      hRecord["ProviderName"]       := oDiskDrive:ProviderName
      hRecord["Purpose"]            := oDiskDrive:Purpose
      hRecord["Size"]               := oDiskDrive:Size
      hRecord["Status"]             := oDiskDrive:Status
      hRecord["SystemName"]         := oDiskDrive:SystemName
      hRecord["VolumeName"]         := oDiskDrive:VolumeName
      hRecord["VolumeSerialNumber"] := oDiskDrive:VolumeSerialNumber
      aAdd( aResp, hRecord )
   NEXT
2021-03-10 11_29_26-QUERY.png

Número serial do HD - Anti cópia

Enviado: 11 Mar 2021 08:35
por malcarli
Ola Asimoes, como chamou ela? tem alguma lib a ser linkada?
Att.

Marcelo A. L. Carli
Marília/SP
Capital Nacional do Alimento ®

https://malc-informatica.ueniweb.com
http://marcelo.lx.com.br
Email / Skype: malcarli@life.com.br

Número serial do HD - Anti cópia

Enviado: 11 Mar 2021 09:16
por asimoes
Tenta usar, se houver error na compilação o hbmk2 vai dar a dica da lib necessária

aDiskInfo := GetDiskInformation()

Vai retonar um vetor hash

Código: Selecionar todos

FUNCTION GetDiskInformation()
LOCAL cDiskNum AS STRING := "", cPnPDeviceID AS STRING := "", oDiskDrive AS OBJECT
LOCAL oWMIObjA AS OBJECT, oWMIServerA AS OBJECT, oWMIDiskDrive AS OBJECT, oWMIObjA2 AS OBJECT, oWMIServerA2 AS OBJECT, ;
      oWMILogicalDisk AS OBJECT

   oWMIObjA := Win_OleCreateObject( "wbemScripting.SwbemLocator" )
   
   oWMIServerA := oWMIObjA:ConnectServer()
   
   aResp := {}
  
   FOR EACH oDiskDrive IN oWMIServerA:ExecQuery( "SELECT * FROM Win32_LogicalDisk" )
      hRecord := Nil
      hRecord := {=>}
      hRecord["Caption"]            := oDiskDrive:Caption
      hRecord["Description"]        := oDiskDrive:Description
      hRecord["FileSystem"]         := oDiskDrive:FileSystem
      hRecord["ProviderName"]       := oDiskDrive:ProviderName
      hRecord["Purpose"]            := oDiskDrive:Purpose
      hRecord["Size"]               := oDiskDrive:Size
      hRecord["Status"]             := oDiskDrive:Status
      hRecord["SystemName"]         := oDiskDrive:SystemName
      hRecord["VolumeName"]         := oDiskDrive:VolumeName
      hRecord["VolumeSerialNumber"] := oDiskDrive:VolumeSerialNumber
      aAdd( aResp, hRecord )
   NEXT
   
   FOR EACh oDiskDrive IN oWMIServerA:ExecQuery( "SELECT * FROM Win32_DiskDrive" )
      hRecord := Nil
      hRecord := {=>}
      hRecord["SerialNumber"] := oDiskDrive:SerialNumber
      hRecord["Manufacturer"] := oDiskDrive:Manufacturer
      hRecord["MediaType"]    := oDiskDrive:MediaType
      hRecord["Partitions"]   := oDiskDrive:Partitions
      hRecord["Size"]         := oDiskDrive:Size
      hRecord["Caption"]      := oDiskDrive:Caption
      hRecord["Description"]  := oDiskDrive:Description
      hRecord["DeviceID"]     := oDiskDrive:DeviceID
      hRecord["Model"]        := oDiskDrive:Model
      hRecord["SystemName"]   := oDiskDrive:SystemName
      aAdd( aResp, hRecord )
   NEXT
   
RETURN aResp

Número serial do HD - Anti cópia

Enviado: 15 Abr 2021 14:07
por Softwhouse
Olá ASimões,

Pode mostrar como ver as informações do retorno do vetor aDiskInfo ?

Obrigado.

Número serial do HD - Anti cópia

Enviado: 15 Abr 2021 16:42
por asimoes
Softwhouse escreveu:Olá ASimões,

Pode mostrar como ver as informações do retorno do vetor aDiskInfo ?

Obrigado.

Código: Selecionar todos

LOCAL oElemento

FOR EACH oElemento In aDiskInfo 
   ? oElemento["VolumeSerialNumber"]
NEXT
Ou

cVolumeSerialNumber := aDiskInfo[1]["VolumeSerialNumber"]

Número serial do HD - Anti cópia

Enviado: 15 Abr 2021 18:34
por Softwhouse
Valeu, obrigado.