AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Delphi .res Ressourcennamen

Ein Thema von sevenex · begonnen am 1. Apr 2011 · letzter Beitrag vom 2. Apr 2011
Antwort Antwort
sevenex

Registriert seit: 16. Aug 2006
6 Beiträge
 
#1

Delphi .res Ressourcennamen

  Alt 1. Apr 2011, 16:36
Hallo zusammen,

ich habe eine .res erzeugt. Diese beinhaltet

MEINBILD RCDATA "dateiname"
MEINBBBILDDDD RCDATA "dateiname"
MEINPIC RCDATA "dateiname"
BMPMEINPIC RCDATA "dateiname"

nun möchte ich aber die Ressourcen NAMEN auslesen. Wie bekomme ich das hin?
Es sollen nur die NAMEN sein nicht die Dateien.

bin schon wie blöd am suchen.
Wieso ich das möchte ist folgendes,.. ich möchte nicht jede einzelne Zeile schreiben um die Dateien laden zu müssen
ich möchte gleich alle Dateien laden das soll über eine schleife laufen. Wie bekomme ich das hin?
  Mit Zitat antworten Zitat
Benutzerbild von rollstuhlfahrer
rollstuhlfahrer

Registriert seit: 1. Aug 2007
Ort: Ludwigshafen am Rhein
1.529 Beiträge
 
Delphi 7 Professional
 
#2

AW: Delphi .res Ressourcennamen

  Alt 1. Apr 2011, 16:47
Hier gibts was dazu

Bernhard
Bernhard
Iliacos intra muros peccatur et extra!

Geändert von rollstuhlfahrer ( 1. Apr 2011 um 16:49 Uhr) Grund: Falscher Link
  Mit Zitat antworten Zitat
sevenex

Registriert seit: 16. Aug 2006
6 Beiträge
 
#3

AW: Delphi .res Ressourcennamen

  Alt 1. Apr 2011, 17:33
Vielen dank für denn tip....aber
gibt es denn nichts kürzeres bzw. ist das ja doof wenn ich meine eigene exe auslese muss....
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#4

AW: Delphi .res Ressourcennamen

  Alt 1. Apr 2011, 17:41
Was willst du den kürzeres? Und wenn es was kürzeres gäbe, meinst du Oli hätte das extra umständlich gemacht, um dich zu ärgern? Und wenn du die ganzen riesen Kommentare entfernst sind es nur ein paar kurze Funktionen. Pack das in eine Unit und in deinem Quelltext reduziert sich alles auf ein, zwei Funktionsaufrufe. Und die eigene Exe musst du wohl auslesen, denn da sind nun mal die Ressourcen drin enthalten.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von turboPASCAL
turboPASCAL

Registriert seit: 8. Mai 2005
Ort: Sondershausen
4.274 Beiträge
 
Delphi 6 Personal
 
#5

AW: Delphi .res Ressourcennamen

  Alt 1. Apr 2011, 17:50
Vielen dank für denn tip....aber
gibt es denn nichts kürzeres bzw. ist das ja doof wenn ich meine eigene exe auslese muss....
Ist ja auch eigentlich Unsinn den dann kennst du doch die Resourcennamen. Nicht oder ?
Matti
Meine Software-Projekte - Homepage - Grüße vom Rüsselmops -Mops Mopser
  Mit Zitat antworten Zitat
sevenex

Registriert seit: 16. Aug 2006
6 Beiträge
 
#6

AW: Delphi .res Ressourcennamen

  Alt 2. Apr 2011, 12:43
Das stimmt ich kenne die Namen... nur das sind 126 Bilder (png's) diese möchte ich nicht einzelt laden, sondern in einer schleife.
Die Ressourcennamen sollen allerdings so bleiben, sprich ich kann nicht aus denn namen so eine art zähler machen.
  Mit Zitat antworten Zitat
Benutzerbild von wicht
wicht

Registriert seit: 15. Jan 2006
Ort: Das schöne Enger nahe Bielefeld
809 Beiträge
 
Delphi XE Professional
 
#7

AW: Delphi .res Ressourcennamen

  Alt 2. Apr 2011, 13:03
Wenn dich das in dem Link oben verwirrt, so geht es auch. Ist zwar viel simpler aber sollte für deine Zwecke reichen. Das 'IsIntResource' habe ich da drin, weil ich meinen Resourcen nur Namen und keine Nummern gebe.

Delphi-Quellcode:
var
  Resources: TStringList;

function EnumResNameProc(hModule: HINST; lpszType: PChar; lpszName: PChar; lParam: LPARAM): BOOL; stdcall;
  function IsIntResource(lpszType: PChar): Boolean;
  begin
    Result := ((DWORD(lpszType) shr 16) = 0);
  end;
begin
  if not IsIntResource(lpszName) then
  begin
    if lpszType = RT_RCDATA then
      Resources.Add(lpszName);
  end;
  Result := True;
end;
So aufrufen:

Delphi-Quellcode:
Resources := TStringList.Create;
try
  EnumResourceNames(HInstance, RT_RCDATA, @EnumResNameProc, 0);
  { ... }
finally
  Resources.Free;
end;
http://streamwriter.org

"I make hits. Not the public. I tell the DJ’s what to play. Understand?"
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:06 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