Hallo,
mit einem Tool soll ein User ein weiteres (eigenes) Tool erstellen können und hierzu auch ein eigenes Icon verwenden dürfen.
In dem Tool ist also eine fertige .exe angehängt, was abgesplittet und als .exe gespeichert wird. Da werden dann noch paar Daten drangehangen und der User soll eben für diese .exe das Icon selber wählen können.
Wie macht man sowas?
User soll Icon für .exe selber wählen können
User soll Icon für .exe selber wählen können
PB 6.21 | Win 11
Du könntest Dich ein wenig drüber schlau machen und vielleicht rausfinden, ob das Icon immer an der gleichen Stelle der EXE gespeichert wird. Gut möglich, daß das so ist, kann aber auch sein, daß die Stelle variiert. Dennoch gibt es einen Header für die EXE (wotsit.org nachschlagen), und wenn Du den ausliest, kriegst Du auf jeden Fall die Stelle raus, wo das Icon zu finden ist.
Ich vermute aber eher, daß es immer an der gleichen Stelle ist, sonst müßte Windows ja bei jeder EXE, die es anzeigt, extra den Header auslesen um das Icon zu finden.
Es gibt ein Tool namens ResourceHacker, damit kann man Icons aus bestehenden EXEn austauschen. Hier ist jede Ressource irgendwie durchnumeriert. Vielleicht hilft Dir das weiter, evtl. gibt es einen SourceCode des Programms.
Ich vermute aber eher, daß es immer an der gleichen Stelle ist, sonst müßte Windows ja bei jeder EXE, die es anzeigt, extra den Header auslesen um das Icon zu finden.
Es gibt ein Tool namens ResourceHacker, damit kann man Icons aus bestehenden EXEn austauschen. Hier ist jede Ressource irgendwie durchnumeriert. Vielleicht hilft Dir das weiter, evtl. gibt es einen SourceCode des Programms.


ZeHa hat bisher kein Danke erhalten.
Klicke hier, wenn Du wissen möchtest, woran ihm das vorbeigeht.
-
- Beiträge: 752
- Registriert: 14.09.2004 21:39
- Kontaktdaten:
Die Icons werden als Ressource abgespeichert, normalerweise ist die Icon-Ressource mit Nr. 0 das Icon, welches im Explorer angezeigt wird, es gibt natürlich noch mehr Icons, aber die werden auch nur im "Icon auswählen"-Dialog angezeigt. Man findet auf http://www.wotsit.org/ sehr schnell ein aufschlussreiches Dokument über den Aufbau -> "WINHDR.TXT".
In der Tat liest Windows immer die Header aus um das Icon zu ermitteln. Ich hab mich auch mal ein bischen mit dem PE-Format (NT .exe) beschäftigt. Aber das ist garnichtmal so unkompliziert. Allerdings durchaus machbar das Icon auszutauschen.ZeHa hat geschrieben: Ich vermute aber eher, daß es immer an der gleichen Stelle ist, sonst müßte Windows ja bei jeder EXE, die es anzeigt, extra den Header auslesen um das Icon zu finden.
Zu mir kommen behinderte Delphine um mit mir zu schwimmen.
Wir fordern mehr Aufmerksamkeit für umfallende Reissäcke!
Wir fordern mehr Aufmerksamkeit für umfallende Reissäcke!

- ts-soft
- Beiträge: 22292
- Registriert: 08.09.2004 00:57
- Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel - Wohnort: Berlin
Folgende 3 API-Aufrufe werden benötigt:
Beispiel mit Manifest statt Icon im CodeArchiv, restlichen Infos sollte man
dem PSDK entnehmen können.
Unter NT als Unicode verfügbar, unter Win9x wird "Unicows.dll" benötigt.BeginUpdateResource
UpdateResource
EndUpdateResource
Beispiel mit Manifest statt Icon im CodeArchiv, restlichen Infos sollte man
dem PSDK entnehmen können.
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
