AGB  ·  Datenschutz  ·  Impressum  







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

Ikone für Prg und Datei

Ein Thema von Willie1 · begonnen am 2. Sep 2025 · letzter Beitrag vom 3. Sep 2025
Antwort Antwort
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.693 Beiträge
 
Delphi 12 Athens
 
#1

AW: Ikone für Prg und Datei

  Alt Heute, 05:02
Projekt -> Ressourcen und Bilder fügt man zusätzliche Ressourcen ein, welche einen Namen bekommen,
aber dort kannst du nicht die "richtige" ID angeben, damit diese Ressource als App-Icon erkannt wird.
Fazit: dort garnicht (eigentlich)

In der RC gibt es eine Konstante MAINICON (ich glaube die hat den Wert 0)
ABER, da ich auch schon komische Dinge gesehn hab, z.B. hier was aus ddem FMX
Delphi-Quellcode:
Result := LoadIcon(MainInstance, 'MAINICON');
Result := LoadIcon(0, IDI_APPLICATION);
FMAppClass.hIcon := LoadIcon(MainInstance, PChar('MAINICON'));

// wobei IDI_APPLICATION = MakeIntResource(32512) aka PChar(32512)
Also versuch einfach mal MAINICON als Name im Ressourcen und Bilder anzugeben.

https://devblogs.microsoft.com/oldne...3-00/?p=111106

(wie und wo die zusätzlichen bzw. neuen Icons/Bilder aus den Projektoptionen eingebunden werden, hab ich ehrlich gesagt noch nie nachgesehn)



Am Einfachsten ist es wohl, wenn du im Projekt die Icons deaktivierst/entfernst
und dann eine eigene .RES, bzw. .RC in die .DPR einbindest.

Nur innerhalb der .DPR und .DPK kann man anstatt {$R xxxx.res} auch {$R xxxx.res xxxx.rc} verwenden.
(in PAS zwar auch, aber dort wird der RC-Parameter bösartig und ohne was zu sagen ignoriert)

Innerhalb der Projektdatei kümmert sich dann Delphi darum (bzw. die DPROJ/MSBuild), dass die RC zur RES kompiliert wird.


Ich vergesse immer, wie rum es ist. (müsste man ausprobieren)
Falls DOCH Delphi wieder ein eigenes Icon einfügt, dann wäre ja nun dessen ID/Name doppelt,
es kommt also eine Compilerwarnung (oder vielleicht auch erst später eine Warnung vom Linker), dass diese Ressource doppelt ist.

Welche Ressource dann verwendet wird,
* also die Erste und alle Nachfolgenden ignoriert
* oder die Letzte, also jeweils das Vorherige überschrieben
darauf kommt es nun an, ob du deine Ressource als Erstes oder Letztes, vor oder unter das {$R *.res} , in die DPR einfügen solltest),
damit im Fehlerfall dennoch dein ICON verwendet wird.

Alternativ den Icon-Eintrag im Projekt (*.DPROJ) aktualisieren.
Kann sein, dass jemand dafür schon ein Tool (Konsolenanwendung) dafür geschrieben hat,
oder man geht über die OpenToolsAPI da dran.
(notfalls könnte man z.B. auch via XML-Komponente dran rumfummeln)
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu (Heute um 05:04 Uhr)
  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 18:32 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz