Delphi-Quellcode:
li := Listview1.Items.Add;
sl := TStringlist.create;
splitstring(filename,'\',sl);
li.Caption := sl[sl.count-1];
sl.free;
// jetzt Zugriff auf die System-Imageliste
// und nur den Typennamen und das Symbol
// ermitteln!
ZeroMemory(@fi,sizeof(fi));
SHGetFileInfo(pchar(filename),0,fi,sizeof(fi),
SHGFI_ICON or SHGFI_SYSICONINDEX or SHGFI_TYPENAME);
// Icon-Index zuweisen, ...
li.ImageIndex := fi.iIcon;
fi.
// "iIcon" ist eine Integer-Variable und erhält somit
// wirklich nur den Index auf das Symbol, aber nicht
// das Symbol als solches. Daher ist es nun egal, wie
// oft ein Dateityp im Ordner vorkommt.
// ... & Typennamen als Untereintrag hinzufügen
li.SubItems.Add(filename);
listviewpanel.Visible := true;
kriege ich auch hiermit raus womit ein Programm aufgerufen werden soll ??
Ich hab zum beispiel eine Beispiel.doc und möchte die mit
WinExec(PChar('c:\Beispiel.doc'), SW_show);
aufrufen. Dann passiert aber leider nix. Muß ich sagen WinExec(PChar('winword.exe c:\Beispiel.doc'), SW_show); ??
Wie kriege ich das dann raus immer anhand der Dateianhänge ??
Ach ja nutze Delphi 5