Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 17-05-2007
Alexis De la Cr Alexis De la Cr is offline
Miembro
 
Registrado: may 2006
Ubicación: Puebla
Posts: 124
Poder: 18
Alexis De la Cr Va por buen camino
Componente DiskInfo, para Obtener el Numero de Serie del Disco Duro

Estimados Colegas:

Estoy intentando Obtener el Numero de Serie Fisico del Disco Duro donde se va a instalar la aplicacion que estoy desarrollando. Buscando por aqui Encontre que hay un componente que se llama DiskInfo que hace esa tarea y que ademas es gratuito.

Utilizo Delphi 7 , y una ves que lo instale(Aparentemente bien), no he podido utilizarlo ya que cuando pretendo ejecutar mi aplicacion, por muy sencilla que sea manda el siguiente error

system error. Code 55: El recurso de red o el dispositivo especificados ya no se encuentran disponibles.

Lo curios es que Durante el diseño de la apliacion, el inspector de objetos si muestra correctamente el numero de serie del disco duro.

Aqui es donde me surge una Pregunta, como pasa esto, que si funcione en tiempo de diseño, pero no en tiempo de ejecucion??

Debo aclarar que el numero de serie se obtiene a traves de una dll, si no tienes la dll en la misma carpeta que la aplicacion, el inspector de objetos no muestra el numero de serie.

Otro detalle es que el Demo ejecutable funciona a la perfeccion, pero el codigo fuente al intentar compilarlo, arroja el mismo error y no funciona....

Sera que hay truco por ser gratuito, para poder hacerlo funcionar correctamente?

Bueno si alguien tiene mas experiencia con este componente, se agradeceran los comentarios vertidos aqui.

Saludos
Responder Con Cita
  #2  
Antiguo 17-05-2007
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Esta funcion obtiene en numero de serie del disco:
Código Delphi [-]
   function GetVolumeID(DriveChar: Char): String;
   var
     MaxFileNameLength, VolFlags, SerNum: DWord;
   begin
     if GetVolumeInformation(PChar(DriveChar + ':\'), nil, 0,
        @SerNum, MaxFileNameLength, VolFlags, nil, 0)
     then
     begin
       Result := IntToHex(SerNum,8);
       Insert('-', Result, 5);
     end
     else
         Result := '';
   end;
Ejemplo de llamada a la funcion:
Código Delphi [-]
Label1.Caption:=GetVolumeId('c');
Creo que esto estaba en trucomania.
Saludos
Responder Con Cita
  #3  
Antiguo 17-05-2007
Alexis De la Cr Alexis De la Cr is offline
Miembro
 
Registrado: may 2006
Ubicación: Puebla
Posts: 124
Poder: 18
Alexis De la Cr Va por buen camino
Estimado Caral:

Muchas Gracias por Tomarte el tiempo para responder. Sin embargo este mismo Codigo ya aparece en algunos post aqui en el foro.

El detalle de este Codigo es que no te muestra el Numero de Serie del disco duro, sino del Volumen, el cual se renueva aleatoriamente cada vez que Formatea el Disco duro.

De todas MAneras Gracias por el Tip.

Alexis De la Cruz
Responder Con Cita
  #4  
Antiguo 17-05-2007
[egostar] egostar is offline
Registrado
 
Registrado: feb 2006
Posts: 6.556
Poder: 25
egostar Va camino a la fama
Hola Alexis

Visita la página de Domingo (seoane), ahi tienes el código que requieres, solo hay una cuestión, pudiera ser que el número de serie no esté disponible en algunos discos duros, no se como explicarlo, pero seoane te pudiera dar mas detalles.

Salud OS.
__________________
"La forma de empezar es dejar de hablar y empezar a hacerlo." - Walt Disney
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
Número de serie físico del disco duro REDCOM Varios 10 23-03-2009 20:35:53
¿Función para determinar la capacidad del disco duro? Roilo API de Windows 8 30-12-2008 19:07:30
Como obtener el número de serie de la mother board saul_fg API de Windows 1 11-03-2007 07:49:51
Modificar el numero de serie de una unidad de disco duro Sick boy API de Windows 2 06-10-2004 12:45:33


La franja horaria es GMT +2. Ahora son las 22:08:58.


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