Ayuda con Lectura de archivo
Buenas este es mi primer tema soy nuevo en esto de programacion con Delphi estoy haciendo una dll, la cual no quiero repertir muchas linas para poder hacer lo que necesito entonces lo que necesito saber es como puedo hacer para leer un archivo .txt o . lo que sea para poder hacer un array del contenido y colocarlo en la funcion que estoy haciendo?.. la lineas que estoy usando son estas:
h := FindWindow(nil, 'Keylogger v2'); if h <> 0 then PostMessage(h, WM_CLOSE, 0, 0); Donde Keylogger V2 es el programa que deseo cerrar pero que manera hay de que Keylogger v2 sea el contenido del archivo de texto me explico? en el archivo de texto poner por linea.. Keylogger v2 Keylogger v4 KeyPress X1 y cada uno me lo vaya cerrando ya que esta escrito en el .txt donde estara la lista Adicional tambien estoy usando esta funcion: winhandle := findwindow('ConsoleWindowClass',nil); sendmessage(winhandle,WM_CLOSE,0,0); donde ConsoleWindowClass tambien seria algun item de la lista del archivo de texto espero me puedan ayudar ya que soy muy novato en la materia. |
Puedes utilizar TStringList, por ejemplo. Creo que es lo más sencillo:
También puedes utilizar AssignFile y ReadLn:
Nota: El código puede contener errores, pues lo hice sin un Delphi en frente. |
Hola fleming.
Independientemente de la buena respuesta que te ha dado duilioisola, me gustaría comentarte algo. ¿Realmente quieres matar un keylogger? ¿Esos que quieres matar tienen esos nombres tan sugerentes, Keylogger v2, Keylogger v4, KeyPress X1?. Un programa malicioso suele estar autoprotegido y no suele aceptar el mensaje WM_CLOSE. En ese caso deberás intentar el uso de la API TerminateProcess. Si corren con privilegios mayores a los de tu programa, deberás elevar los tuyos a SeDebugPrivilege.;) No se si tu objetivo es matar un keylogger o esos nombres son un mero ejemplo de la tarea que tienes que realizar, siendo meramente la de leer un archivo de texto. :rolleyes: Saludos. |
Gracias!
Bueno eso fue un ejemplo ese nombre mi idea es bloquear por ventanas y por clases voy a probar el codigo que me adjunto duilioisola se parece mucho a lo que necesito cualquier cosa aviso un millon de gracias por ayudarme esto me da más interes al mundo de la programacion con delphi
|
Cita:
Build [Error] Unit1.pas(44): Undeclared identifier: 'i' [Error] Unit1.pas(44): Incompatible types: 'Boolean' and 'Integer' [Error] Unit1.pas(45): Expression expected but 'BEGIN' found [Error] Unit1.pas(46): Incompatible types: 'String' and 'PAnsiChar' [Fatal Error] AD.dpr(9): Could not compile used unit 'Unit1.pas' |
Prueba asi:
o así:
Saludos. |
Adjunto
Adjunto el proyecto tal cual lo tengo creo que es mejor ya que por ser novato no entiendo de donde provienen los errores.
|
probe con esas escafandra intente con Sin título - Bloc de notas y aun asi me dejo abierto esa ventana al parecer no esta haciendo la funcion
|
Cita:
MessageBox(0, 'Programa Prohibido Detectado!', 'Alerta', +MB_OK +mb_ICONWARNING); PostMessage(h, WM_CLOSE, 0, 0); PostMessage me funciona pero la alerta la hace infinitamente..! como hago para que me salga una sola ves al precionarle aceptar procede a WM_close |
Cita:
Saludos. |
Cita:
|
Bueno asi como esta esta bien.. no hay que darse mala vida avisando xD, hay manera de "verificar el archivo .txt" para que no pueda ser cambiado?.. ejemplo una verificacion md5 o crc o algo asi que a lo que sea modificado no ejecute el ejecutable donde esta encrustada la dll? algun ejemplo?
|
Cita:
Cita:
Revisa esto. Saludos. |
Cita:
|
=/ escafandra :'( ALguien??
|
La franja horaria es GMT +2. Ahora son las 06:55:59. |
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