Friends
-
Loading...Sven about 3 hours ago -
Loading...robbyrocko about 1 year ago -
Loading...mondkroete 15 minutes ago -
Loading...ulex 8 days ago -
Loading...sixtus42 about 10 hours ago -
Loading...red667 about 4 hours ago -
Loading...catarino about 2 hours ago -
Loading...t0x1c 3 days ago -
Loading...rip about 2 hours ago -
Loading...Xjs 33 minutes ago - +27
-
Loading...chepedaja 42 minutes ago -
Loading...0db0 about 1 year ago -
Loading...chillout about 19 hours ago -
Loading...classless 3 days ago -
Loading...25c3 1 day ago -
Loading...myhead 4 days ago -
Loading...hothou 3 minutes ago -
Loading...brightbyte 14 minutes ago -
Loading...dev about 1 month ago -
Loading...tu-quotes about 10 hours ago -
Loading...durchzug 3 days ago -
Loading...wytukaze 2 days ago -
Loading...windschuetze about 9 hours ago -
Loading...updates 2 months ago -
Loading...nex about 1 month ago -
Loading...antifuchs 4 minutes ago -
Loading...alphabet about 16 hours ago -
Loading...just4ikarus 2 days ago -
Loading...coloredgrayscale about 1 hour ago -
Loading...krekk about 5 hours ago -
Loading...khorne 9 days ago -
Loading...Nook 1 day ago -
Loading...bitcrash 5 months ago -
Loading...queitsch about 3 hours ago -
Loading...structering about 1 month ago -
Loading...xkcd 4 days ago -
Loading...Deva 21 minutes ago - +27
Click here to check if anything new just came in.
February 09 2010
C#/.net Scrapbook
- via kottke.org
Auch die übrigen Teile seines "Fun to Imagine"-Vortrags müsst ihr gehört haben!
“ Indes kann man sich nur wundern, mit welcher Sicherheit die neuen Hartherzigen davon ausgehen, ihr Einkommen einzig der eigenen Leistung zu verdanken. ”— Klassenkampf von oben: Jetzt heißt es betteln lernen – ZEIT ONLINE
“Haha, just reactivated my NDS + M3 Simply yesterday. I wanted to play Jagged Alliance 1 and ended up playing Prof. Layton and Braintraining.:D”
February 05 2010
SHGetFileInfo - Einfach die Icons von Dateien auslesen
.Net ist ein sehr mächtiges Framework. Es bietet für so gut wie alles relativ einfache Mechanismen an. Sei es zur Netzwerkkommunikation z.B. Remoting und WCF oder bei grafischen Benutzeroberflächen Winforms und WPF. Doch nicht für alle Funktionen des Betriebssystems gibt es auch ein Klasse bzw. Methode im .Net-Framework.
Eine dieser Funktion die es nicht in die File oder FileInfo Klasse geschaft hat ist die SHGetFileInfo Funktion. Durch sie kann der Programmierer das Icon einer beliebigen Datei lesen, jedenfalls wenn er C++ programmierer kann. Wie macht das der C#-Entwickler? Dieser kann sich die Dlls importieren und dann als statische Methode ansprechen.
Wie funktioniert das? Das ganze kann man in drei einfachen Schritten zusammen fassen:
- Benötigte Datenstrukturen in C# erzeugen.
- Über einen DLL-Import die benötigte Funktion als Methode einer Klasse erzeugen.
- Dieser Schritt ist optional, sollte aber bei einem "sauberen" Coder dazugehören: Abstrahieren und vereinfachen.
Diese Prozedur wird im Detail, sogar speziell für diese Funktion, vom MS Support erklärt. Hier zu finden.
Deswegen beschränke ich mich hier nur auf meine kleine Abstraktion. Aber keine Angst ich biete ein kleines Testprojekt samt Code unten zum Download an.
Im Moment habe ich Probleme mit dem Einfügen von formatiertem Code. Tut mir leid, sobald ich eine Lösung habe schiebe ich den Code für die Abstraktionsklasse nach.
So sieht dann die Testapplikation in Action aus:
Dazu einfach ein File auswählen und per Show-Button das Icon anzeigen lassen. In diesem Fall handelt es sich um eine Html-Datei die mein ChromePlus-Browser anzeigen würde.
Das ist eigentlich auch schon alles was zu tun ist. Der Download befindet sich wie immer auf meiner Suppe: Download
ShellFunctionTest
(RAR, 52.4 KB)Maybe Soup is currently being updated? I'll try again automatically in a few seconds...



