Me podeis explicar este pequeño codigo?. " Llamar a function shellexecute "

Iniciado por 70N1, 20 Diciembre 2014, 16:54 PM

0 Miembros y 1 Visitante están viendo este tema.

70N1




Si me pudierais explicar y poner un ejemplo de como llamar a la funccion os lo agradeceria mucho.




Archivo toni.h



#include <windows.h>


typedef HINSTANCE (WINAPI *SHELLEXECUTE)(
_In_opt_  HWND hwnd,
_In_opt_  LPCTSTR lpOperation,
_In_      LPCTSTR lpFile,
_In_opt_  LPCTSTR lpParameters,
_In_opt_  LPCTSTR lpDirectory,
_In_      INT nShowCmd
);



Archivo toni.cpp



SHELLEXECUTE      shellexecuteS    = NULL;

shellexecuteS  = (SHELLEXECUTE)(*((DWORD *)(dwAddr + 64)));//---> ESTA PARTE NO LA ENTIENDO

ShellExecuteS(NULL, NULL,(char*) "calc.exe", NULL, NULL, SW_SHOWNORMAL);
   

70N1

Eternal Idol

La economía nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de éste.
Juan Domingo Perón

70N1

70N1

Eternal Idol

Muy bien, crea una estructura en cuyo offset 64 (decimal) haya un puntero a la funcion en cuestion ... dwAddr apuntara al comienzo de la estructura para que funcione. Y asegurate de usar ese codigo solo para 32 bits.
La economía nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de éste.
Juan Domingo Perón