Anteriormente en Studio 2010 tenia un código que no consigo hacer funcionar en RIO 1.3.
Tenia este código que podía llamar a varios archivos del fichero de recursos, pero ahora no sé como hacerlo sin tener que crear un puntero para cada uno de los ficheros contenido en el fichero de recursos.
CODIGO ANTIGUO:
Código PHP:
String CAB = Ruta + L"dat.cab";
String RAR = Ruta + L"rar.exe";
if(!FileExists(RAR.w_str()))//Si no existe Rar.exe
TResourceStream(0, L"C", RT_RCDATA).SaveToFile(CAB.w_str());
if(!FileExists(IMG.w_str()))
TResourceStream(0, L"R", RT_RCDATA).SaveToFile(RAR.w_str());
//... y así sucesivamente hasta sacar todos los ficheros del RECURSO.
ERROR QUE ME APARECE:
[ilink32 Error] Error: Unresolved external 'System::Classes::TResourceStream::{1173}...' referenced from D:\BDS_10_3\TPV-START\WIN32\DEBUG\UNIDADTPVBARMAN_START.OBJ
[ilink32 Error] Error: Unable to perform link
Ahora solo he encontrado esta forma de hacerlo con la creación de un PUNTERO, puesto que la forma anterior compila en .cpp de la llamada pero al generar el fichero del proyecto me da error y no los consigo hacer funcionar.
CODIGO NUEVO:
Código PHP:
String CAB = Ruta + L"dat.cab";
String RAR = Ruta + L"rar.exe";
TResourceStream *B = new TResourceStream((int)HInstance, "C", RT_RCDATA);
__try
{
B->SaveToFile(CAB.w_str());
/* La pregunta es... ¿Como sacar los otros ficheros del recurso antes de destruir el PUNTERO?*/
}
__finally
{
delete B;
}
Fichero de RECURSOS. IB_Replicador.rc
Código PHP:
/*IB_Replicador.rc*/
C RCDATA "dat.cab"
R RCDATA "rar.exe"
D RCDATA "divisas.cab"
B RCDATA "Barman.dat"
W RCDATA "nzw.dll"
IMG_1 RCDATA "IMG\\Inicio_2.jpg"
IMG_2 RCDATA "IMG\\imagen_jpg_error.jpg"
IMG_3 RCDATA "IMG\\Inicio_3.jpg"
IMG_4 RCDATA "IMG\\imagen_articulos.jpg"
IMG_5 RCDATA "IMG\\imagen_comanda.jpg"
IMG_6 RCDATA "IMG\\imagen_familias.jpg"
IMG_7 RCDATA "IMG\\imagen_operador.jpg"
IMG_8 RCDATA "IMG\\BalanzaDibal.jpg"
IMG_9 RCDATA "IMG\\CashDro.jpg"
IMG_10 RCDATA "IMG\\CashGuard.jpg"
IMG_11 RCDATA "IMG\\CashKeeper.jpg"
IMG_12 RCDATA "IMG\\CashLogy.jpg"
IMG_13 RCDATA "IMG\\Modo_Limpieza.jpg"
IMG_14 RCDATA "IMG\\display.jpg"
IMG_15 RCDATA "IMG\\display_2.jpg"
IMG_16 RCDATA "IMG\\1024_768.jpg"
IMG_17 RCDATA "IMG\\1280_800.jpg"
IMG_18 RCDATA "IMG\\1280_1024.jpg"
IMG_19 RCDATA "IMG\\1360_768.jpg"
IMG_20 RCDATA "IMG\\1920_1080.jpg"
IMG_21 RCDATA "IMG\\Color1.jpg"
IMG_22 RCDATA "IMG\\Color2.jpg"
IMG_23 RCDATA "IMG\\Color3.jpg"
IMG_24 RCDATA "IMG\\Color4.jpg"
IMG_25 RCDATA "IMG\\Color5.jpg"
IMG_26 RCDATA "IMG\\Color6.jpg"
IMG_27 RCDATA "IMG\\Mesas_Repres_Iconos.jpg"
IMG_28 RCDATA "IMG\\Mesas_Cod_Daltonicos.jpg"
IMG_29 RCDATA "IMG\\porciones.jpg"