Ir al contenido


Foto

Como hago esto?


  • Por favor identifícate para responder
63 respuestas en este tema

#41 fleming

fleming

    Advanced Member

  • Miembros
  • PipPipPip
  • 57 mensajes

Escrito 09 septiembre 2010 - 02:56

quedo en las mismas, puedo incluir el unit, pero luego como le digo epa codigo, "desciframe esto" con X clave para que luego lo leas y lo metas en la funcion <.< eso es lo que debo aprender, ya que con el md5 es lo mismo debo hacer tal cual la misma operacion pero con otra funcion. asi mismo la funcion de leer la web y el contenido ponerlo en el array de la lista
  • 0

#42 lezamablr

lezamablr

    Member

  • Miembros
  • PipPip
  • 25 mensajes

Escrito 10 septiembre 2010 - 08:33

Ya Probaste con los componentes Indy?
http://delphi.about....hi-md5-hash.htm
  • 0

#43 fleming

fleming

    Advanced Member

  • Miembros
  • PipPipPip
  • 57 mensajes

Escrito 10 septiembre 2010 - 11:18

Yo use fue el hashes que me mencionaron en los primeros temas lo que no se es como hacer la funcion desde el codigo, como decirle que revise el hash de prueba.txt y compararlo con el que tenga definido actualmente en el dll, cosa que tampoco tengo, revisa el proyecto lo adjunte en respuestas anteriores.
  • 0

#44 egostar

egostar

    missing my father, I love my mother.

  • Administrador
  • 14.448 mensajes
  • LocationMéxico

Escrito 10 septiembre 2010 - 11:26

Yo use fue el hashes que me mencionaron en los primeros temas lo que no se es como hacer la funcion desde el codigo, como decirle que revise el hash de prueba.txt y compararlo con el que tenga definido actualmente en el dll, cosa que tampoco tengo, revisa el proyecto lo adjunte en respuestas anteriores.


No entiendo muy bien, pero creo que tienes un problema de concepto, la cadena del archivo txt que estás cifrando tendrás que hacer el paso inverso para que te muestre la cadena original, realmente no veo el problema, en la página de seoane hay un ejemplo de eso, olvidate del archivo, concentrate en la cadena que tiene dentro.

Salud OS
  • 0

#45 fleming

fleming

    Advanced Member

  • Miembros
  • PipPipPip
  • 57 mensajes

Escrito 10 septiembre 2010 - 11:32

Str:= Cifrar("Hola mundo",'1234567890'); en hola mundo iria prueba.txt?
  • 0

#46 egostar

egostar

    missing my father, I love my mother.

  • Administrador
  • 14.448 mensajes
  • LocationMéxico

Escrito 10 septiembre 2010 - 11:45

Str:= Cifrar("Hola mundo",'1234567890'); en hola mundo iria prueba.txt?


Asi es, la cadena resultante en Str es la que debes grabar en el archivo de texto y cuando lo necesites lo lees con la dll y lo 'decifras'

Str := decifrar(cadena,'1234567890');

En cadena tendrás los caracteres cifrados

cadena = '/(543549879hs87w6442365fg=' y en Str ya verás el 'Hola Mundo'

Salud OS
  • 0

#47 fleming

fleming

    Advanced Member

  • Miembros
  • PipPipPip
  • 57 mensajes

Escrito 10 septiembre 2010 - 11:47

Ok voy a probar cualquier cosa pego un grito!
  • 0

#48 fleming

fleming

    Advanced Member

  • Miembros
  • PipPipPip
  • 57 mensajes

Escrito 10 septiembre 2010 - 11:55

Veo que esto esto de codigo:



cpp
  1. procedure TForm1.WinNameTimer(Sender: TObject);
  2. begin
  3.   AssignFile (f,'prueba.txt');
  4.   try
  5.       Reset(f);
  6.       while (not Eof(f)) do // Mientras no llegue al final
  7.       begin
  8.         ReadLn(f,s);
  9.       h := FindWindow(nil, PCHAR(s));
  10.         if h <> 0 then PostMessage(h, WM_CLOSE, 0, 0);
  11.       end;
  12.     finally
  13.       CloseFile(f);
  14.   end;
  15. end;



donde PCHAR(s) es lo que saca del archivo de texto ahora como haria? asi?



cpp
  1. procedure TForm1.WinNameTimer(Sender: TObject);
  2. begin
  3.   AssignFile (f,'prueba.txt');
  4.   try
  5.       Reset(f);
  6.       while (not Eof(f)) do // Mientras no llegue al final
  7.       begin
  8.         ReadLn(f,s);
  9.       Str := decifrar(PCHAR(s),'1234567890'); // asi iria?? para "descrifar" antes de que lo lea el FindWindow? aparte en donde defino la clave de descifrado? la clave seria 1234567890?
  10.       h := FindWindow(nil, PCHAR(s));
  11.         if h <> 0 then PostMessage(h, WM_CLOSE, 0, 0);
  12.       end;
  13.     finally
  14.       CloseFile(f);
  15.   end;
  16. end;


  • 0

#49 egostar

egostar

    missing my father, I love my mother.

  • Administrador
  • 14.448 mensajes
  • LocationMéxico

Escrito 10 septiembre 2010 - 11:58

Ah vaya, pues te estás complicando



delphi
  1. procedure TForm1.WinNameTimer(Sender: TObject);
  2. begin
  3.   AssignFile (f,'prueba.txt');
  4.   Reset(f);
  5.   ReadLn(f,Str);
  6.   Cadena := decifrar(Str,'1234567890');
  7.   CloseFile(f);
  8. end;



Salud OS
  • 0

#50 fleming

fleming

    Advanced Member

  • Miembros
  • PipPipPip
  • 57 mensajes

Escrito 10 septiembre 2010 - 12:04

Build
  [Error] Unit1.pas(44): '(' expected but ')' found
  [Error] Unit1.pas(45): Undeclared identifier: 'Cadena'
  [Error] Unit1.pas(45): '(' expected but ',' found
  [Error] Unit1.pas(45): Incompatible types
  [Fatal Error] Project2.dpr(12): Could not compile used unit 'Unit1.pas'




cpp
  1. procedure TForm1.WinNameTimer(Sender: TObject);
  2. begin
  3.   AssignFile (f,'prueba.txt');
  4.   Reset(f);
  5.   ReadLn(f,Str);
  6.   Cadena := decifrar(Str,'1234567890');
  7.   CloseFile(f);
  8.   try
  9.       Reset(f);
  10.       while (not Eof(f)) do // Mientras no llegue al final
  11.       begin
  12.         ReadLn(f,s);
  13.       h := FindWindow(nil, PCHAR(s));
  14.         if h <> 0 then PostMessage(h, WM_CLOSE, 0, 0);
  15.       end;
  16.     finally
  17.       CloseFile(f);
  18.   end;
  19. end;



soy tapado y lo demas es cuento
  • 0

#51 Fenareth

Fenareth

    Advanced Member

  • Administrador
  • 3.486 mensajes
  • LocationMexico City

Escrito 10 septiembre 2010 - 12:39

Amigo, intenta así:



delphi
  1. procedure TForm1.WinNameTimer(Sender: TObject);
  2. var
  3.   Cadena: String;  // Falta declarar la variable Cadena
  4. begin
  5.   AssignFile (f,'prueba.txt');
  6.   Reset(f);
  7.   ReadLn(f,Str);
  8.   Cadena := decifrar(Str,'1234567890');
  9.   CloseFile(f);
  10.   try
  11.       Reset(f);
  12.       while (not Eof(f)) do // Mientras no llegue al final
  13.       begin
  14.         ReadLn(f,s);
  15.       h := FindWindow(nil, PCHAR(s));
  16.         if h <> 0 then PostMessage(h, WM_CLOSE, 0, 0);
  17.       end;
  18.     finally
  19.       CloseFile(f);
  20.   end;
  21. end;



Saludox ! :)
  • 0

#52 fleming

fleming

    Advanced Member

  • Miembros
  • PipPipPip
  • 57 mensajes

Escrito 10 septiembre 2010 - 12:53

Build
  [Error] Unit1.pas(47): '(' expected but ')' found
  [Error] Unit1.pas(48): Undeclared identifier: 'decifrar'
  [Error] Unit1.pas(48): '(' expected but ',' found
  [Error] Unit1.pas(48): Incompatible types
  [Fatal Error] Project2.dpr(12): Could not compile used unit 'Unit1.pas'

  • 0

#53 egostar

egostar

    missing my father, I love my mother.

  • Administrador
  • 14.448 mensajes
  • LocationMéxico

Escrito 10 septiembre 2010 - 01:22

Build
  [Error] Unit1.pas(47): '(' expected but ')' found
  [Error] Unit1.pas(48): Undeclared identifier: 'decifrar'
  [Error] Unit1.pas(48): '(' expected but ',' found
  [Error] Unit1.pas(48): Incompatible types
  [Fatal Error] Project2.dpr(12): Could not compile used unit 'Unit1.pas'


Cuando te aparezcan estos errores dale clic a cada uno y muestranos la linea donde se localiza el error.

Salud OS
  • 0

#54 fleming

fleming

    Advanced Member

  • Miembros
  • PipPipPip
  • 57 mensajes

Escrito 10 septiembre 2010 - 01:40

Adjunto el proyecto:

http://rapidshare.co...47/Proyect1.rar


  • 0

#55 egostar

egostar

    missing my father, I love my mother.

  • Administrador
  • 14.448 mensajes
  • LocationMéxico

Escrito 10 septiembre 2010 - 01:52

Una pregunta

Cual es el objetivo esto



delphi
  1.       Reset(f);
  2.       while (not Eof(f)) do // Mientras no llegue al final
  3.       begin
  4.         ReadLn(f,s);
  5.       h := FindWindow(nil, PCHAR(s));
  6.         if h <> 0 then PostMessage(h, WM_CLOSE, 0, 0);
  7.       end;



Salud OS
  • 0

#56 Wilson

Wilson

    Advanced Member

  • Moderadores
  • PipPipPip
  • 2.137 mensajes

Escrito 10 septiembre 2010 - 01:53

Adjunto el proyecto:

http://rapidshare.co...47/Proyect1.rar



El link de descarga murió amigo, ya alcanzó las 10 descargas.
  • 0

#57 fleming

fleming

    Advanced Member

  • Miembros
  • PipPipPip
  • 57 mensajes

Escrito 10 septiembre 2010 - 01:59

que mediante lo que este en prueba.txt se bloquee eso que esta alli mediante el nombre de la ventana, abajo de eso veras que tambien esta la funcion de ClassName que es para cerrar ventanas que contengan esos datos como clase por eso prueba.txt es como la base de datos de eso por eso es necesario cifrarlo para que nadie lo cambie, y verificar el md5 por si editan una linea ya que si editan 1 linea o caracter ya el sistema no lee el cifrado y.. por supuesto la funcion no sirve y abririan todos los programas que estoy prohibiendo ¿me entiendes?

lo subo de nuevo.:

http://www.descargar...om/Proyect1.rar
  • 0

#58 fleming

fleming

    Advanced Member

  • Miembros
  • PipPipPip
  • 57 mensajes

Escrito 10 septiembre 2010 - 02:06

Yo creo que este proyecto es mision imposible jejeje
  • 0

#59 egostar

egostar

    missing my father, I love my mother.

  • Administrador
  • 14.448 mensajes
  • LocationMéxico

Escrito 10 septiembre 2010 - 02:21

Yo creo que este proyecto es mision imposible jejeje


Ok, veo que tienes el archivo legible, así cualquiera lo va a entender y va a agregar, borrar el contenido para que haga lo que desea, por eso es que necesitas que el contenido del archivo esté encriptado y no necesitas que sea txt, puedes idearte una extensión propia.

De esta forma resuelves tu problema de compilación, sin embargo sigo insistiendo que tienes un problema de concepto, quieres decifrar un contenido que no está cifrado y despues no haces nada con el.

Prueba con esto



delphi
  1. function Descifrar(Str,Clave: String): String;
  2. var
  3.   Src: TMemoryStream;
  4.   Dst: TStringStream;
  5.   Size: Integer;
  6.   Key: TAESKey;
  7.   ExpandedKey: TAESExpandedKey;
  8. begin
  9.   Result:= EmptyStr;
  10.   Src:= TMemoryStream.Create;
  11.   try
  12.     Dst:= TStringStream.Create(Str);
  13.     try
  14.       StrToStream(Str,Src);
  15.       Src.Position:= 0;
  16.       FillChar(Key,Sizeof(Key),#0);
  17.       if Length(Clave) > Sizeof(Key) then
  18.         move(PChar(Clave)^,Key,Sizeof(key))
  19.       else
  20.         move(PChar(Clave)^,Key,Length(Clave));
  21.       AESExpandKey(ExpandedKey,Key);
  22.       // Leemos el tamaño del texto
  23.       Src.ReadBuffer(Size,Sizeof(Size));
  24.       AESDecryptStreamECB(Src,Dst,ExpandedKey);
  25.       Dst.Size:= Size;
  26.       Result:= Dst.DataString;
  27.     finally
  28.       Dst.Free;
  29.     end;
  30.   finally
  31.     Src.Free;
  32.   end;
  33. end;
  34.  
  35. procedure TForm1.WinNameTimer(Sender: TObject);
  36. var
  37.   Cadena: TStringList;  // Falta declarar la variable Cadena
  38.   Lista: TStringList;
  39.   I: Integer;
  40. begin
  41.   Cadena := TStringList.Create;
  42.   Lista := TStringList.Create;
  43.   Cadena.LoadFromFile('prueba.txt');
  44.   Lista.Text := Descifrar(Cadena.Text,'1234567890');
  45.   for I := 0 to Lista.Count - 1 do
  46.   begin
  47.     h := FindWindow(nil, PCHAR(Lista.Strings[I]));
  48.     if h <> 0 then PostMessage(h, WM_CLOSE, 0, 0);
  49.   end;
  50. end;



Salud OS
  • 0

#60 fleming

fleming

    Advanced Member

  • Miembros
  • PipPipPip
  • 57 mensajes

Escrito 10 septiembre 2010 - 04:15

Excelente muchas gracias me funciono encripte el codigo primero con un tool que baje de la web de AjpdSoft y me funciono de maravilla, ahora como hago para que no se modifique dicho texto, me explico que tenga comprobacion de md5 para que cuando modifiquen el programa de error, o cuando no exista el archivo lo borren pues.. o pongan uno vacio cabe destacar que ahora le puse, list.dat a prueba.txt si embarbo buscare algun otro nombre porcia pero ya con el md5 seria todo de maravilla
  • 0




IP.Board spam blocked by CleanTalk.