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 20-07-2008
Avatar de pockelsm3
pockelsm3 pockelsm3 is offline
Miembro
 
Registrado: oct 2007
Posts: 65
Poder: 17
pockelsm3 Va por buen camino
Unhappy Ayudaaaaa Proteger Mi Programa

Buenas a todos

por lo que voy a pedir ayuda, ya son temas tratado pero la ayuda la pido en vista de las soluciones dadas las he usado pero presento un problema con el WINDOWS y las funciones encontradas en el foro, (las funciones que usaso son para obtener ID unico del Hardware de una PC)

Me Explico:

1ro. Encontre una funcion aqui en el foro que me da el Numero de Seria del Disco Duro, esta me funciona a la perfeccion pero el problema radica en que cuando clono ese disco duro, es decir, que al nuevo disco donde estoy haciendo la copia le cambia el numero de Serie y le pone la misma que tiene el viejo, de donde estoy haciendo la copia. Protegiendo mi aplicacion de esta manera no me sirve, porque a la hora de hacer la clonacion en el nuevo disco clonado el programa funciona como si nada.

2do. Tambien he encontrado otras funciones que sirver para obtener el ID del Bios, La Tarjeta de Red, etc. pero estas funciones al parecer lee esos registro que el WINDOWS crea y almacena, ya que al momento de Clonar el Disco Duro me sucede lo mismo que el punto anterior.

Cuando realizo la clonacion de disco, la nueva copia la pongo en otra PC donde se entiende que los IDs de cada Hardware son diferente y en ese caso mi aplicacion no debe de duncionar para nada, lo cual no es Asi.

La ayuda que pido es que por favor si alguien conoce de alguna funcion que lea el ID de un Hardware especifico, pero que lea el dispositivo directamente y no lo busque en los registros de WINDOWS.

Les agradeceria mucho su ayuda.

Gracias por adelantado.
Responder Con Cita
  #2  
Antiguo 21-07-2008
SyncReuter SyncReuter is offline
Miembro
 
Registrado: ene 2007
Posts: 26
Poder: 0
SyncReuter Va por buen camino
Haber, yo le doy proteccion a mis programas de la siguiente forma, especificamente para evitar la copia del mismo, ahora bien, como funciona.

Utilizo 3 infos

1 El nombre del programa.
2 Una clave secreta interna
3 Una cadena que contiene la marca y modelo del disco duro.

(3) Lo logro utilizando con la clase THDDInfo, el cual es un componente no visual que se entrega esa informacion y mucho mas, el unico problema que tiene es que solo funciona sobre WinNT, yo en lo personal lo he probado en varios discos y NO FALLA.

Ahora bien como logro la serial unica? Uno las 3 informaciones en una misma cadena y genero un hash el cual seria el numero de serie de la copia del programa. En cada equipo el hash va a variar

Ahora bien, cuando ejecuten tu programa, internamente debes verificar que el hash coincida. Cuando el usuario necesita ejecutar el programa en otro pc, en el mismo programa va una utilidad que permite mover el programa al otro equipo.

Asi logre proteger mis programas.
Responder Con Cita
  #3  
Antiguo 21-07-2008
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.278
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
En la sección de componentes de mi página encontrarás uno llamado TDiskInfo. Pruébalo a ver si te es útil. Con él puedes obtener el SERIAL del disco duro (no el VOLUMEN que es lo que tú estás obteniendo).

Un saludo.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #4  
Antiguo 21-07-2008
Avatar de jcarteagaf
[jcarteagaf] jcarteagaf is offline
Miembro Premium
 
Registrado: abr 2006
Ubicación: La Paz, Bolivia
Posts: 651
Poder: 19
jcarteagaf Va por buen camino
En mi trabajo usamos un metodo similar. Obtenemos el numero de serie del disco duro, el nombre del usuario de windows y el nombre de la compañia (la que digitas al instalar windows) con esos 3 valores generamos una cadena de la forma:

XXXXX-XXXXXXXXXXXXX-XXXXX

al ingresar el programa generamos esa cadena mediante un algoritmo con los valores obtenidos, a continuación verificamos el registro del windows (que es donde grabamos los datos de la autenticación de nuestro programa) si no existe le mostramos una pantalla donde mostramos los datos obtenidos, la cadena generada y solicitamos una cadena de autorización de uso. Ahi es donde el cliente nos llama, nos dicta los datos y nosotros generamos la cadena de autorización. Este metodo nos funciona en diferentes maquinas e incluso con diferentes usuarios en la misma maquina, y asi llevamos un control sobre el uso de nuestros sistemas.

Saludos.
Responder Con Cita
  #5  
Antiguo 22-07-2008
Avatar de pockelsm3
pockelsm3 pockelsm3 is offline
Miembro
 
Registrado: oct 2007
Posts: 65
Poder: 17
pockelsm3 Va por buen camino
En la sección de componentes de mi página encontrarás uno llamado TDiskInfo. Pruébalo a ver si te es útil. Con él puedes obtener el SERIAL del disco duro (no el VOLUMEN que es lo que tú estás obteniendo).

he descargado este componente que me sugeriste, pero tengo un pequeño problema, es que estoy utilizando Delphi 2007 y cuando isntalo el componete al cerrar delphi y al volver abrirlo el componento no aparece instalado, es como si despues de haberlo isntalado delphi no lo guarda en la libreria.

por otra parte cuando lo instalo que lo pruebo antes de cerrar el delphi, me da un error con la dll, pero lo mas extraño que el demo que tienes funciona perfectamente, no entiendo a que se debe.

Gracias anticipada
Responder Con Cita
  #6  
Antiguo 22-07-2008
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.278
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Pues no se.
He vuelto a compilar el componente y la demo (en su día lo había hecho con 2006) ahora con Delphi 2007 y me funciona bien.

El error que comentas con la DLL, ¿Puedes ponerlo aquí?
Lo único que esta DLL debe estar en el mismo directorio del ejecutable, pero aparte de eso no requiere nada más especial.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #7  
Antiguo 22-07-2008
Avatar de pockelsm3
pockelsm3 pockelsm3 is offline
Miembro
 
Registrado: oct 2007
Posts: 65
Poder: 17
pockelsm3 Va por buen camino
Cita:
Empezado por Neftali Ver Mensaje
Pues no se.
He vuelto a compilar el componente y la demo (en su día lo había hecho con 2006) ahora con Delphi 2007 y me funciona bien.

El error que comentas con la DLL, ¿Puedes ponerlo aquí?
Lo único que esta DLL debe estar en el mismo directorio del ejecutable, pero aparte de eso no requiere nada más especial.

Este es el error que me da al abrir la aplicacion

EAccessViolation With Message 'Access violation at address 00404944 in module 'HDDSN.exe'. Read of address 010c0b34
Responder Con Cita
  #8  
Antiguo 22-07-2008
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.278
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
¿La has ejecutado paso a paso?
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #9  
Antiguo 22-07-2008
Avatar de pockelsm3
pockelsm3 pockelsm3 is offline
Miembro
 
Registrado: oct 2007
Posts: 65
Poder: 17
pockelsm3 Va por buen camino
ese error me justo cuando se esta creando el formulario
Responder Con Cita
  #10  
Antiguo 22-07-2008
Avatar de pockelsm3
pockelsm3 pockelsm3 is offline
Miembro
 
Registrado: oct 2007
Posts: 65
Poder: 17
pockelsm3 Va por buen camino
olvide decir

que tambien el error me sucede cuando pongo la dll en la aplicacion, y si no tengo la dll el programa cuando me da este error <Error in IDESN.DLL>
Responder Con Cita
  #11  
Antiguo 22-07-2008
Avatar de pockelsm3
pockelsm3 pockelsm3 is offline
Miembro
 
Registrado: oct 2007
Posts: 65
Poder: 17
pockelsm3 Va por buen camino
Error dado

haciendo esto es que me da el error

procedure TForm1.Button1Click(Sender: TObject);
begin
DiskInfo1.DriveLetter := 'C';
label1.Caption := DiskInfo1.SerialNumber;
end;
Responder Con Cita
  #12  
Antiguo 20-10-2021
Badillo Badillo is offline
Miembro
 
Registrado: jun 2021
Posts: 33
Poder: 0
Badillo Va por buen camino
Ayuda controlar la el tiempo desde que ejecuta la app por primera vez

Saludos, necesito ayuda con ideas o algoritmo que me permita tener controlar la fecha desde que se ejecuta mi app la primera vez.
1. Si el usuario cambia la fecha del SO. ¿Como puedo controlar esto.

Gracias y espero su ayuda
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
Ayudaaaaa!!! Conectar unidad de red Berto2003 Varios 4 27-12-2011 22:59:20
Proteger Programa Yusk333 API de Windows 10 04-09-2007 23:27:48
Proteger mi programa rruffino Varios 8 21-12-2006 17:20:49
proteger archivos......... cesarjbf Windows 2 17-10-2005 09:33:54
ayudaaaaa, Impresion en qreport con GroupFooter jac000y Impresión 2 22-12-2003 16:16:18


La franja horaria es GMT +2. Ahora son las 12:10:42.


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