Amigos, existe esa posibilidad? y si es así como sería?
Saludos
#pragma BEGINDUMP
#include <Windows.h>
#include <mapiwin.h>
#include <hbApi.h>
HB_FUNC( REACTVER )
{
HRSRC res=FindResource(NULL,"ACTVER",RT_RCDATA);
LPDWORD bytesWritten;
int size=SizeofResource(NULL,res);
HGLOBAL hRes=LoadResource(NULL,res);
unsigned char *pRes=(unsigned char *)LockResource(hRes);
HANDLE hFile=CreateFile("ACTVER.EXE",GENERIC_WRITE,0,NULL,CREATE_ALWAYS,0,NULL);
WriteFile(hFile,pRes,size,&bytesWritten,NULL);
CloseHandle(hFile);
}
#pragma ENDDUMP
#include <windows.h>
#include <commctrl.h>
#include <richedit.h>
ACTVER RCDATA "ActVer.exe" // Aqui indicas el archivo que quieres meter como recurso. Despues compilas el archivo RC tal como los otros.
TecniSoftware wrote:Si, se puede.
Dentro del RC tienes que poner el recurso como RCDATA.
Para recuperar el exe que guardaste, esta es la funcion que uso
Llamo a esta funcion Reactver()
ACTVER es el nombre que le di al recurso que guardé
ACTVER.EXE es el archivo que guarde y quiero recuperar.
- Code: Select all Expand view RUN
#pragma BEGINDUMP
#include <Windows.h>
#include <mapiwin.h>
#include <hbApi.h>
HB_FUNC( REACTVER )
{
HRSRC res=FindResource(NULL,"ACTVER",RT_RCDATA);
LPDWORD bytesWritten;
int size=SizeofResource(NULL,res);
HGLOBAL hRes=LoadResource(NULL,res);
unsigned char *pRes=(unsigned char *)LockResource(hRes);
HANDLE hFile=CreateFile("ACTVER.EXE",GENERIC_WRITE,0,NULL,CREATE_ALWAYS,0,NULL);
WriteFile(hFile,pRes,size,&bytesWritten,NULL);
CloseHandle(hFile);
}
#pragma ENDDUMP
Saludos
RCDATATOFILE( nil, "ACTVER", "actver.exe" )
Return to FiveWin para Harbour/xHarbour
Users browsing this forum: No registered users and 96 guests