rc.rc内容:
skin RCDATA "images\VistaXP-VISTAXPB2.skn"程序中读取代码:function TResData.getStream(const hName: string): TResourceStream;
var
Stream: TResourceStream;
MyJpg: TJpegImage;
resDll: THandle;
begin
resDll := LoadLibrary(PChar(RESDLL_NAME));
try
Stream := TResourceStream.Create(resDll, hName, RT_RCDATA);
Result:=Stream;
finally
FreeLibrary(resDll);
end;
end;载入皮肤:SkinData1.LoadFromStream(resData.getStream('skin')); //包地址错误
skin RCDATA "images\VistaXP-VISTAXPB2.skn"程序中读取代码:function TResData.getStream(const hName: string): TResourceStream;
var
Stream: TResourceStream;
MyJpg: TJpegImage;
resDll: THandle;
begin
resDll := LoadLibrary(PChar(RESDLL_NAME));
try
Stream := TResourceStream.Create(resDll, hName, RT_RCDATA);
Result:=Stream;
finally
FreeLibrary(resDll);
end;
end;载入皮肤:SkinData1.LoadFromStream(resData.getStream('skin')); //包地址错误
//1 制作res文件
//......//2制作包含res文件的dll
library Mydllp;
uses
ExceptionLog,
SysUtils,
Classes;{$R abc.res}begin
end.//3调用
function TResData.getStream(const hName: string): TResourceStream;
var
Stream: TResourceStream;
MyJpg: TJpegImage;
resDll: THandle;
begin
resDll := LoadLibrary(PChar(RESDLL_NAME)); //RESDLL_NAME为Mydllp.dll文件, 直接res文件加载不了
try
Stream := TResourceStream.Create(resDll, hName, RT_RCDATA);
Result:=Stream;
finally
FreeLibrary(resDll);
end;
end;