Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   C++ Builder (https://www.clubdelphi.com/foros/forumdisplay.php?f=13)
-   -   Una aplicación dentro de otra (https://www.clubdelphi.com/foros/showthread.php?t=78924)

lormurlok 26-05-2012 01:17:07

Una aplicación dentro de otra
 
Buenas, soy GM de un servidor de World Of Warcraft, y últimamente, se ha puesto de moda una aplicación que identifica el programa, capta la ID y desde un panel de opciones puedes modificar el juego (volar, velocidad, daño...)
Me han encargado que intente solucionarlo, y mi idea ha sido fabricar una aplicación y que el World Of Warcraft funcione dentro de esta, de esa manera el hack no lo detectará.
Me gustaría que me dijesen paso a paso los programas que necesito, lo que tengo que hacer y como. Toda una comunidad os lo agradecerá y yo el primero.

Gracias de antemano.

ecfisa 26-05-2012 02:24:36

Hola lormurlok y bienvenido a Club Delphi :)

Como a todos los que se inician te invitamos a que leas nuestra guía de estilo.


Cita:

Me han encargado que intente solucionarlo, y mi idea ha sido fabricar una aplicación y que el World Of Warcraft funcione dentro de esta, de esa manera el hack no lo detectará.
Supongo que te refieres a que la aplicación llame al World Of Warcraft, es decir que actue como un lanzador. De ser así te pongo dos ejemplos de como podrías realizar esto.

Usando la función ShellExecute:
Código:

...
char *lpOperation = "open",
    *lpFile = "C:\\WINDOWS\\NOTEPAD.EXE",
    *lpParameters,
    *lpDirectory;

    ShellExecute(Handle,
                  lpOperation,
                  lpFile,
                  NULL,
                  NULL,
                  SW_SHOWNORMAL);
}

Las variables declaradas están a fín de clarificar, pero pueden ser omitidas pasando directamente los valores como constantes.


Mediante la función CreateProcess:
Código:

void CreateProc(AnsiString AppName, AnsiString Args)
{
STARTUPINFO StartInfo;
PROCESS_INFORMATION ProcInfo;

  Trim(AppName);
  Trim(Args);
  Args = " " + Args;
  memset(&ProcInfo, 0, sizeof(ProcInfo));
  memset(&StartInfo, 0 , sizeof(StartInfo));
  StartInfo.cb = sizeof(StartInfo);
  CreateProcess(AppName.c_str(), Args.c_str(), NULL, NULL,
    FALSE, CREATE_DEFAULT_ERROR_MODE, NULL, NULL, &StartInfo, &ProcInfo);
}


/* Ejemplo de llamada: */
...
{
 CreateProc("C:\\WINDOWS\\NOTEPAD.EXE", "C:\\ARCHIVO.TXT");
}

En ambos casos se llama al programa notepad.exe, tendrás que cambiar ese parámetro por la ruta y nombre de tu ejecutable.


Al pié de esta página tenes temas relacionados con tu consulta y con seguridad encuentres más material utilizando la búsqueda de los foros.

Saludos. :)

lormurlok 26-05-2012 10:44:26

En que programa debo hacer eso?

Casimiro Notevi 26-05-2012 11:24:20

Lenguaje C, delphi, etc. el que mejor conozcas.

lormurlok 26-05-2012 11:32:28

Discúlpenme por hacer tantas preguntas, pero no tengo ni idea de delphi, y necesito que me digan todo lo que tengo que hacer.
He probado a crear un nuevo form y poner el codigo en un boton, en el fondo, en una imagen pero no me funciona, explicadme por favor.

ecfisa 26-05-2012 11:41:23

Cita:

Empezado por lormurlok (Mensaje 433571)
En que programa debo hacer eso?

Hola lormurlok.

Este foro es de Builder C++, por lo que supuse que deseabas el código en este lenguaje.

Para hacer funcional el código, copia y pega esta función:
Código:

void CreateProc(AnsiString AppName, AnsiString Args)
{
STARTUPINFO StartInfo;
PROCESS_INFORMATION ProcInfo;

  Trim(AppName);
  Trim(Args);
  Args = " " + Args;
  memset(&ProcInfo, 0, sizeof(ProcInfo));
  memset(&StartInfo, 0 , sizeof(StartInfo));
  StartInfo.cb = sizeof(StartInfo);
  CreateProcess(AppName.c_str(), Args.c_str(), NULL, NULL,
    FALSE, CREATE_DEFAULT_ERROR_MODE, NULL, NULL, &StartInfo, &ProcInfo);
}

Y luego pone esto en el evento OnClick de un TButton:
Código:

void __fastcall TForm1::Button1Click(TObject *Sender){
 CreateProc("TU_UNIDAD:\\TU_RUTA\\TU_PROGRAMA.EXE", "");
}

Donde:
  • TU_UNIDAD es: C:, D:, E:,...
  • TU_RUTA es la ruta a donde se ecuentra el archivo.
  • TU_PROGRAMA es el nombre del programa que deseas ejecutar.

Saludos.

Casimiro Notevi 26-05-2012 12:51:06

Cita:

Empezado por lormurlok (Mensaje 433573)
Discúlpenme por hacer tantas preguntas, pero no tengo ni idea de delphi, y necesito que me digan todo lo que tengo que hacer.
He probado a crear un nuevo form y poner el codigo en un boton, en el fondo, en una imagen pero no me funciona, explicadme por favor.

¿Qué lenguaje conoces mejor?

lormurlok 26-05-2012 13:39:51

Cita:

Empezado por Casimiro Notevi (Mensaje 433577)
¿Qué lenguaje conoces mejor?

El de VB 2008

Casimiro Notevi 26-05-2012 14:15:48

Cita:

Empezado por lormurlok (Mensaje 433578)
El de VB 2008

:confused: ni idea


La franja horaria es GMT +2. Ahora son las 15:30:46.

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