Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Bestimmtes Icon aus Shell32.dll laden (https://www.delphipraxis.net/143328-bestimmtes-icon-aus-shell32-dll-laden.html)

Neutral General 13. Nov 2009 12:16


Bestimmtes Icon aus Shell32.dll laden
 
Hi,

Ich möchte gerne das 16x16 Ordner-Icon aus der Shell32.dll laden. Gibt es da irgendwo Konstanten, bzw ist die ID immer dieselbe (in jeder Windows Version). Weil ansonsten müsste ich ausprobieren...

Gruß
Neutral General

stho 13. Nov 2009 12:20

Re: Bestimmtes Icon aus Shell32.dll laden
 
wie währe es damit, diese dll aus zu quetschen (Gibt passende Tools im netz die Icons aus .dll fischen) und die gewünschten icons dann in
TImageList zu laden? Dann kannst du sie dir von dort aus holen :zwinker:

ansonsten muss sich wohl mal jemans von den "Pro"-Usern an dein Problem machen.
Denn mit dlls habe ich noch gar nicht gearbeitet...

Neutral General 13. Nov 2009 12:23

Re: Bestimmtes Icon aus Shell32.dll laden
 
Hi,

Ja das mit der Imagelist war meine erste Idee. Aber die DLL-Varianten ist schöner, weil dann auch immer schön die zur Windows Version passenden Ordner-Icons angezeigt werden würden ;)

Bernhard Geyer 13. Nov 2009 12:24

Re: Bestimmtes Icon aus Shell32.dll laden
 
Zitat:

Zitat von stho
wie währe es damit, diese dll aus zu quetschen (Gibt passende Tools im netz die Icons aus .dll fischen) und die gewünschten icons dann in
TImageList zu laden? Dann kannst du sie dir von dort aus holen :zwinker:

Das ist ein 1a Rechteverletzung wenn du fremde Icons in die eigene Exe kompilierst.

Mithrandir 13. Nov 2009 12:27

Re: Bestimmtes Icon aus Shell32.dll laden
 
Welches Icon
hätten's denn gerne?

:zwinker:

Neutral General 13. Nov 2009 12:36

Re: Bestimmtes Icon aus Shell32.dll laden
 
Zitat:

Zitat von Daniel G


Naja gut. Und wie schließe ich von dieser Liste auf die ID? Jaa die steht da zwar... aber mal folgendes:

Bei meinem Vista hat das erste Icon die ID 6. Das ist dieses "Datei"-Icon. Dann folgen weitere "Datei"-Icons in verschiedenen größen bis einschließlich ID 11. 12 ist dann dieses RTF Icon. Diesem Bild zufolge müsste also das Ordner Icon bei 4*6 = 24 liegen. Tut es aber nicht! Das Ordner Icon was ich suche beginnt bei 32...


Mhhh.. Vergiss es.. 4 ist das richtige.. Mein ResHacker hat mich irritiert..

wicht 13. Nov 2009 12:40

Re: Bestimmtes Icon aus Shell32.dll laden
 
Wie wärs mit SHGetFileInfo()? Das kann man jedenfalls benutzen, um zu Dateierweiterungen das Icon zu bekommen - müsste doch auch mit Verzeichnissen gehen?
Wenn das Problem bis heute Abend noch besteht, was ich nicht denke, kann ich mal nachschauen, wenn ich zuhause bin. Hab das in meinen Programmen so gemacht glaube ich.

HTH

OregonGhost 13. Nov 2009 12:42

Re: Bestimmtes Icon aus Shell32.dll laden
 
Ich werfe nur mal dies ein:

When programs assume that the system will never change, episode 1

Fazit: Wenn's ein Ordner sein soll, kannst du dir das Icon des Ordners (oder eines beliebigen) mit MSDN-Library durchsuchenSHGetFileInfo besorgen. Aber lieber nicht aus irgendeiner System-DLL klauen.

stho 13. Nov 2009 12:42

Re: Bestimmtes Icon aus Shell32.dll laden
 
Zitat:

Zitat von Bernhard Geyer
Zitat:

Zitat von stho
wie währe es damit, diese dll aus zu quetschen (Gibt passende Tools im netz die Icons aus .dll fischen) und die gewünschten icons dann in
TImageList zu laden? Dann kannst du sie dir von dort aus holen :zwinker:

Das ist ein 1a Rechteverletzung wenn du fremde Icons in die eigene Exe kompilierst.

hm... nun, es war nur ein Gedanke. Entschuldige bitte. Ich möchte keinen zu irgendwelchen kriminellen Machenschaften verführen :oops:
Gibt ja genug Free-Icons im netz ^^

Bernhard Geyer 13. Nov 2009 12:50

Re: Bestimmtes Icon aus Shell32.dll laden
 
Zitat:

Zitat von stho
Gibt ja genug Free-Icons im netz ^^

Hier muß man aber auch aufpassen ob das Lizenzmodell der Icons auch für die eigene Anwendung passt. Bei Closed-Source lieber ein paar € ber GlyFx und Co. ausgeben und man ist vor unliebsammen überraschungen besser geschützt.


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:34 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz