Zitat von
dominikkv:
Delphi-Quellcode:
procedure ImageToBitmap(Img: TImage);
//...
procedure TForm1.LoadImages;
var
h :HINST;
r :TResourceStream;
j :TJpegImage;
im: TImage;
I: Integer;
Namen: TStringList;
begin
Namen := TStringList.Create;
Namen.Add('bWdhTrackp'); Namen.Add('bWdhTrack');
Namen.Add('bWdhp'); Namen.Add('bWdhNonep');
Namen.Add('bWdhNone');
h := LoadLibrary('pBilder.dll');
if h <> 0 then
for I := 0 to 4 do // <--<<
begin
r := TResourceStream.Create(h, Namen[I], 'Jpeg'); // <--<<
j := TJpegImage.Create; // <--<<
im := TImage.create(self); // <--<<
try
j.LoadFromStream(r);
Im.Picture.Assign(j);
ImageToBitmap(Im);
test.Add(im.Picture.Bitmap);
finally
j.Free; // <--<<
r.Free; // <--<<
im.free; // <--<<
end;
end;
FreeLibrary(h);
Namen.free;
end;
Also, eine
AV -Fehlerstelle kann ich jetzt so nicht sehen. Aber das du Objekte zu "Wegwerfartikeln" machst obwohl man es geschickter anstellen könnte...
Delphi-Quellcode:
procedure TForm1.LoadImages;
var
h :HINST;
r :TResourceStream;
j :TJpegImage;
im: TImage;
I: Integer;
Namen: TStringList;
begin
Namen := TStringList.Create;
Namen.Add('bWdhTrackp');
Namen.Add('bWdhTrack');
Namen.Add('bWdhp');
Namen.Add('bWdhNonep');
Namen.Add('bWdhNone');
h := LoadLibrary('pBilder.dll');
if h <> 0 then
begin
j := TJpegImage.Create;
im := TImage.create(self);
try
for i := 0 to Namen.Count - 1 do
begin
r := TResourceStream.Create(h, Namen[I], 'Jpeg');
try
j.LoadFromStream(r);
Im.Picture.Assign(j);
ImageToBitmap(Im);
test.Add(im.Picture.Bitmap, im.Picture.Bitmap);
finally
r.Free;
end;
end;
finally
j.Free;
im.free;
end;
end;
FreeLibrary(h);
Namen.free;
end;
(
nur mal so ins blaue getippt)
Hänge doch mal das Projekt als Zip an ,dann könnte man mal nachgucken.