Agregar Recursos dentro Lib

User avatar
cuatecatl82
Posts: 614
Joined: Wed Mar 14, 2007 6:49 pm
Location: San Cristobal de las Casas, Chiapas México
Contact:

Agregar Recursos dentro Lib

Post by cuatecatl82 »

Buenos Dias:

Tengo esta duda, es posible posible agregar recursos como bitmaps, iconos o cursores dentro de una lib mediante alguna función, algo así como lo fivewin hace al llamar FWBitmap() que dibuja un bitmap, para incrustarlos dentro de una lib y ser llamados desde un codigo fuente, como se podria hacer..?

MiBitmap() --> Esta dentro de mi lib
MiCursor() --> Esta dentro de mi lib
MiIcono() --> Esta dentro de mi lib

Saludos.. :wink: :P :P
Soluciones y Diseño de Software
Damos Soluciones...

I.S.C. Victor Daniel Cuatecatl Leon
Director y Diseñador de Proyectos

http://www.soldisoft.unlugar.com
http://www.sisa.unlugar.com
danyleon82@hotmail.com
www.facebook.com/victordaniel.cuatecatlleon
User avatar
SoftWeb
Posts: 11
Joined: Fri Jun 10, 2011 9:02 am
Location: Cadiz, España
Contact:

Re: Agregar Recursos dentro Lib

Post by SoftWeb »

Hola cuatecatl82:

Creo que la única forma seria guardarlo como un buffer dentro de una función, por ejemplo:

Code: Select all

unsigned char buffer[]={56,50,51,44,39,36,75,67,90,1,85,13,4,5,84,46,28,5,15,24,3,10,'\0'};
 
Claro que seria mas grande, dependiendo del recurso.
Para crear el código hay algunas utilidades en dos que te pasan un archivo binario a codigo.
La función debería convertir el puntero del buffer a un puntero reconocible como recurso para poder usarlo. que es donde tendría trabajo la cosa.

Solo te puedo dar esta "ideas" lo siento.

Saludos
Fernando Santiago
SoftWeb S.L.
User avatar
cuatecatl82
Posts: 614
Joined: Wed Mar 14, 2007 6:49 pm
Location: San Cristobal de las Casas, Chiapas México
Contact:

Re: Agregar Recursos dentro Lib

Post by cuatecatl82 »

Hola Fernando:

Es algo complicado este asunto, pero es posible hacerlo, todo esta basado en punteros en C, voy a seguir investigando, con lo que me comentaste me das una idea..


Maestro Antonio, Porfa una mano... :wink: :wink: :roll:

Saludos.. y Gracias..
Soluciones y Diseño de Software
Damos Soluciones...

I.S.C. Victor Daniel Cuatecatl Leon
Director y Diseñador de Proyectos

http://www.soldisoft.unlugar.com
http://www.sisa.unlugar.com
danyleon82@hotmail.com
www.facebook.com/victordaniel.cuatecatlleon
User avatar
Daniel Garcia-Gil
Posts: 2365
Joined: Wed Nov 02, 2005 11:46 pm
Location: Isla de Margarita
Contact:

Re: Agregar Recursos dentro Lib

Post by Daniel Garcia-Gil »

Saludos Daniel

El asunto no es tan complicado como parece, y fivewin te brinda la forma de hacerlo... todo esta en armar el array de bytes de la imagen y despues usar la funcione que fivewin te brinda para crear desde memoria los bitmaps

te dejo un ejemplo, tome el bitmap de bitmaps/32x32/floppy.bmp
para crear el array de bytes use ultraedit, abro la imagen con el editor copio el texto hexadecimal y le agrego "0x".... ( es muy rapido usando find/replace )

nota importante, no se te olvide liberar el handle una vez que no lo uses mas (DeleteObject)

Code: Select all


#include "fivewin.ch"


function main()

   local hBmp := MEMFLOPPY()
   local oWnd 
    
   define window oWnd
   activate window oWnd;
            on paint DrawBitmap( hDC, hBmp, 0,0 )

   DeleteObject( hBmp ) 

return nil

#pragma BEGINDUMP
#include <windows.h>
#include <hbapi.h>

HBITMAP CreateMemBitmap( HDC, LPSTR ); 

BYTE floppy [] = {
0x42, 0x4D, 0x36, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x36, 0x00, 0x00, 0x00, 0x28, 0x00,
0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x01, 0x00, 0x20, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFA, 0xF1, 0xEC, 0x19, 0xBF, 0x75, 0x48, 0xC0, 0xA3, 0x41,
0x08, 0xFF, 0x9F, 0x3B, 0x08, 0xFF, 0x9A, 0x35, 0x04, 0xFF, 0x72, 0x76, 0x78, 0xFF, 0x8F, 0x8C,
0x8A, 0xFF, 0x93, 0x90, 0x91, 0xFF, 0x98, 0x96, 0x96, 0xFF, 0x9D, 0x9A, 0x9B, 0xFF, 0xA1, 0x9F,
0x9F, 0xFF, 0xA4, 0xA0, 0x9E, 0xFF, 0x9C, 0x98, 0x96, 0xFF, 0x94, 0x90, 0x8E, 0xFF, 0x8D, 0x88,
0x86, 0xFF, 0x84, 0x80, 0x7D, 0xFF, 0x7B, 0x77, 0x76, 0xFF, 0x73, 0x73, 0x72, 0xFF, 0x64, 0x34,
0x1F, 0xFF, 0x9E, 0x36, 0x04, 0xFF, 0x9A, 0x36, 0x07, 0xFF, 0x9A, 0x35, 0x07, 0xFF, 0x9A, 0x34,
0x05, 0xFF, 0x9E, 0x3E, 0x11, 0xF6, 0xC5, 0x8D, 0x71, 0x96, 0xFD, 0xFB, 0xFA, 0x07, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF,
0xFF, 0x00, 0xFB, 0xF2, 0xEB, 0x17, 0xBD, 0x67, 0x29, 0xD6, 0xB8, 0x5E, 0x13, 0xFF, 0xCA, 0x7D,
0x2C, 0xFF, 0xCA, 0x7C, 0x2B, 0xFF, 0xC8, 0x79, 0x27, 0xFF, 0x87, 0x8E, 0x95, 0xFF, 0xC0, 0xBC,
0xB7, 0xFF, 0xCE, 0xB6, 0x9B, 0xFF, 0xD7, 0xC2, 0xA9, 0xFF, 0xE2, 0xCC, 0xB4, 0xFF, 0xED, 0xD6,
0xB8, 0xFF, 0xFE, 0xFE, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF7, 0xF7, 0xF8, 0xFF, 0xEA, 0xEA,
0xEB, 0xFF, 0xDC, 0xDC, 0xDD, 0xFF, 0xCF, 0xCF, 0xCF, 0xFF, 0xC5, 0xC9, 0xCD, 0xFF, 0x7C, 0x5C,
0x34, 0xFF, 0xDE, 0x94, 0x36, 0xFF, 0xD8, 0x91, 0x38, 0xFF, 0xD9, 0x92, 0x37, 0xFF, 0xE1, 0xA7,
0x59, 0xFF, 0xDA, 0x94, 0x3A, 0xFF, 0xA9, 0x49, 0x0B, 0xFF, 0xC9, 0x93, 0x7A, 0x93, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFB, 0xF1,
0xE7, 0x20, 0xC5, 0x6F, 0x2B, 0xD4, 0xBC, 0x62, 0x14, 0xFF, 0xC6, 0x78, 0x2A, 0xFF, 0xC6, 0x76,
0x27, 0xFF, 0xC6, 0x75, 0x28, 0xFF, 0xC6, 0x75, 0x25, 0xFF, 0x80, 0x88, 0x91, 0xFF, 0xB1, 0xA0,
0x90, 0xFF, 0xCC, 0x75, 0x1A, 0xFF, 0xCB, 0x7B, 0x24, 0xFF, 0xCF, 0x80, 0x27, 0xFF, 0xD4, 0x82,
0x1E, 0xFF, 0xE6, 0xE6, 0xE3, 0xFF, 0xF4, 0xF5, 0xF6, 0xFF, 0xFD, 0xFD, 0xFD, 0xFF, 0xF1, 0xF1,
0xF1, 0xFF, 0xE3, 0xE3, 0xE3, 0xFF, 0xD6, 0xD6, 0xD6, 0xFF, 0xCE, 0xD2, 0xD5, 0xFF, 0x7C, 0x5A,
0x34, 0xFF, 0xDA, 0x8D, 0x33, 0xFF, 0xD3, 0x8A, 0x34, 0xFF, 0xD4, 0x8A, 0x30, 0xFF, 0xE8, 0xBE,
0x8C, 0xFF, 0xD9, 0x93, 0x3C, 0xFF, 0xD7, 0x8F, 0x36, 0xFF, 0xA2, 0x46, 0x1E, 0xED, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xCC, 0x78,
0x2C, 0xE2, 0xBF, 0x65, 0x13, 0xFF, 0xC3, 0x74, 0x28, 0xFF, 0xC3, 0x73, 0x27, 0xFF, 0xC3, 0x72,
0x26, 0xFF, 0xC3, 0x73, 0x26, 0xFF, 0xC4, 0x71, 0x23, 0xFF, 0x84, 0x8C, 0x94, 0xFF, 0xA5, 0x94,
0x84, 0xFF, 0xC1, 0x6A, 0x1A, 0xFF, 0xC2, 0x71, 0x25, 0xFF, 0xC7, 0x78, 0x2A, 0xFF, 0xCD, 0x7B,
0x21, 0xFF, 0xDA, 0xD9, 0xD7, 0xFF, 0xE6, 0xE6, 0xE7, 0xFF, 0xF4, 0xF4, 0xF4, 0xFF, 0xFD, 0xFD,
0xFD, 0xFF, 0xF2, 0xF2, 0xF2, 0xFF, 0xE4, 0xE4, 0xE4, 0xFF, 0xDC, 0xDF, 0xE3, 0xFF, 0x7C, 0x5A,
0x34, 0xFF, 0xD8, 0x8A, 0x32, 0xFF, 0xD2, 0x88, 0x33, 0xFF, 0xD3, 0x87, 0x2E, 0xFF, 0xE6, 0xBC,
0x87, 0xFF, 0xD7, 0x91, 0x39, 0xFF, 0xD9, 0x92, 0x38, 0xFF, 0x9E, 0x3D, 0x13, 0xFF, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xCB, 0x6D,
0x15, 0xFF, 0xC1, 0x6F, 0x25, 0xFF, 0xC1, 0x70, 0x25, 0xFF, 0xC1, 0x6F, 0x24, 0xFF, 0xC1, 0x70,
0x24, 0xFF, 0xC3, 0x70, 0x25, 0xFF, 0xC0, 0x6E, 0x21, 0xFF, 0x92, 0x9A, 0xA2, 0xFF, 0xA9, 0x98,
0x8B, 0xFF, 0xB9, 0x5C, 0x12, 0xFF, 0xBA, 0x65, 0x1E, 0xFF, 0xC0, 0x6D, 0x23, 0xFF, 0xC7, 0x72,
0x1C, 0xFF, 0xCE, 0xCD, 0xCB, 0xFF, 0xDA, 0xDB, 0xDC, 0xFF, 0xE6, 0xE6, 0xE6, 0xFF, 0xF3, 0xF3,
0xF3, 0xFF, 0xFD, 0xFD, 0xFD, 0xFF, 0xF2, 0xF2, 0xF2, 0xFF, 0xEC, 0xEF, 0xF3, 0xFF, 0x7D, 0x5A,
0x36, 0xFF, 0xD5, 0x88, 0x30, 0xFF, 0xD1, 0x87, 0x32, 0xFF, 0xD2, 0x85, 0x2D, 0xFF, 0xE5, 0xB9,
0x86, 0xFF, 0xD6, 0x8E, 0x38, 0xFF, 0xD8, 0x8F, 0x36, 0xFF, 0x9D, 0x3D, 0x13, 0xFF, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xD0, 0x72,
0x15, 0xFF, 0xBF, 0x6B, 0x21, 0xFF, 0xBF, 0x6C, 0x22, 0xFF, 0xBF, 0x6D, 0x23, 0xFF, 0xBF, 0x6D,
0x23, 0xFF, 0xC0, 0x6E, 0x23, 0xFF, 0xBF, 0x6C, 0x1F, 0xFF, 0x9D, 0xA5, 0xAD, 0xFF, 0xB3, 0xA0,
0x94, 0xFF, 0xAE, 0x4B, 0x08, 0xFF, 0xB3, 0x5A, 0x17, 0xFF, 0xBA, 0x64, 0x1E, 0xFF, 0xC3, 0x6B,
0x19, 0xFF, 0xC1, 0xC0, 0xBF, 0xFF, 0xCD, 0xCE, 0xCF, 0xFF, 0xD9, 0xD9, 0xD9, 0xFF, 0xE5, 0xE5,
0xE5, 0xFF, 0xF3, 0xF3, 0xF3, 0xFF, 0xFD, 0xFD, 0xFD, 0xFF, 0xFA, 0xFE, 0xFF, 0xFF, 0x7D, 0x5A,
0x35, 0xFF, 0xD4, 0x86, 0x2F, 0xFF, 0xCF, 0x85, 0x31, 0xFF, 0xD1, 0x84, 0x2C, 0xFF, 0xE4, 0xB8,
0x87, 0xFF, 0xD5, 0x8C, 0x37, 0xFF, 0xD5, 0x8E, 0x35, 0xFF, 0x9D, 0x3D, 0x13, 0xFF, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xD3, 0x74,
0x15, 0xFF, 0xBE, 0x69, 0x20, 0xFF, 0xBD, 0x6A, 0x22, 0xFF, 0xBD, 0x6A, 0x21, 0xFF, 0xBE, 0x6A,
0x21, 0xFF, 0xBE, 0x6B, 0x22, 0xFF, 0xBD, 0x68, 0x1E, 0xFF, 0xA8, 0xB1, 0xB9, 0xFF, 0xBC, 0xA9,
0x9E, 0xFF, 0xA2, 0x3B, 0x00, 0xFF, 0xAD, 0x4F, 0x11, 0xFF, 0xB6, 0x5E, 0x19, 0xFF, 0xC1, 0x66,
0x16, 0xFF, 0xB5, 0xB1, 0xB0, 0xFF, 0xBF, 0xBF, 0xC0, 0xFF, 0xCC, 0xCC, 0xCC, 0xFF, 0xD8, 0xD8,
0xD8, 0xFF, 0xE5, 0xE5, 0xE5, 0xFF, 0xF2, 0xF2, 0xF2, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x7E, 0x5C,
0x36, 0xFF, 0xD3, 0x83, 0x2E, 0xFF, 0xCE, 0x83, 0x30, 0xFF, 0xCE, 0x82, 0x2B, 0xFF, 0xE3, 0xB8,
0x86, 0xFF, 0xD4, 0x8A, 0x36, 0xFF, 0xD4, 0x8C, 0x34, 0xFF, 0x9E, 0x3D, 0x13, 0xFF, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xD2, 0x73,
0x15, 0xFF, 0xBB, 0x67, 0x1D, 0xFF, 0xBB, 0x67, 0x1F, 0xFF, 0xBC, 0x67, 0x1F, 0xFF, 0xBC, 0x68,
0x20, 0xFF, 0xBC, 0x69, 0x20, 0xFF, 0xB9, 0x66, 0x1A, 0xFF, 0xB0, 0xB9, 0xC1, 0xFF, 0xC6, 0xB2,
0xA8, 0xFF, 0x9F, 0x3D, 0x05, 0xFF, 0xAB, 0x52, 0x18, 0xFF, 0xB3, 0x5F, 0x1F, 0xFF, 0xBC, 0x69,
0x1E, 0xFF, 0xA6, 0xA5, 0xA1, 0xFF, 0xB2, 0xB3, 0xB4, 0xFF, 0xC0, 0xC0, 0xC0, 0xFF, 0xCB, 0xCB,
0xCB, 0xFF, 0xD9, 0xD9, 0xD9, 0xFF, 0xE5, 0xE5, 0xE5, 0xFF, 0xFA, 0xFE, 0xFF, 0xFF, 0x80, 0x5C,
0x38, 0xFF, 0xD5, 0x83, 0x2E, 0xFF, 0xD0, 0x83, 0x2F, 0xFF, 0xCF, 0x82, 0x2B, 0xFF, 0xE5, 0xB8,
0x88, 0xFF, 0xD2, 0x8A, 0x36, 0xFF, 0xD3, 0x8B, 0x33, 0xFF, 0x9E, 0x3D, 0x13, 0xFF, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xD2, 0x73,
0x15, 0xFF, 0xBB, 0x65, 0x1C, 0xFF, 0xBA, 0x65, 0x1F, 0xFF, 0xBA, 0x65, 0x1E, 0xFF, 0xBA, 0x66,
0x1E, 0xFF, 0xBC, 0x66, 0x1F, 0xFF, 0xB8, 0x62, 0x1A, 0xFF, 0xBB, 0xC6, 0xCF, 0xFF, 0xE4, 0xEB,
0xEF, 0xFF, 0xD3, 0xDE, 0xE5, 0xFF, 0xC5, 0xD0, 0xD8, 0xFF, 0xB3, 0xBE, 0xC7, 0xFF, 0xA5, 0xAE,
0xB7, 0xFF, 0x9A, 0x9E, 0xA3, 0xFF, 0xA4, 0xA7, 0xAA, 0xFF, 0xB3, 0xB7, 0xBA, 0xFF, 0xC0, 0xC3,
0xC6, 0xFF, 0xCF, 0xD2, 0xD6, 0xFF, 0xDC, 0xDF, 0xE3, 0xFF, 0xF1, 0xF7, 0xFE, 0xFF, 0x71, 0x55,
0x37, 0xFF, 0xB3, 0x6D, 0x25, 0xFF, 0xB0, 0x6F, 0x28, 0xFF, 0xAF, 0x6E, 0x26, 0xFF, 0xD7, 0x9F,
0x60, 0xFF, 0xD1, 0x88, 0x33, 0xFF, 0xD2, 0x89, 0x32, 0xFF, 0x9E, 0x3D, 0x13, 0xFF, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xD2, 0x74,
0x14, 0xFF, 0xB8, 0x61, 0x1C, 0xFF, 0xB8, 0x62, 0x1C, 0xFF, 0xB8, 0x63, 0x1C, 0xFF, 0xB9, 0x63,
0x1D, 0xFF, 0xB9, 0x64, 0x1D, 0xFF, 0xBA, 0x64, 0x1D, 0xFF, 0x9A, 0x76, 0x5A, 0xFF, 0xA0, 0x7A,
0x5A, 0xFF, 0xA5, 0x7E, 0x5C, 0xFF, 0xA5, 0x7F, 0x5F, 0xFF, 0xA2, 0x7E, 0x5C, 0xFF, 0xA0, 0x7B,
0x59, 0xFF, 0x9C, 0x77, 0x55, 0xFF, 0x98, 0x72, 0x4F, 0xFF, 0x91, 0x6D, 0x4B, 0xFF, 0x8F, 0x69,
0x46, 0xFF, 0x88, 0x63, 0x41, 0xFF, 0x83, 0x60, 0x3D, 0xFF, 0x7F, 0x5D, 0x3B, 0xFF, 0x91, 0x60,
0x2E, 0xFF, 0xAA, 0x68, 0x24, 0xFF, 0xA8, 0x69, 0x26, 0xFF, 0xA7, 0x69, 0x26, 0xFF, 0xCA, 0x7F,
0x2C, 0xFF, 0xCF, 0x84, 0x31, 0xFF, 0xD1, 0x88, 0x32, 0xFF, 0x9E, 0x3E, 0x13, 0xFF, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xD3, 0x74,
0x14, 0xFF, 0xB5, 0x60, 0x19, 0xFF, 0xB6, 0x60, 0x1C, 0xFF, 0xB7, 0x60, 0x1B, 0xFF, 0xB7, 0x61,
0x1B, 0xFF, 0xB8, 0x61, 0x1C, 0xFF, 0xB9, 0x62, 0x1C, 0xFF, 0xBC, 0x63, 0x1A, 0xFF, 0xBB, 0x63,
0x18, 0xFF, 0xBC, 0x63, 0x19, 0xFF, 0xBE, 0x64, 0x1A, 0xFF, 0xBF, 0x67, 0x1B, 0xFF, 0xC0, 0x68,
0x1D, 0xFF, 0xC1, 0x6B, 0x1F, 0xFF, 0xC3, 0x6D, 0x20, 0xFF, 0xC4, 0x6E, 0x21, 0xFF, 0xC7, 0x70,
0x22, 0xFF, 0xC8, 0x73, 0x24, 0xFF, 0xCA, 0x76, 0x25, 0xFF, 0xCB, 0x78, 0x27, 0xFF, 0xCC, 0x7A,
0x29, 0xFF, 0xCB, 0x7C, 0x2B, 0xFF, 0xCD, 0x7E, 0x2C, 0xFF, 0xCE, 0x80, 0x2D, 0xFF, 0xCD, 0x81,
0x2E, 0xFF, 0xCE, 0x84, 0x30, 0xFF, 0xD0, 0x86, 0x30, 0xFF, 0x9E, 0x3E, 0x13, 0xFF, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xD3, 0x74,
0x14, 0xFF, 0xB5, 0x5C, 0x19, 0xFF, 0xB5, 0x5D, 0x19, 0xFF, 0xB5, 0x5D, 0x19, 0xFF, 0xB5, 0x5E,
0x1A, 0xFF, 0xB6, 0x5F, 0x1A, 0xFF, 0xB6, 0x60, 0x1B, 0xFF, 0xB7, 0x61, 0x1B, 0xFF, 0xB8, 0x62,
0x1C, 0xFF, 0xB9, 0x63, 0x1D, 0xFF, 0xBA, 0x64, 0x1E, 0xFF, 0xBB, 0x66, 0x1E, 0xFF, 0xBB, 0x67,
0x1F, 0xFF, 0xBD, 0x69, 0x20, 0xFF, 0xBE, 0x6B, 0x21, 0xFF, 0xBF, 0x6C, 0x22, 0xFF, 0xC0, 0x6E,
0x24, 0xFF, 0xC2, 0x70, 0x25, 0xFF, 0xC3, 0x72, 0x26, 0xFF, 0xC4, 0x74, 0x27, 0xFF, 0xC6, 0x76,
0x28, 0xFF, 0xC7, 0x78, 0x2A, 0xFF, 0xC8, 0x7A, 0x2B, 0xFF, 0xCA, 0x7D, 0x2C, 0xFF, 0xCB, 0x7F,
0x2D, 0xFF, 0xCD, 0x81, 0x2F, 0xFF, 0xD1, 0x85, 0x31, 0xFF, 0x9E, 0x3E, 0x13, 0xFF, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xD3, 0x75,
0x14, 0xFF, 0xB2, 0x5A, 0x16, 0xFF, 0xB3, 0x5A, 0x19, 0xFF, 0xB3, 0x5B, 0x18, 0xFF, 0xB4, 0x5B,
0x15, 0xFF, 0xB4, 0x58, 0x12, 0xFF, 0xB5, 0x58, 0x10, 0xFF, 0xB7, 0x59, 0x11, 0xFF, 0xB6, 0x5C,
0x13, 0xFF, 0xB7, 0x5D, 0x12, 0xFF, 0xB8, 0x5E, 0x13, 0xFF, 0xBA, 0x61, 0x14, 0xFF, 0xBB, 0x61,
0x16, 0xFF, 0xBC, 0x64, 0x17, 0xFF, 0xBD, 0x66, 0x18, 0xFF, 0xC0, 0x68, 0x19, 0xFF, 0xC1, 0x69,
0x1A, 0xFF, 0xC2, 0x6B, 0x1D, 0xFF, 0xC5, 0x6D, 0x1E, 0xFF, 0xC5, 0x71, 0x1F, 0xFF, 0xC8, 0x73,
0x20, 0xFF, 0xC9, 0x76, 0x23, 0xFF, 0xCA, 0x78, 0x24, 0xFF, 0xCB, 0x7B, 0x28, 0xFF, 0xCA, 0x7D,
0x2D, 0xFF, 0xCC, 0x81, 0x2E, 0xFF, 0xCF, 0x84, 0x2F, 0xFF, 0x9E, 0x3E, 0x13, 0xFF, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xD3, 0x75,
0x14, 0xFF, 0xB0, 0x56, 0x15, 0xFF, 0xB1, 0x58, 0x16, 0xFF, 0xB2, 0x57, 0x13, 0xFF, 0xB1, 0x6F,
0x3E, 0xFF, 0xAF, 0x97, 0x84, 0xFF, 0xAD, 0x92, 0x7E, 0xFF, 0xAE, 0x93, 0x7D, 0xFF, 0xAE, 0x93,
0x7D, 0xFF, 0xAE, 0x94, 0x7F, 0xFF, 0xAE, 0x94, 0x7E, 0xFF, 0xAE, 0x94, 0x7C, 0xFF, 0xAE, 0x93,
0x7C, 0xFF, 0xAE, 0x93, 0x7D, 0xFF, 0xAD, 0x94, 0x7B, 0xFF, 0xAD, 0x92, 0x7C, 0xFF, 0xAC, 0x93,
0x7A, 0xFF, 0xAA, 0x91, 0x79, 0xFF, 0xAB, 0x91, 0x7A, 0xFF, 0xA9, 0x8F, 0x78, 0xFF, 0xA8, 0x90,
0x77, 0xFF, 0xA8, 0x8F, 0x76, 0xFF, 0xA7, 0x8F, 0x7B, 0xFF, 0xB9, 0x84, 0x4F, 0xFF, 0xCC, 0x7C,
0x29, 0xFF, 0xCB, 0x7E, 0x2D, 0xFF, 0xCE, 0x83, 0x2E, 0xFF, 0x9E, 0x3E, 0x14, 0xFF, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xD3, 0x75,
0x14, 0xFF, 0xB0, 0x55, 0x13, 0xFF, 0xB0, 0x55, 0x16, 0xFF, 0xB0, 0x54, 0x11, 0xFF, 0xB0, 0x78,
0x51, 0xFF, 0xBF, 0xC8, 0xCD, 0xFF, 0xD7, 0xD9, 0xDC, 0xFF, 0xD6, 0xD9, 0xDB, 0xFF, 0xD8, 0xDA,
0xDC, 0xFF, 0xD7, 0xDA, 0xDC, 0xFF, 0xD7, 0xD9, 0xDB, 0xFF, 0xD8, 0xDA, 0xDC, 0xFF, 0xD6, 0xD8,
0xDA, 0xFF, 0xD5, 0xD7, 0xD9, 0xFF, 0xD4, 0xD7, 0xD9, 0xFF, 0xD1, 0xD4, 0xD6, 0xFF, 0xCF, 0xD2,
0xD4, 0xFF, 0xCD, 0xD0, 0xD2, 0xFF, 0xCB, 0xCD, 0xD0, 0xFF, 0xC9, 0xCB, 0xCE, 0xFF, 0xC7, 0xC9,
0xCC, 0xFF, 0xC7, 0xCA, 0xCC, 0xFF, 0xAF, 0xB4, 0xBB, 0xFF, 0xB1, 0x8A, 0x61, 0xFF, 0xCB, 0x7A,
0x27, 0xFF, 0xCA, 0x7D, 0x2C, 0xFF, 0xCC, 0x80, 0x2D, 0xFF, 0x9E, 0x3E, 0x14, 0xFF, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xD3, 0x75,
0x14, 0xFF, 0xAC, 0x51, 0x12, 0xFF, 0xAE, 0x53, 0x13, 0xFF, 0xAE, 0x50, 0x0E, 0xFF, 0xAF, 0x76,
0x4E, 0xFF, 0xC8, 0xCE, 0xD1, 0xFF, 0xE9, 0xE9, 0xE9, 0xFF, 0xE9, 0xE9, 0xE9, 0xFF, 0xE9, 0xE9,
0xE9, 0xFF, 0xEB, 0xEB, 0xEB, 0xFF, 0xEC, 0xEC, 0xEC, 0xFF, 0xED, 0xED, 0xED, 0xFF, 0xEB, 0xEB,
0xEB, 0xFF, 0xEA, 0xEA, 0xEA, 0xFF, 0xE9, 0xE9, 0xE9, 0xFF, 0xE7, 0xE7, 0xE7, 0xFF, 0xE4, 0xE4,
0xE4, 0xFF, 0xE2, 0xE2, 0xE2, 0xFF, 0xE0, 0xE0, 0xE0, 0xFF, 0xDD, 0xDD, 0xDD, 0xFF, 0xDA, 0xDA,
0xDA, 0xFF, 0xD9, 0xD9, 0xD9, 0xFF, 0xBA, 0xBD, 0xC1, 0xFF, 0xB0, 0x88, 0x5E, 0xFF, 0xCA, 0x7A,
0x25, 0xFF, 0xC9, 0x7C, 0x2D, 0xFF, 0xCB, 0x7F, 0x2E, 0xFF, 0x9E, 0x3F, 0x14, 0xFF, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xD3, 0x75,
0x14, 0xFF, 0xAC, 0x4E, 0x10, 0xFF, 0xAC, 0x50, 0x11, 0xFF, 0xAD, 0x4E, 0x0D, 0xFF, 0xAF, 0x76,
0x4D, 0xFF, 0xCB, 0xD0, 0xD4, 0xFF, 0xEB, 0xEB, 0xEB, 0xFF, 0xEA, 0xEA, 0xEA, 0xFF, 0xEE, 0xEE,
0xEE, 0xFF, 0xD2, 0xD2, 0xD2, 0xFF, 0xCE, 0xCE, 0xCE, 0xFF, 0xCE, 0xCE, 0xCE, 0xFF, 0xCE, 0xCE,
0xCE, 0xFF, 0xCE, 0xCE, 0xCE, 0xFF, 0xCE, 0xCE, 0xCE, 0xFF, 0xCF, 0xCF, 0xCF, 0xFF, 0xCD, 0xCD,
0xCD, 0xFF, 0xCE, 0xCE, 0xCE, 0xFF, 0xCD, 0xCD, 0xCD, 0xFF, 0xDC, 0xDC, 0xDC, 0xFF, 0xDA, 0xDA,
0xDA, 0xFF, 0xDA, 0xDA, 0xDA, 0xFF, 0xBA, 0xBD, 0xC1, 0xFF, 0xB0, 0x88, 0x60, 0xFF, 0xC9, 0x77,
0x26, 0xFF, 0xCA, 0x7B, 0x2B, 0xFF, 0xCC, 0x7E, 0x2C, 0xFF, 0x9E, 0x3F, 0x14, 0xFF, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xD3, 0x75,
0x14, 0xFF, 0xA9, 0x4D, 0x0F, 0xFF, 0xAB, 0x4E, 0x10, 0xFF, 0xAB, 0x4C, 0x0A, 0xFF, 0xAE, 0x75,
0x4D, 0xFF, 0xCE, 0xD4, 0xD7, 0xFF, 0xEE, 0xEE, 0xEE, 0xFF, 0xED, 0xED, 0xED, 0xFF, 0xF1, 0xF1,
0xF1, 0xFF, 0xCF, 0xCF, 0xCF, 0xFF, 0xC9, 0xC9, 0xC9, 0xFF, 0xCA, 0xCA, 0xCA, 0xFF, 0xCA, 0xCA,
0xCA, 0xFF, 0xCA, 0xCA, 0xCA, 0xFF, 0xCA, 0xCA, 0xCA, 0xFF, 0xCA, 0xCA, 0xCA, 0xFF, 0xCB, 0xCB,
0xCB, 0xFF, 0xCB, 0xCB, 0xCB, 0xFF, 0xCA, 0xCA, 0xCA, 0xFF, 0xDD, 0xDD, 0xDD, 0xFF, 0xDD, 0xDD,
0xDD, 0xFF, 0xDC, 0xDC, 0xDC, 0xFF, 0xBD, 0xC0, 0xC3, 0xFF, 0xB2, 0x88, 0x5F, 0xFF, 0xC8, 0x76,
0x24, 0xFF, 0xC8, 0x7A, 0x2A, 0xFF, 0xCA, 0x7D, 0x2D, 0xFF, 0x9E, 0x3F, 0x14, 0xFF, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xD3, 0x75,
0x14, 0xFF, 0xA7, 0x49, 0x0D, 0xFF, 0xA9, 0x4B, 0x0E, 0xFF, 0xA9, 0x49, 0x0A, 0xFF, 0xAE, 0x75,
0x4D, 0xFF, 0xD0, 0xD6, 0xD9, 0xFF, 0xF1, 0xF1, 0xF1, 0xFF, 0xF0, 0xF0, 0xF0, 0xFF, 0xF4, 0xF4,
0xF4, 0xFF, 0xEE, 0xEE, 0xEE, 0xFF, 0xEC, 0xEC, 0xEC, 0xFF, 0xED, 0xED, 0xED, 0xFF, 0xEB, 0xEB,
0xEB, 0xFF, 0xEA, 0xEA, 0xEA, 0xFF, 0xE8, 0xE8, 0xE8, 0xFF, 0xE6, 0xE6, 0xE6, 0xFF, 0xE5, 0xE5,
0xE5, 0xFF, 0xE1, 0xE1, 0xE1, 0xFF, 0xDF, 0xDF, 0xDF, 0xFF, 0xE1, 0xE1, 0xE1, 0xFF, 0xDD, 0xDD,
0xDD, 0xFF, 0xDD, 0xDD, 0xDD, 0xFF, 0xBD, 0xC1, 0xC4, 0xFF, 0xB1, 0x87, 0x5F, 0xFF, 0xC9, 0x75,
0x23, 0xFF, 0xC7, 0x79, 0x2B, 0xFF, 0xC9, 0x7E, 0x2B, 0xFF, 0x9E, 0x3F, 0x14, 0xFF, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xD4, 0x76,
0x15, 0xFF, 0xA7, 0x47, 0x0C, 0xFF, 0xA7, 0x49, 0x0D, 0xFF, 0xA8, 0x47, 0x07, 0xFF, 0xB0, 0x75,
0x4F, 0xFF, 0xD4, 0xD9, 0xDD, 0xFF, 0xF4, 0xF4, 0xF4, 0xFF, 0xF3, 0xF3, 0xF3, 0xFF, 0xF7, 0xF7,
0xF7, 0xFF, 0xE7, 0xE7, 0xE7, 0xFF, 0xE6, 0xE6, 0xE6, 0xFF, 0xE7, 0xE7, 0xE7, 0xFF, 0xE5, 0xE5,
0xE5, 0xFF, 0xE4, 0xE4, 0xE4, 0xFF, 0xE3, 0xE3, 0xE3, 0xFF, 0xE0, 0xE0, 0xE0, 0xFF, 0xE0, 0xE0,
0xE0, 0xFF, 0xDD, 0xDD, 0xDD, 0xFF, 0xDA, 0xDA, 0xDA, 0xFF, 0xE3, 0xE3, 0xE3, 0xFF, 0xE0, 0xE0,
0xE0, 0xFF, 0xDF, 0xDF, 0xDF, 0xFF, 0xBE, 0xC2, 0xC5, 0xFF, 0xB1, 0x87, 0x61, 0xFF, 0xC7, 0x73,
0x24, 0xFF, 0xC8, 0x78, 0x29, 0xFF, 0xCA, 0x7C, 0x2C, 0xFF, 0x9E, 0x3F, 0x14, 0xFF, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xD4, 0x76,
0x15, 0xFF, 0xA4, 0x44, 0x0A, 0xFF, 0xA6, 0x46, 0x0B, 0xFF, 0xA6, 0x44, 0x06, 0xFF, 0xAF, 0x74,
0x4E, 0xFF, 0xD5, 0xDB, 0xDE, 0xFF, 0xF7, 0xF7, 0xF7, 0xFF, 0xF6, 0xF6, 0xF6, 0xFF, 0xFB, 0xFB,
0xFB, 0xFF, 0xD0, 0xD0, 0xD0, 0xFF, 0xC9, 0xC9, 0xC9, 0xFF, 0xC9, 0xC9, 0xC9, 0xFF, 0xC9, 0xC9,
0xC9, 0xFF, 0xC9, 0xC9, 0xC9, 0xFF, 0xCA, 0xCA, 0xCA, 0xFF, 0xCA, 0xCA, 0xCA, 0xFF, 0xCA, 0xCA,
0xCA, 0xFF, 0xCB, 0xCB, 0xCB, 0xFF, 0xC9, 0xC9, 0xC9, 0xFF, 0xE2, 0xE2, 0xE2, 0xFF, 0xE0, 0xE0,
0xE0, 0xFF, 0xE0, 0xE0, 0xE0, 0xFF, 0xC0, 0xC3, 0xC6, 0xFF, 0xB1, 0x87, 0x60, 0xFF, 0xC7, 0x74,
0x22, 0xFF, 0xC6, 0x77, 0x2A, 0xFF, 0xC8, 0x7B, 0x2A, 0xFF, 0x9E, 0x3F, 0x14, 0xFF, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xD4, 0x76,
0x15, 0xFF, 0xA3, 0x42, 0x09, 0xFF, 0xA4, 0x44, 0x0A, 0xFF, 0xA5, 0x42, 0x04, 0xFF, 0xAF, 0x74,
0x4E, 0xFF, 0xD9, 0xDF, 0xE2, 0xFF, 0xF9, 0xF9, 0xF9, 0xFF, 0xF9, 0xF9, 0xF9, 0xFF, 0xFE, 0xFE,
0xFE, 0xFF, 0xDD, 0xDD, 0xDD, 0xFF, 0xD9, 0xD9, 0xD9, 0xFF, 0xDA, 0xDA, 0xDA, 0xFF, 0xD8, 0xD8,
0xD8, 0xFF, 0xD7, 0xD7, 0xD7, 0xFF, 0xD8, 0xD8, 0xD8, 0xFF, 0xD7, 0xD7, 0xD7, 0xFF, 0xD6, 0xD6,
0xD6, 0xFF, 0xD5, 0xD5, 0xD5, 0xFF, 0xD3, 0xD3, 0xD3, 0xFF, 0xE3, 0xE3, 0xE3, 0xFF, 0xE2, 0xE2,
0xE2, 0xFF, 0xE0, 0xE0, 0xE0, 0xFF, 0xC1, 0xC4, 0xC7, 0xFF, 0xB1, 0x87, 0x60, 0xFF, 0xC6, 0x72,
0x22, 0xFF, 0xC7, 0x78, 0x28, 0xFF, 0xC8, 0x7A, 0x2B, 0xFF, 0x9E, 0x3F, 0x14, 0xFF, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xD4, 0x77,
0x15, 0xFF, 0xA1, 0x40, 0x07, 0xFF, 0xA2, 0x41, 0x08, 0xFF, 0xA3, 0x40, 0x03, 0xFF, 0xB0, 0x73,
0x4E, 0xFF, 0xDC, 0xE1, 0xE5, 0xFF, 0xFB, 0xFB, 0xFB, 0xFF, 0xFC, 0xFC, 0xFC, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0xFC, 0xFC, 0xFF, 0xF8, 0xF8, 0xF8, 0xFF, 0xF4, 0xF4,
0xF4, 0xFF, 0xF1, 0xF1, 0xF1, 0xFF, 0xEC, 0xEC, 0xEC, 0xFF, 0xE6, 0xE6, 0xE6, 0xFF, 0xE1, 0xE1,
0xE1, 0xFF, 0xE1, 0xE1, 0xE1, 0xFF, 0xC2, 0xC5, 0xC9, 0xFF, 0xB3, 0x88, 0x60, 0xFF, 0xC7, 0x73,
0x23, 0xFF, 0xC7, 0x78, 0x29, 0xFF, 0xC8, 0x7A, 0x29, 0xFF, 0xA0, 0x41, 0x14, 0xFF, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xD4, 0x77,
0x15, 0xFF, 0x9F, 0x3C, 0x06, 0xFF, 0xA1, 0x3F, 0x07, 0xFF, 0xA2, 0x3C, 0x02, 0xFF, 0xAE, 0x73,
0x4E, 0xFF, 0xDC, 0xE2, 0xE5, 0xFF, 0xFC, 0xFC, 0xFC, 0xFF, 0xFD, 0xFD, 0xFD, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xDC, 0xDC, 0xDC, 0xFF, 0xD6, 0xD6, 0xD6, 0xFF, 0xD6, 0xD6, 0xD6, 0xFF, 0xD7, 0xD7,
0xD7, 0xFF, 0xD6, 0xD6, 0xD6, 0xFF, 0xD5, 0xD5, 0xD5, 0xFF, 0xD4, 0xD4, 0xD4, 0xFF, 0xD3, 0xD3,
0xD3, 0xFF, 0xD4, 0xD4, 0xD4, 0xFF, 0xD1, 0xD1, 0xD1, 0xFF, 0xE5, 0xE5, 0xE5, 0xFF, 0xE3, 0xE3,
0xE3, 0xFF, 0xE1, 0xE1, 0xE1, 0xFF, 0xC2, 0xC5, 0xC8, 0xFF, 0xB4, 0x89, 0x61, 0xFF, 0xB4, 0x67,
0x1E, 0xFF, 0xB5, 0x6B, 0x24, 0xFF, 0xCB, 0x7B, 0x29, 0xFF, 0xA5, 0x46, 0x14, 0xFF, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xD5, 0x78,
0x16, 0xFF, 0x9E, 0x3A, 0x05, 0xFF, 0x9F, 0x3D, 0x06, 0xFF, 0xA0, 0x3A, 0x01, 0xFF, 0xAE, 0x72,
0x4F, 0xFF, 0xDE, 0xE4, 0xE7, 0xFF, 0xFC, 0xFC, 0xFC, 0xFF, 0xFC, 0xFC, 0xFC, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xCF, 0xCF, 0xCF, 0xFF, 0xC7, 0xC7, 0xC7, 0xFF, 0xC9, 0xC9, 0xC9, 0xFF, 0xC9, 0xC9,
0xC9, 0xFF, 0xC9, 0xC9, 0xC9, 0xFF, 0xC9, 0xC9, 0xC9, 0xFF, 0xC9, 0xC9, 0xC9, 0xFF, 0xCA, 0xCA,
0xCA, 0xFF, 0xCA, 0xCA, 0xCA, 0xFF, 0xC9, 0xC9, 0xC9, 0xFF, 0xE4, 0xE4, 0xE4, 0xFF, 0xE3, 0xE3,
0xE3, 0xFF, 0xE1, 0xE1, 0xE1, 0xFF, 0xC2, 0xC5, 0xC8, 0xFF, 0xB7, 0x8A, 0x62, 0xFF, 0x7C, 0x46,
0x13, 0xFF, 0x82, 0x4E, 0x1C, 0xFF, 0xCC, 0x7B, 0x2A, 0xFF, 0xAA, 0x4B, 0x15, 0xFF, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xD6, 0x7C,
0x20, 0xEB, 0x9E, 0x3A, 0x03, 0xFF, 0x9E, 0x3B, 0x04, 0xFF, 0x9E, 0x39, 0x00, 0xFF, 0xAE, 0x70,
0x4D, 0xFF, 0xDE, 0xE4, 0xE7, 0xFF, 0xFB, 0xFB, 0xFB, 0xFF, 0xFB, 0xFB, 0xFB, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xF4, 0xF4, 0xF4, 0xFF, 0xF4, 0xF4, 0xF4, 0xFF, 0xF4, 0xF4, 0xF4, 0xFF, 0xF2, 0xF2,
0xF2, 0xFF, 0xF0, 0xF0, 0xF0, 0xFF, 0xEC, 0xEC, 0xEC, 0xFF, 0xEB, 0xEB, 0xEB, 0xFF, 0xE7, 0xE7,
0xE7, 0xFF, 0xE5, 0xE5, 0xE5, 0xFF, 0xE1, 0xE1, 0xE1, 0xFF, 0xE6, 0xE6, 0xE6, 0xFF, 0xE1, 0xE1,
0xE1, 0xFF, 0xE1, 0xE1, 0xE1, 0xFF, 0xC2, 0xC5, 0xC9, 0xFF, 0xB3, 0x8A, 0x62, 0xFF, 0xA1, 0x5C,
0x19, 0xFF, 0xA6, 0x63, 0x21, 0xFF, 0xC8, 0x77, 0x28, 0xFF, 0xB2, 0x57, 0x1E, 0xE9, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xE7, 0xB1,
0x7D, 0x8E, 0xBF, 0x59, 0x00, 0xFF, 0x9E, 0x39, 0x03, 0xFF, 0x9A, 0x33, 0x00, 0xFF, 0xAD, 0x6E,
0x4D, 0xFF, 0xDD, 0xE3, 0xE6, 0xFF, 0xFB, 0xFB, 0xFB, 0xFF, 0xFC, 0xFD, 0xFD, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0xFE,
0xFE, 0xFF, 0xFC, 0xFC, 0xFD, 0xFF, 0xF9, 0xF9, 0xF9, 0xFF, 0xF6, 0xF6, 0xF6, 0xFF, 0xF2, 0xF2,
0xF2, 0xFF, 0xEF, 0xEF, 0xEF, 0xFF, 0xEC, 0xEC, 0xEC, 0xFF, 0xE7, 0xE7, 0xE7, 0xFF, 0xE3, 0xE4,
0xE4, 0xFF, 0xE2, 0xE3, 0xE3, 0xFF, 0xC2, 0xC7, 0xCA, 0xFF, 0xB2, 0x88, 0x62, 0xFF, 0xC8, 0x72,
0x24, 0xFF, 0xC7, 0x77, 0x27, 0xFF, 0xB7, 0x53, 0x06, 0xFF, 0xD4, 0xA1, 0x7C, 0x8A, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFE, 0xFD,
0xFB, 0x07, 0xE5, 0xAF, 0x7A, 0x8E, 0xD3, 0x79, 0x1C, 0xEF, 0xD0, 0x6A, 0x03, 0xFF, 0xCD, 0x8E,
0x4F, 0xFF, 0xC8, 0xCA, 0xCD, 0xFF, 0xC8, 0xC6, 0xC3, 0xFF, 0xC9, 0xC7, 0xC5, 0xFF, 0xCA, 0xC7,
0xC5, 0xFF, 0xC9, 0xC6, 0xC4, 0xFF, 0xC7, 0xC3, 0xC1, 0xFF, 0xC3, 0xC2, 0xBF, 0xFF, 0xC2, 0xBE,
0xBB, 0xFF, 0xBE, 0xBD, 0xBA, 0xFF, 0xBB, 0xB9, 0xB6, 0xFF, 0xBA, 0xB6, 0xB4, 0xFF, 0xB6, 0xB5,
0xB1, 0xFF, 0xB3, 0xB1, 0xAE, 0xFF, 0xB0, 0xAE, 0xAB, 0xFF, 0xAD, 0xAB, 0xAA, 0xFF, 0xAC, 0xA8,
0xA6, 0xFF, 0xA9, 0xA7, 0xA4, 0xFF, 0xA6, 0xA8, 0xA9, 0xFF, 0xB6, 0x83, 0x53, 0xFF, 0xC3, 0x5C,
0x01, 0xFF, 0xC1, 0x65, 0x1A, 0xEF, 0xD7, 0xA3, 0x79, 0x8E, 0xFE, 0xFC, 0xFB, 0x07, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF,
0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0x00 
};

HB_FUNC( MEMFLOPPY )
{
   hb_retnl( ( long ) CreateMemBitmap( ( HDC ) 0,  ( LPSTR ) floppy ) );
}
 
our best documentation is the source code
Isla de Margarita Venezuela.
danielgarciagil@gmail.com
http://tdolphin.blogspot.com/
https://www.dropbox.com/referrals/NTI5N ... rc=global9
User avatar
cuatecatl82
Posts: 614
Joined: Wed Mar 14, 2007 6:49 pm
Location: San Cristobal de las Casas, Chiapas México
Contact:

Re: Agregar Recursos dentro Lib

Post by cuatecatl82 »

Gracias Tocayo Daniel: :P :lol: 8)

Ya me diste mejor información, mañana hare las pruebas para ver que logro hacer, ya me diste la pista para armar un bitmap, veré como hago para un icono y si es posible para un cursor, sigo investigando aunque es poco lo que he encontrado y mis conocimientos de C ya algo obsoletos.. :roll: :wink:


Gracias. y Saludos.. :lol: :lol: :lol:
Soluciones y Diseño de Software
Damos Soluciones...

I.S.C. Victor Daniel Cuatecatl Leon
Director y Diseñador de Proyectos

http://www.soldisoft.unlugar.com
http://www.sisa.unlugar.com
danyleon82@hotmail.com
www.facebook.com/victordaniel.cuatecatlleon
User avatar
acuellar
Posts: 1312
Joined: Tue Oct 28, 2008 6:26 pm
Location: Santa Cruz-Bolivia

Re: Agregar Recursos dentro Lib

Post by acuellar »

Amigos,

Si la idea es no tener archivos .DLL la podemos guardar como .RES desde PelleC
Y colocar el .RES como un .PRG más

Saludos,

Adhemar
Saludos,

Adhemar C.
User avatar
cuatecatl82
Posts: 614
Joined: Wed Mar 14, 2007 6:49 pm
Location: San Cristobal de las Casas, Chiapas México
Contact:

Re: Agregar Recursos dentro Lib

Post by cuatecatl82 »

Hola Adhemar:

La idea es otra, necesitaba algo a fuerzas como lo hace FWBitmap() como proposito general, el poner tus bmp, curs e Icons desde un RC o RES lo conosco pero no me parecio porque es posible cambiarlas y editarlas con X Editor y queria conocer formas más "Profesionales", lo uso para guardar un candado tomando como instantanea cierta imagen del escritorio para comparala con mi imagen Interna.

Saludos.. :mrgreen: :mrgreen:
Soluciones y Diseño de Software
Damos Soluciones...

I.S.C. Victor Daniel Cuatecatl Leon
Director y Diseñador de Proyectos

http://www.soldisoft.unlugar.com
http://www.sisa.unlugar.com
danyleon82@hotmail.com
www.facebook.com/victordaniel.cuatecatlleon
User avatar
cuatecatl82
Posts: 614
Joined: Wed Mar 14, 2007 6:49 pm
Location: San Cristobal de las Casas, Chiapas México
Contact:

Re: Agregar Recursos dentro Lib

Post by cuatecatl82 »

Saludos y de nuevo aki molestando:


Cual seria el equivalente de CreateMemBitmap() de C para crear iconos desde un array hexadecimal..?

No doy con el MSDN, Pense que sería CreateMemIcon() pero no existe..

Gracias de antemano.. :mrgreen: :mrgreen:
Soluciones y Diseño de Software
Damos Soluciones...

I.S.C. Victor Daniel Cuatecatl Leon
Director y Diseñador de Proyectos

http://www.soldisoft.unlugar.com
http://www.sisa.unlugar.com
danyleon82@hotmail.com
www.facebook.com/victordaniel.cuatecatlleon
User avatar
cuatecatl82
Posts: 614
Joined: Wed Mar 14, 2007 6:49 pm
Location: San Cristobal de las Casas, Chiapas México
Contact:

Re: Agregar Recursos dentro Lib

Post by cuatecatl82 »

Colegas del foro: 8) :D 8) :)

Como crear un icono en memoria de forma hexadecimal, la idea es seleccionar un icono y guardarlo en un campo memo de una dbf, habra la función CreateMemIcon()..?

La ideaes algo similar a esto:

Code: Select all

hIcon := ExtractIcon( "C:\ROBOT.EXE", 0 )
Pero devuelve el handle del icono, la idea es guardatlo para poder dibujarlo después, la funcion CreateMemBitmap() no me funciona para iconos, alguna idea para los gurus de fivewin..?

Saludos :o :o
Soluciones y Diseño de Software
Damos Soluciones...

I.S.C. Victor Daniel Cuatecatl Leon
Director y Diseñador de Proyectos

http://www.soldisoft.unlugar.com
http://www.sisa.unlugar.com
danyleon82@hotmail.com
www.facebook.com/victordaniel.cuatecatlleon
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: Agregar Recursos dentro Lib

Post by Antonio Linares »

Victor,

Parece que la función que tienes que usar es CreateIcon():

http://msdn.microsoft.com/en-us/library ... s.85).aspx
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
cuatecatl82
Posts: 614
Joined: Wed Mar 14, 2007 6:49 pm
Location: San Cristobal de las Casas, Chiapas México
Contact:

Re: Agregar Recursos dentro Lib

Post by cuatecatl82 »

Estoy bastante perdido y fuera de practica en C, no doy con la conversión en ningula de las opciones que se presenta

Code: Select all

HICON WINAPI CreateIcon(
  _In_opt_  HINSTANCE hInstance,
  _In_      int nWidth,
  _In_      int nHeight,
  _In_      BYTE cPlanes,
  _In_      BYTE cBitsPixel,
  _In_      const BYTE *lpbANDbits,
  _In_      const BYTE *lpbXORbits
);
Lo que necesito es guardar el icono en una DBF, ya que desde ahí pienso recuperarlo para luego dibujarlo, ya teno hecho un ICON GROUP para visualizar los iconos de los archivos, pero no doy como..

Saludos..

Image
Soluciones y Diseño de Software
Damos Soluciones...

I.S.C. Victor Daniel Cuatecatl Leon
Director y Diseñador de Proyectos

http://www.soldisoft.unlugar.com
http://www.sisa.unlugar.com
danyleon82@hotmail.com
www.facebook.com/victordaniel.cuatecatlleon
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: Agregar Recursos dentro Lib

Post by Antonio Linares »

Victor,

La forma más simple sería que guardes el icono como una cadena leyéndolo así:

MiDbf->icono := MemoRead( "icono.ico" )

luego puedes recuperarlo y crear un fichero temporal en el disco desde donde cargarlo con FWH:

DEFINE ICON ... FILENAME ...
regards, saludos

Antonio Linares
www.fivetechsoft.com
elvira
Posts: 462
Joined: Fri Jun 29, 2012 12:49 pm

Re: Agregar Recursos dentro Lib

Post by elvira »

Maestro Antonio,

¿Es posible con alguna función añadir datos a un .exe?.

Por ejemplo, una cadena con unos _.

Sería poder cambiar estos datos como sistema de protección en el propio .exe.
Marcelo Via Giglio
Posts: 1033
Joined: Fri Oct 07, 2005 3:33 pm
Location: Cochabamba - Bolivia

Re: Agregar Recursos dentro Lib

Post by Marcelo Via Giglio »

Elvira,

si por ejemplo defines una asignación:

nomVar := "#INI#...........#FIN#"

después de tener creado el EXE puedes buscar el patrón definido y cambiar los ".........." por otra cadena que no ocupe mas ni
menos que la cantidad de caracteres (dentro el exe claro)

Nos avisas como te va

saludos

Marcelo
elvira
Posts: 462
Joined: Fri Jun 29, 2012 12:49 pm

Re: Agregar Recursos dentro Lib

Post by elvira »

Marcelo,

No se cómo escribir en un .exe que se está ejecutando.

A ver si el Maestro Antonio cuando tenga un hueco nos ilumina un poco.

Muy agradecida ;))
Post Reply