Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 21-05-2007
Avatar de cHackAll
[cHackAll] cHackAll is offline
Baneado?
 
Registrado: oct 2006
Posts: 2.159
Poder: 20
cHackAll Va por buen camino
Cool Yo digo...

Acá les dejo la función que hice el '05 para obtener la serie de un HDD... La adecué un poco para que sea una función independiente pues yo lo uso luego del "InitExe". Es todo lo que se necesita y funciona a la perfección sin DLLs.
Código Delphi [-]
function GetSerial(Drive: Char): ShortString;
const InBuffer: array [0..7] of Cardinal = ($200,$10100,$ECB000,0,0,0,0,0);
var
 hDevice, Dummy: Cardinal;
 IdeInfo: array [0..$83] of Cardinal;
begin
 Result[0] := #0;
 hDevice := CreateFile(PChar('\\.\' + Drive + ':'), GENERIC_READ + GENERIC_WRITE, FILE_SHARE_WRITE, nil, OPEN_EXISTING, 0, 0);
 if hDevice <> INVALID_HANDLE_VALUE then
  begin
   DeviceIoControl(hDevice, $7C088, @InBuffer, SizeOf(InBuffer), @IdeInfo, SizeOf(IdeInfo), Dummy, nil);
   CloseHandle(hDevice);
   Result[0] := #20;
   Move(IdeInfo[9], Result[1], Byte(Result[0]));
  end;
end;

procedure TForm1.ComboBox1Change(Sender: TObject);
begin
 Caption := '"'+GetSerial(ComboBox1.Text[1])+'"'; // 'a..z'
end;

La función no es aplicable en 9x, puesto que para ésos fines se debiese acceder a los puertos que manejan los buses (1F0h, 170h, 1E8h y 168h).
Personalmente mis aplicaciones solo corren en NT, lo decidí firmemente cuando me enteré que Microsoft ya no daba soporte a ésos SOs.

PD: Disculpen el retraso pero andaba "programando"
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
obtener el número de serie de un disco duro serial ATA mgc API de Windows 4 27-03-2009 15:54:18
Serial del disco duro Emerson API de Windows 10 12-07-2006 07:44:30
Como leer el serial del Disco duro? JuanErasmo C++ Builder 1 30-09-2005 06:34:35
Lectura del serial de un disco duro. mlara Windows 4 22-12-2004 17:11:11
Leer Serial del Disco Duro MaxPc API de Windows 1 18-06-2004 22:30:22


La franja horaria es GMT +2. Ahora son las 02:44:24.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi