Hallo,
ich binde per {$R name.RES} ein paar externe Ressourcen direkt mit in die Exe ein. Beim Starten der Applikation speicher ich diese im Temp-Verzeichnis ab. Dafür verwende ich folgende Funktion:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12:
| procedure GetResData(const Resource: Cardinal; const OutFileName: string); var Stream: TResourceStream; begin Stream := TResourceStream.Create(hInstance, PChar('#' + IntToStr(Resource)), 'FILE'); try Stream.SaveToFile(OutFileName); finally Stream.Free; end; end; |
Dies klappt auch soweit ganz gut. Allerdings muss das Programm nun erweitert werden und ich steh vor folgendem Problem:
Bisher wurde die Funktion mit festen Werten aufgerufen => GetResData(3, 'Verzeichnis/name.txt'). Nun soll das ganze dynnamisch passieren, d.h. ich weiß weder wie viele FILE-Elemente es gibt noch wie die Namen heißen. Ich muss diese also anhand der mitgelieferten Ressourcen auslesen.
Ich brauch also eine String-Liste von 0 bis n die mir pro Listeneintrag den Namen der Ressource speichert. Hab leider nix passendes im Netz gefunden und bin daher auf eure Hilfe angewiesen.
Dankend
Stefan