C++ - Icon in DLL hinzufügen

  • Hallo,
    Ich hab mal wieder ein Problem und zwar:
    Ich möchte mittels Visual C++ Icons zu einer DLL hinzufügen. Wie ich eine DLL erstelle weiß ich schon, nur nicht wie ich ein Icon hinzufügen kann. Hab mir schon "resource hacker" angeguckt aber ich würde es gerne mit C++ machen. Kann mir da jemand helfen?

    Vielen Dank!!

  • Falls du die Express-Versiopn hast, ist kein graphischer Ressourcen-Editor dabei. Teste dann mal diese Anleitung: http://computerprogramming.suite101.com/article.cfm/vc…rnal_res_editor Alternativ kannst du die .rc-Datei von Hand bearbeiten :D
    //Edit: mir fällt gerade ein, am besten verwendest du ResEd, mit dem du die rc-Dateien bearbeiten kannst, damit ist die Anleitung von oben hinfällig.

    So bindest du den Editor in VC++ ein: Rechtsklick auf die .rc-Datei > Öffnen mit -> Hinzufügen. Hier die Daten eingeben (Pfad + Anzeigename) Dann OK klicken und danach als Standard. Dann wieder mit OK bestätigen und fertig ;)

    3 Mal editiert, zuletzt von progandy (14. Januar 2010 um 16:10)

  • Hmm,..

    Marthog, könntest du das genauer erklären?

    //Edit1: Also ich hab ja schon das fertige Icon und möchte dieses lediglich in der DLL speichern.

    Danke

  • Klar hast du das Icon ja schon ;). Um dieses in eine DLL einzubinden, muss C++ aber wissen, was es einbinden soll. Das wird dem Compiler mit der rc-Datei gesagt, in der unter anderem der Pfad zur Icon-Datei drinsteht. Diese kannst du beispielsweise von Hand oder einfacher mit ResEd bearbeiten.

    Sollte auch deine DLL schon als .dll vorliegen (fertig kompiliert) kannst du das Icon auch mit dem ResHacker einbauen.

  • Wie kann ich eine leere DLL erstellen? Habs mit Visual C++ versucht, aba geht nich ohne inhalt.

  • Leere DLLs macht man am besten mit ASM, da ist dann kein überflüssiger Code drin. Hab dir mal eine gemacht, die du direkt mit Reshacker verwenden kannst. (2,5 kb)

    Wenn man noch mehr optimiert, kommt man auf die 1024kb, die Padmak bei seiner geschafft hat ;)

  • Vielen Dank an: Marthog, progandy, tince, nuts, funkey und alle anderen die sich mein Thema angeguckt haben!
    Die Sache ist damit erledigt

    Viele Grüße

    • Offizieller Beitrag

    Hallo,

    man kann übrigens auch mit mit MinGW eine Resourcen-DLL erstellen.
    Als erstes muss eine rc-datei erstellt werden, die ICON die ich im Beispiel benutze findet ihr im AutoIt3-Verzeichnis unter "Aut2Exe\Icons".

    resource.rc

    Danach kann man mit windres, ist bei MinGW dabei, eine Objekt-Datei mit den Resourcen erstellen.

    Code
    windres resource.rc -o resource.o

    Aus dieser Objekt-Datei wird dann mit g++ die DLL erstellt.

    Code
    g++ -shared -o resource.dll resource.o