Ressourcendatei erstellen/einbinden



  • Hallo Leute;

    ich wollte einem Programm ne Menge bilder beifügen - allerdings darf ich das nicht auf normalem wege. sprich: der urheber hat gesagt, ich darf sie verwenden, wenn ich sie nicht mit beifüge sondern alles im programm ist.

    wenn ich alle bilder einbinde ist das programm viel zu groß!
    das ist unmöglich.
    ein kumpel sagte. es gibt ressourcen dateien.

    Frage: Wie bekomme ich da ein jpeg rein und wie lade ich es in mein programm? ein tutorial wäre auch super
    über die suchfunktion kam da net viel bei raus

    liebe grüße
    T I M



  • Mit einem Texteditor eine *.rc Datei erstellen

    Dort

    Bildname RCDATA "c:\\datei.jpg"

    eintragen. Die *.rc Datei mit in das Projekt aufnehmen.

    Mittels TResourceStream die JPG laden und den Stream auf die JPG-Klasse umleiten



  • dern00b schrieb:

    wenn ich alle bilder einbinde ist das programm viel zu groß!
    das ist unmöglich.

    Ich denke nicht, das eine Resource das ist, was er will.

    Eine Resource-DLL schon eher. Ist im Prinzip das gleiche, nur eben mit einer DLL. Die kannst du dann per .lib in dein Projekt aufnehmen und bläst damit dein Programm nicht auf. Allerdings würde ich eher zur Resource greifen, auch wenn das Programm dann größer wird.



  • wie groß ist die ressourcendatei danach?
    so groß wie die bilder insgesamt?



  • wird die ressourcen datei dynamisch eingebunden?
    sodass nur das bild gerade geladen sit, welches man auch will?
    weil 30 bilder a 200kb ^^



  • Die Ressourcen-Datei wird statisch in deine Anwendung einkompiliert.
    Dein Programm wird dabei um die Gesamtgröße der Bilder größer.

    Die Ressourcen-DLL wird dynamisch oder statisch gelinkt und dann von deinem Programm geladen. Das Speicherhandling hängt von der Implementierung ab.
    Du erhälst eine Datei, welche deine Graphiken beinhaltet, und deine Anwendung nicht aufbläht.



  • also ist die ressource-datei doch doof. weil dann wird das programm ja riesengroß!! ^^
    und wie bilde cih eine ressource dll?
    weil es soll auch nur das bild im speicher stehen, welches der user haben will



  • Einfach mal lesen:

    Die Ressourcen-DLL wird dynamisch oder statisch gelinkt und dann von deinem Programm geladen. Das Speicherhandling hänht von der Implementierung auf.
    Du erhälst eine Datei, welche deine Graphiken beinhaltet, und deine Anwendung nicht aufbläht.

    Also nutze eine DLL mit den Grafiken und lade diese dynamisch, obwohl 20 x200Kb - Wo ist das Problem?



  • naja - dann ist das programm um 6 mb größer. nicht alle haben 1gb arbeitsspeicher. und die, die echt nur 128mb haben oder was weiß ich haben ein prob

    ich probiere es mal statisch

    wie mache ich denne ine dynamische rcdatei?
    Danke für eure hilfe, vorallem mal wieder christian 😉



  • ich probiere es mal statisch

    wie mache ich denne ine dynamische rcdatei?

    Es geht um eine statische oder dynamische DLL.

    Ein DLL Projekt anlegen und das machen, was ich im ersten Posting geschrieben habe.

    Ansonsten war das gerade hier Thema

    http://www.c-plusplus.net/forum/viewtopic-var-t-is-131160.html



  • moinsen
    ist das so denn richtig gekotet? 🙂

    00 RCDATA "D:\playa\00.jpg"
    
    01 RCDATA "D:\playa\01.jpg"
    02 RCDATA "D:\playa\02.jpg"
    03 RCDATA "D:\playa\03.jpg"
    04 RCDATA "D:\playa\04.jpg"
    05 RCDATA "D:\playa\05.jpg"
    06 RCDATA "D:\playa\06.jpg"
    07 RCDATA "D:\playa\07.jpg"
    09 RCDATA "D:\playa\09.jpg"
    10 RCDATA "D:\playa\10.jpg"
    
    11 RCDATA "D:\playa\11.jpg"
    14 RCDATA "D:\playa\14.jpg"
    15 RCDATA "D:\playa\15.jpg"
    16 RCDATA "D:\playa\16.jpg"
    17 RCDATA "D:\playa\17.jpg"
    18 RCDATA "D:\playa\18.jpg"
    19 RCDATA "D:\playa\19.jpg"
    20 RCDATA "D:\playa\20.jpg"
    21 RCDATA "D:\playa\21.jpg"
    22 RCDATA "D:\playa\22.jpg"
    
    24 RCDATA "D:\playa\24.jpg"
    25 RCDATA "D:\playa\25.jpg"
    26 RCDATA "D:\playa\26.jpg"
    27 RCDATA "D:\playa\27.jpg"
    30 RCDATA "D:\playa\30.jpg"
    31 RCDATA "D:\playa\31.jpg"
    35 RCDATA "D:\playa\35.jpg"
    

    so vonner syntax her?

    und das soll ich jetzt mit dem dll-projekt amchen?
    also dort den kompletten texdt raus - und das da rein?
    ok
    und dann?

    ja, ich weiß ich bin ein n00b der immer dumme fragen stellt 😃



  • zur kleinen info - es geht darum, das sind die spieler von werder.
    und deswegen darf ich die net so mitgeben die dateien - weil die darin ihre ehre verletzt sehen. die kann zwar jeder volldepp fratis runterladen - aber naja^^



  • Nein die CPP Datei des bleibt unangetastet.

    [url]http://www.marquardtnet.info/cecke/tutorials.8/8_dll.html#Resourcen in einer DLL[/url]

    Du nimmst statt der res Datei eine rc Datei in das Projekt mit auf



  • Alter Mann ist müde und geht jetzt in die Heia -> ggf. weiteres morgen



  • *heul*

    naja, vllt schaffe ich das auch schona lleine heude - was ich bezweifle^^

    gn8

    cu



  • Ich habe mein Tutorial noch um einige Hinweise für das Laden von JPGs aus DLL-Resourcen erweitert.

    Das sollte dir helfen

    http://www.marquardtnet.info/cecke/tutorials.8/8_dll.html


Anmelden zum Antworten