Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   [D2009] Nativer Ftp Client braucht Icons, wie geht das? (https://www.delphipraxis.net/197455-%5Bd2009%5D-nativer-ftp-client-braucht-icons-wie-geht-das.html)

KodeZwerg 7. Aug 2018 22:27

[D2009] Nativer Ftp Client braucht Icons, wie geht das?
 
Hallo, ich bastel an einer Art Datei/Ftp Manager, ähnlich wie bei TotalCommander, nur ist es bei mir immer fix.
Also ein Fenster für Lokal und ein zweites für die Ftp Ansicht.
Verwendete Komponenten, abgesehen von/für GUI ist alles Api, kein Indy oder der gleichen.
Meine Ansicht für Lokale Dateien ist fertig, auf Ftp Seite existiert bereits ein Listing aller Verzeichnisse und Dateien.
Jetzt würde ich gerne die Ftp Ansicht auch mit Icons aufhübschen, finde aber nichts passendes.

Bevor ich noch mehr Zeit verschwende frage ich mal Euch Experten, kann man über Ftp überhaupt Icons abrufen?
Mein momentanes Resultat ist, das ich das Lokale System nach deren Registry verlinkung abfrage, klappt ja soweit auch ganz gut, .exe Dateien haben nun alle das selbe Applikation Icon und das würde ich gerne ändern.

Bin für Tipps auch weit ab vom Feld dankbar, vielleicht ist ja mein Vorhaben zu realisieren auch ein falscher Ansatz.

hoika 8. Aug 2018 07:45

AW: [D2009] Nativer Ftp Client braucht Icons, wie geht das?
 
Hallo,
die Icons sind ja meisten in der Exe selbst als Ressource.
Wenn Du ein Icon brauchst, musst Du wohl die Datei herunterladen und das Icon extrahieren.
Code zum "Extrahieren" findest Du über Google.

Neutral General 8. Aug 2018 08:35

AW: [D2009] Nativer Ftp Client braucht Icons, wie geht das?
 
Du musst entweder für alle Dateitypen eigene Icons definieren oder wie du gesagt hast in der Registry nachschauen.
Bei exe-Dateien hast du keine Chance, wenn du nicht die komplette Datei vorher runterlädst (was wahrscheinlich nicht Sinn der Sache ist).

KodeZwerg 8. Aug 2018 10:06

AW: [D2009] Nativer Ftp Client braucht Icons, wie geht das?
 
Danke für Eure Vor- bzw- Ratschläge.
Meine Hoffnung bestand darin nur ein paar wenige KBytes übertragen zu müssen um an das eingebettete Icon zu gelangen.
Daran bastel ich immer noch weil es mir in der Theorie als machbar erscheint.
Theorie:
Übertrage PE Header, Werte Header aus für Resource Position, übertrage Resource, hole aus Bytes das Icon raus.

Nun verfolge ich ein weiteres Ziel um das gewünschte Ergebnis zu erhalten, da weiß ich nur noch nicht genau wie ich es anstellen muss, erst mal Lesen, vielleicht ist das ja auch nicht möglich.... :)

Neues Ziel:
Einen Service oder Tool bereitstellen was mir ähnlich wie Windows sogenannte ThumbNails erstellt, ob nur virtuell für Übertragung (das strebe ich zumindest an) oder komplett physisch als mini-Datei/DB auf dem Ftp zum abrufen, auf eines von beiden läuft es hinaus, wünscht mir Glück.

Ein Ersatzplan falls das auch scheitert steht schon bereit, der klappt zu 100%.
Da die Dateien auf dem Ftp mit meinem Dialog kopiert werden, extrahiere ich lokal das Icon und schubse es separat mit auf Ftp. Im Nachhinein nur checken ob diese Datei existiert ansonsten aus Registry das Icon laden.

Vielleicht lege ich für Icons auf Ftp einen eigenen Ordner an, mal schauen was Praxis-Tests später ergeben falls ich die Theorie zum direkten auslesen nicht umsetzen kann.

So wie es ausschaut werde ich lokal wohl auch mit einer DB arbeiten um Traffic zu senken, Dateiname plus das bereits geladene Icon und ein Filehash, auf die Weise sollte ich auch irgendwann ans Ziel kommen.

Danke fürs Zuhören.

stOrM 8. Aug 2018 13:23

AW: [D2009] Nativer Ftp Client braucht Icons, wie geht das?
 
Warum so kompliziert? Bei mir funzt das: Get the icon of a file extension without having a file

KodeZwerg 8. Aug 2018 13:42

AW: [D2009] Nativer Ftp Client braucht Icons, wie geht das?
 
Zitat:

Zitat von stOrM (Beitrag 1410127)

Für lokale Dateien mag das funktionieren, für non-Lokal wo man nur das Icon der Extension benötigt auch, aber für das was ich haben möchte (individuelles .exe Icon von Ftp) ist Dein Vorschlag leider unbrauchbar.
Ich geh bei meiner Icon aus Registry Methode im Grunde genauso vor, bei mir ist es eine doppelt-verschachtelte Registry Api Abfrage, es arbeitet sehr flott bei mir.


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:21 Uhr.

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