FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Guardar ejecutable como recurso en Pelles-C
Posts: 1364
Joined: Wed Jun 21, 2006 12:39 AM
Guardar ejecutable como recurso en Pelles-C
Posted: Fri Mar 06, 2020 02:12 PM

Amigos, existe esa posibilidad? y si es así como sería?

Saludos

Posts: 8515
Joined: Tue Dec 20, 2005 07:36 PM
Re: Guardar ejecutable como recurso en Pelle-C
Posted: Fri Mar 06, 2020 03:25 PM

Horácio,

No entiendo. ¿Cuál es la razón de esto? ¿Qué quieres con esto? Explícalo mejor porque no tiene sentido. Aunque no entendí tu pregunta.

Saludos.

João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
Posts: 244
Joined: Fri Oct 28, 2005 06:29 PM
Re: Guardar ejecutable como recurso en Pelle-C
Posted: Fri Mar 06, 2020 04:38 PM
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 (fw): Select all Collapse
#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
Alejandro Cebolido

Buenos Aires, Argentina
Posts: 1364
Joined: Wed Jun 21, 2006 12:39 AM
Re: Guardar ejecutable como recurso en Pelle-C
Posted: Fri Mar 06, 2020 09:57 PM

Gracias Alejandro, es lo que necesito pero no encuentro RCDATA en Pelles-C. Debo crearlo?

Muchas Gracias
Saludos

Posts: 244
Joined: Fri Oct 28, 2005 06:29 PM
Re: Guardar ejecutable como recurso en Pelles-C
Posted: Sun Mar 08, 2020 06:41 PM
Te paso el contenido del archivo .RC que utilizo:

Code (fw): Select all Collapse
#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.


Saludos
Alejandro Cebolido

Buenos Aires, Argentina
Posts: 10733
Joined: Sun Nov 19, 2006 05:22 AM
Re: Guardar ejecutable como recurso en Pelle-C
Posted: Sun Mar 08, 2020 08:01 PM
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 (fw): Select all Collapse
#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



Can we not use the FWH built-in function
Code (fw): Select all Collapse
RCDATATOFILE( nil, "ACTVER", "actver.exe" )
Regards



G. N. Rao.

Hyderabad, India

Continue the discussion