Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Resource in Stream schreiben?! (https://www.delphipraxis.net/16382-resource-stream-schreiben.html)

SirThornberry 16. Feb 2004 11:43


Resource in Stream schreiben?!
 
Hoffe ich hab mich jetzt nicht in der Kategorie vertan..

Ich hab eine Komponente die nur die Methoden, LoadFromStream und LoadFromFile implementiert hat. Jetzt möchte ich allerdings aus einer Resource laden. Wie kann ich jetzt die Resource in einen Stream laden um dann aus dem stream laden zu können? Der Typ der Resource ist TMMBitmaplist (also werd ichs wie ne exe in die resourcen aufnehmen müssen?!

chris 16. Feb 2004 14:27

Re: Resource in Stream schreiben?!
 
hi,

versuch es doch einfach mit TResourceStream und RT_RCDATA

SirThornberry 16. Feb 2004 15:17

Re: Resource in Stream schreiben?!
 
habs jetzt so gelöst (abgeänderter source von irgend nem beitrag)
Delphi-Quellcode:
function PutResToStream(binresname: string; DestStream: TStream): boolean;
var
  ResSize, HG, HI: Cardinal;
begin
  result := false;
  HI := FindResource(hInstance, @binresname[1], 'BINRES');
  if HI <> 0 then
  begin
    //load resource and check the handle
    HG := LoadResource(hInstance, HI);
    if HG <> 0 then
    begin
      //check resource size (needed to copy a block of data)
      ResSize := SizeOfResource(hInstance, HI);
      //create the file
      try
        deststream.Write(LockResource(HG)^, ResSize);
        result := True;
      except end;
    end;
    FreeResource(HG);
  end;
end;


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:15 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz