Basta con crear un fichero de recursos estandard de Delphi y ańairlo a un proyecto de DLL.
Crea un archivo .RC como este (icons.rc):
Código:
BACK BITMAP ".\back.bmp"
BARCODE BITMAP ".\barcode.bmp"
...
Lo compilas usando el programa brcc32 (desde la linea de comandos), por ejemplo puedes crear un BAT/CMD como este:
Código:
brcc32 icons.Rc > Errores.txt
Al compilar los recursos obtendrás un fichero llamado
icons.res
Desde Delphi creas un nuevo proyacto desde
File/New/Other/DLL Wizard
y donde pone
{$R *.res} cambias eso por
{$R ICONS.RES}
Compila, linka y en la DLL resultante ya tiene los iconos.
Una vez que tengas la DLL creada, en mi caso, por ejemplo con el nombre: ResDLL.dll, para recuperar los iconos haz lo siguiente:
(1) Crea una nueva aplicación de delphi.
(2) Coloca dos TImage y un botón.
(3) En el Onclick del botón coloca el siguiente código:
Código Delphi
[-]
procedure TForm1.Button1Click(Sender: TObject);
var
DllHandle: THandle;
begin
DllHandle := LoadLibrary('.\ResDLL.dll');
if DllHandle <> 0 then begin
try
Image1.Picture.Bitmap.Handle := LoadBitmap(DllHandle, 'BACK');
Image2.Picture.Bitmap.Handle := LoadBitmap(DllHandle, 'BARCODE');
finally
FreeLibrary(DllHandle)
end;
end
else begin
ShowMessage(SysErrorMessage(GetLastError))
end;
end;
Una vez compilado si la DLL y el EXE están en el mismo directorio deberían funcionar.