none
Mehrere Icons in EXE RRS feed

  • Frage

  • Hallo,

    diese Frage wurde schon öffter gestellt: Ich möchte meiner EXE mehrere Icons geben. Das Problem dabei ist aber, dass wenn ich eine RES-Datei verwende, die Manifest z.B. die Informationen über die Startrechte usw. beinhaltet, wegfällt.

    Füge ich in der RES eine XP Manifest-Datei hinzu (selbst wenn ich diese aus VS kopiere) wird diese

    1. Ignoriert
    2. Beendet meine Anwendung nicht mehr, außer über Taskmanager.

    Gibt es Möglichkeiten mehrere Icons zuzufügen, ohne dies bei jedem erstellen per Hand tun zu müssen und zugleich eine funktionierende Manifest mit einzubetten?

    Wenn diese funktion nur in der Vollversion zu Verfügung stehen sollte (Ich nutze Express), wäre diese Info auch hilfreich!

    Danke im Voraus!


    FLOGERSOFT.de - Top Apps, wie z.B. 'Die Taschenlampe' oder ganz neu dabei: 'LiveClock' die Echtzeituhr für ihre Windows Phone Live-Kachel - mit Wettervorhersage!

    Freitag, 6. Juni 2014 13:36

Antworten

  • Ich habe das Ganze nun etwas getestet und nach Lösungen recherchiert. VS scheint von sich aus nichts dieser Art zu unterstützen. In dieser Frage wurden 2 Lösungsmöglichkeiten vorgeschlagen. Ich denke, das beide mit der Express-Version funktionieren würden. Da der Link zum Erstellen einer RES-Datei nicht mehr funktioniert und RES-Dateien nicht sonderlich gut dokumentiert sind, würde ich eher eine RC-Datei verwenden. Das ist natürlich etwas aufwendig, sollte aber funktionieren.

    2 Andere Möglichkeiten die Icons mit auszuliefern wären folgende:

    1. Die OCI-Dateien direkt mit in den Instalaltionsordner entpacken.
    2. Du erstellst eine Iconbibliothek. Ich weiß, das IcoFx das kann, das Programm ist aber keine Freeware. Wenn ich mich recht erinnere, waren es allerdings die ersten Versionen davon - sicher bin ich mir aber nicht.
      Ein anderes Programm, dass das kann kenne ich auch nicht.

    Beide Lösungen laufen auf mindest eine weitere Datei hinaus. Was du nun machst hängt wohl davon ab, wie viel Zeit du mit dem Problem verbringen willst.


    Tom Lambert - C# MVP
    Bitte bewertet- und markiert Beiträge als Antwort. Danke.
    Nützliche Links: .NET Quellcode | C# ↔ VB.NET Konverter
    Ich: Webseite | Code Beispiele | Facebook | Twitter | Snippets

    • Als Antwort markiert Flo0806 Mittwoch, 11. Juni 2014 22:29
    Freitag, 6. Juni 2014 14:46
    Moderator
  • Hallo zusammen,

    Windows erwartet seine Ressourcen unmanaged / nativ - mit .NET Ressourcen will es nichts zu tun haben.

    Üblicherweise wird RES-Datei - über eine RC-Datei erzeugt (naja wenn man den VC Compiler nimmt).

    Ein Codeproject Artikel der das Vorgehen beschreibt:
    How to Embed Multiple Icons and Color/Animated Cursors in .NET Executable or DLL Library as Native Win32 Resources using VS2010

    Will man sich das Leben vereinfachen, sollte man eine eigenständige DLL mit solchen Ressourcen erzeugen.

    Gruß Elmar

    • Als Antwort markiert Flo0806 Mittwoch, 11. Juni 2014 22:29
    Freitag, 6. Juni 2014 15:05

Alle Antworten

  • Hallo,
    was genau verstrehst du denn unter hinzufügen? An was ich jetzt denke:

    1. Eingebettete Icons, wie sie die Windows DLLs haben. Dadurch können beispielsweise Ordner auf ein Icon der Anwendung referenzieren.
    2. Bilder, die du in der Anwendung selbst verwendest. Das sind unter WPF nicht zwingend ICO-Dateien.

    Grundsätzlich denke ich schon das das hinzufügen funktioniert. Auch mit der Express-Version mit Manifest.


    Tom Lambert - C# MVP
    Bitte bewertet- und markiert Beiträge als Antwort. Danke.
    Nützliche Links: .NET Quellcode | C# ↔ VB.NET Konverter
    Ich: Webseite | Code Beispiele | Facebook | Twitter | Snippets

    Freitag, 6. Juni 2014 13:38
    Moderator
  • Hey,

    jap, eingebettete. Ich möchte eine Dateiverknüpfung erstellen und auf ein zweites Icon in meiner Exe verweisen. Das Problem ist eben das VS nur zwei Optionen bietet:

    1. Manifest und Symbol

    2. .RES-Datei

    Beides geht einfach so mal leider nicht. Und mein Versuch eine RES mit Manifest zu erstellen (egal ob original vom Programm erzeugt, oder die, die VS erzeugt) ist wie oben beschrieben gescheitert. Die EXE nimmt diese Manifest nicht an...

    MFG


    FLOGERSOFT.de - Top Apps, wie z.B. 'Die Taschenlampe' oder ganz neu dabei: 'LiveClock' die Echtzeituhr für ihre Windows Phone Live-Kachel - mit Wettervorhersage!

    Freitag, 6. Juni 2014 13:59
  • Ich habe das Ganze nun etwas getestet und nach Lösungen recherchiert. VS scheint von sich aus nichts dieser Art zu unterstützen. In dieser Frage wurden 2 Lösungsmöglichkeiten vorgeschlagen. Ich denke, das beide mit der Express-Version funktionieren würden. Da der Link zum Erstellen einer RES-Datei nicht mehr funktioniert und RES-Dateien nicht sonderlich gut dokumentiert sind, würde ich eher eine RC-Datei verwenden. Das ist natürlich etwas aufwendig, sollte aber funktionieren.

    2 Andere Möglichkeiten die Icons mit auszuliefern wären folgende:

    1. Die OCI-Dateien direkt mit in den Instalaltionsordner entpacken.
    2. Du erstellst eine Iconbibliothek. Ich weiß, das IcoFx das kann, das Programm ist aber keine Freeware. Wenn ich mich recht erinnere, waren es allerdings die ersten Versionen davon - sicher bin ich mir aber nicht.
      Ein anderes Programm, dass das kann kenne ich auch nicht.

    Beide Lösungen laufen auf mindest eine weitere Datei hinaus. Was du nun machst hängt wohl davon ab, wie viel Zeit du mit dem Problem verbringen willst.


    Tom Lambert - C# MVP
    Bitte bewertet- und markiert Beiträge als Antwort. Danke.
    Nützliche Links: .NET Quellcode | C# ↔ VB.NET Konverter
    Ich: Webseite | Code Beispiele | Facebook | Twitter | Snippets

    • Als Antwort markiert Flo0806 Mittwoch, 11. Juni 2014 22:29
    Freitag, 6. Juni 2014 14:46
    Moderator
  • Hallo zusammen,

    Windows erwartet seine Ressourcen unmanaged / nativ - mit .NET Ressourcen will es nichts zu tun haben.

    Üblicherweise wird RES-Datei - über eine RC-Datei erzeugt (naja wenn man den VC Compiler nimmt).

    Ein Codeproject Artikel der das Vorgehen beschreibt:
    How to Embed Multiple Icons and Color/Animated Cursors in .NET Executable or DLL Library as Native Win32 Resources using VS2010

    Will man sich das Leben vereinfachen, sollte man eine eigenständige DLL mit solchen Ressourcen erzeugen.

    Gruß Elmar

    • Als Antwort markiert Flo0806 Mittwoch, 11. Juni 2014 22:29
    Freitag, 6. Juni 2014 15:05
  • Hallo,

    nach langer suche habe ich noch eine Gute Möglichkeit gefunden.. Eine RES-Datei einzubinden ist (Bei dem was ich machen möchte) relativ einfach. Mit dem SDK-Tool rc.exe erstelle ich mir meine RES Datei und binde diese in VS ein.

    Das klappt mit der Manifest usw. wunderbar! Ich poste die nächsten Tage wie das geht, falls noch jemand interesse daran hat!

    MfG


    FLOGERSOFT.de - Top Apps, wie z.B. 'Die Taschenlampe' oder ganz neu dabei: 'LiveClock' die Echtzeituhr für ihre Windows Phone Live-Kachel - mit Wettervorhersage!

    Mittwoch, 11. Juni 2014 23:12