Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   C++ Builder (https://www.clubdelphi.com/foros/forumdisplay.php?f=13)
-   -   Extraer Archivo de los recursos (https://www.clubdelphi.com/foros/showthread.php?t=84510)

odiseeus 28-10-2013 06:07:55

Extraer Archivo de los recursos
 
Buen día a todos,

para hacer mas portable mi aplicación, requiero sacar un archivo que servirá para llevar ciertos registros, específicamente un archivo .mdb, esta en los recursos (no lo ingreso por código pero si me ayudarán con ese aspecto sería bueno), lo integro al programa por medio de Proyecto>Recursos e imágenes... Adicionar, pero no encuentro en la red una manera de sacarlo de ahí por código en C++ (XE2), les agradecería.

Identificador del recurso: DataB
Recurso tipo: RCDATA

Adicionalmente como se configura para usar un archivo de fuente de letras (Recurso tipo: FONT) en el programa, sé que es mucho pedir... pero Gracias :)

ecfisa 29-10-2013 14:41:53

Cita:

Empezado por odiseeus (Mensaje 469003)
...
Adicionalmente como se configura para usar un archivo de fuente de letras (Recurso tipo: FONT) en el programa, sé que es mucho pedir... pero Gracias :)

Hola odiseus.

Ejemplo, archivo FONT.RC :
Cita:

MFONT CORBEL "C:\WINDOWS\FONTS\CORBEL.TTF"
Generar .RES:
Cita:

brc32 -r -v FONT.RC
Código:

...
#pragma resource "FONT.RES" // ó "C:\\UBICACION_DEL_RES\\FONT.RES"

TFont *GlobalFont;

// Cargar font
void __fastcall TForm1::FormCreate(TObject *Sender)
{
  TResourceStream *res = new TResourceStream((int)HInstance, "MFONT", "CORBEL");
  if (AddFontResource("CORBEL.TTF")==0)
    MessageBox(Handle,"Error al cargar el font","",MB_ICONERROR);
  else {
    SendMessage(HWND_BROADCAST, WM_FONTCHANGE, 0, 0);
    GlobalFont = new TFont;
    GlobalFont->Charset = SYMBOL_CHARSET;
    GlobalFont->Name    = "corbel";
  }
  delete res;
}

// Uso:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
  Edit1->Font->Assign(GlobalFont);
  Edit1->Font->Size = 14;
}

void __fastcall TForm1::FormDestroy(TObject *Sender)
{
  delete GlobalFont;
}

Saludos :)


La franja horaria es GMT +2. Ahora son las 19:09:06.

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