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 07-02-2017
wilcg wilcg is offline
Miembro
 
Registrado: abr 2014
Posts: 107
Poder: 11
wilcg Va por buen camino
Distribución de aplicaciones de prueba

Hola amigos del foro,
Me he visto en la necesidad de implementar en mi aplicación un periodo de prueba, para que el cliente pueda usar la aplicación sin ninguna restricción por un periodo de tiempo. Pero tengo dudas sobre la fiabilidad de la protección y el código que utilice cumpla con lo encomendado y no falle y vaya en contra de mis intereses.
Para esto estoy usando un código en el VIEW SOURCE del proyecto que funcione dentro de un rango de fechas. Y quisiera saber la opinión de los expertos si esto es fiable y seguro o existe otra manera mas segura de implementarlo. Espero su ayuda...

Código Delphi [-]
program MiPrograma;

uses
  Forms,
  Windows,
  Classes,
  SysUtils,
  Registry,
  Graphics,
  TaskDialog,
  uPrincipal in 'Sistema\Principal\uPrincipal.pas' {FPrincipal},
  uDBConexion in 'Sistema\Conexion\uDBConexion.pas' {DBConexion: TDataModule},

{$R *.res}
var
  FInicio, FFin :TDateTime;
  AvisoErrores: TAdvTaskDialog;
begin
  FInicio := StrToDateTime('01/02/2017');
  FFin := StrToDateTime('28/02/2017');
  AvisoErrores := TAdvTaskDialog.Create(Application);

  if (Now >= FInicio) AND (Now <= FFin) then
  begin

  end
    else
  begin
    with AvisoErrores do
    begin
      Clear;
      Title := 'Error';
      Icon := tiError;
      CommonButtons := [cbOk];
      CustomButtons.Clear;
      DefaultButton := 0;
      Instruction := 'No se puede iniciar MiAplicación V 1.0';
      Content := 'El periodo de prueba a terminado.';
      ExpandedText := 'La Licencia era válida hasta el 28/02/2017.';
      ExpandControlText := 'Pulse para ocultar';
      CollapsControlText := 'Pulse para ver más';
      FooterIcon := tfiWarning;
      Footer := 'Contacte con ---@hotmail para adquirir la versión completa.';
      Options := [doHyperlinks];
      Execute;
    end;
    Halt;
  end;

  AvisoErrores.Free;

  Application.Initialize;
  Application.MainFormOnTaskbar := True;
  //Application.HelpFile := 'C:\MiCarpeta\Ayuda.chm';
  Application.Title := 'MiPrograma V 1.0';
  Application.CreateForm(TDBConexion, DBConexion);
  Application.CreateForm(TFPrincipal, FPrincipal);
  Application.Run;
end.
Responder Con Cita
  #2  
Antiguo 07-02-2017
Avatar de MAXIUM
MAXIUM MAXIUM is offline
Miembro
 
Registrado: may 2005
Posts: 1.488
Poder: 20
MAXIUM Va camino a la fama
Claramente el nivel de dificultad para crackear tu aplicación es 0 (cero).

Pero como alivio te puedo decir:
1° Dudo que tu posible cliente tenga siquiera algún conocimiento al respecto.
2° Las más grandes empresas de video juego invierten millones en sistemas de protección. Menos de una semana se demoraron en crackear Resident Evil 7 con una de las protecciones más seguras hasta la fecha.

En su momento use esta excelente componente gratuito:
Protección con contador de usos: http://delphiallimite.blogspot.cl/20...otector-1.html
Protección con contador de días: http://delphiallimite.blogspot.cl/20...otector-2.html
Responder Con Cita
  #3  
Antiguo 07-02-2017
Avatar de kurono
[kurono] kurono is offline
Miembro Premium
 
Registrado: jul 2007
Ubicación: Republica Dominicana
Posts: 1.126
Poder: 18
kurono Va por buen camino
te recomiendo que hagas un contador en tu aplicacion ya que alguien puede cambiar la fecha de sistema antes de iniciar el programa y usarlo
Responder Con Cita
  #4  
Antiguo 07-02-2017
Avatar de mamcx
mamcx mamcx is offline
Moderador
 
Registrado: sep 2004
Ubicación: Medellín - Colombia
Posts: 3.911
Poder: 25
mamcx Tiene un aura espectacularmamcx Tiene un aura espectacularmamcx Tiene un aura espectacular
Es mucho mejor usar un componente probado, aun si ese componente es "facil" de crakear. No es buena idea "inventarse" la seguridad sin haber adquirido los conocimientos adecuados.

--
He linkeado varias veces este articulo:

https://www.codeproject.com/kb/archi...ialwisdom.aspx

Que explica como afrontar de forma racional el tema de la pirateria y en que realmente enfocar esfuerzo.
__________________
El malabarista.
Responder Con Cita
  #5  
Antiguo 07-02-2017
wilcg wilcg is offline
Miembro
 
Registrado: abr 2014
Posts: 107
Poder: 11
wilcg Va por buen camino
Gracias amigos por aclararme las dudas, estaba convencido que el nivel que estaba suponiendo era un 2.5 de 10,
pero MAXIUM me matas con la noticia y como dice kurono es un gran error hacerlo de esta manera porque alguien podría cambiar las fechas y la aplicación se ejecutaría sin problemas.
es mejor usar un componente probado como dice mamcx para agregarle un poco de dificultad, ya que se sabe que nada es irrompible.
estoy usando Delphi Berlin algún componente como sugerencia para esta versión si es libre mucho mejor.
Responder Con Cita
  #6  
Antiguo 07-02-2017
Avatar de newtron
[newtron] newtron is offline
Membrillo Premium
 
Registrado: abr 2007
Ubicación: Motril, Granada
Posts: 3.462
Poder: 21
newtron Va camino a la fama
Igual suelto una tontería pero ¿no podrías evaluar la posibilidad de limitar el número de registros de alguna tabla importante? de esa forma no hay problemas de fechas y te aseguras de que no se va a usar el programa de forma intensiva.

Saludos
__________________
Be water my friend.
Responder Con Cita
  #7  
Antiguo 07-02-2017
Avatar de Luis M.
[Luis M.] Luis M. is offline
Miembro Premium
 
Registrado: sep 2004
Ubicación: Ripollet - Barcelona
Posts: 212
Poder: 20
Luis M. Va por buen camino
Cita:
Empezado por newtron Ver Mensaje
Igual suelto una tontería pero ¿no podrías evaluar la posibilidad de limitar el número de registros de alguna tabla importante? de esa forma no hay problemas de fechas y te aseguras de que no se va a usar el programa de forma intensiva.

Saludos
Pues no lo veo como tontería.
Yo lo he utilizado en alguna ocasión y me ha funcionado bien.
Otra de las cosas que hacía, en algún programa de facturación, era qué no imprimiese la factura si la fecha había caducado.
Como lo controlaba:
Al arrancar el programa cogía la fecha del sistema y la comparaba con la fecha mayor introducida en la factura.
Si la fecha de la factura era mayor que la fecha del sistema, salía un mensaje de aviso y el programa se cerraba.
Cuando dabas de alta o modificabas una factura no dejaba poner en la fecha de factura, una fecha superior a la del sistema.

Más o menos, esa es la idea.
Un saludo.
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
Programar Reset Automatico para aplicaciones de prueba netmaniaco Varios 2 12-08-2010 03:44:23
Prueba de aplicaciones SyncReuter Varios 4 22-02-2010 12:56:54
Paquete de distribucion odrack Varios 3 04-04-2008 06:17:04
Distribucion y dpk brandolin Varios 3 13-04-2005 16:53:32
Distribucion de Aplicaciones Delphi Hagen Varios 6 31-10-2004 02:43:22


La franja horaria es GMT +2. Ahora son las 23:29:32.


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