// Mir der Funktion "FileType" kann man sich den Datei-Typ anzeigen lassen,
// der hinter einer Extension
(Dateiendung) steckt. Allerdings verwaltet
// Windows eigene Typen, denn wenn man im Windows-Explorer Dateien nach Typ
// sortieren lässt, werden sie nicht nach ihrer Extension geordnet, sondern
// nach einem Windows-internen Typ. Diesen Typ kann man sich
(entsprechend
// zur Extension) mit der Funktion "WindowType" anzeigen lassen.
// siehe auch
Infos für Dateiendungen auffinden

// Getestet mit D4 unter XP

uses Registry, Shellapi; 
 
function WindowType(endung: string): string; 
var 
  tfi: TSHFileInfo; 
begin 
  SHGetFileInfo(PChar(endung), 0, tfi, SizeOf(TSHFileInfo), 
    SHGFI_USEFILEATTRIBUTES or SHGFI_TYPENAME); 
  Result := tfi.szTypeName; 
end;


function FileType(FileExt: string): string; 
var 
  Reg: TRegistry; 
begin 
  Reg := TRegistry.Create; 
  Reg.RootKey := HKEY_CLASSES_ROOT; 
  if Reg.OpenKey(FileExt, False) then begin 
    FileType := Reg.ReadString(''); 
    Reg.CloseKey; 
  end; 
  Reg.Free; 
end; 
 
// Beispielaufruf
procedure TForm1.Button3Click(Sender: TObject); 
begin 
  ShowMessage(FileType('.doc') + #13 + WindowType('.doc')); 
end; 


Zugriffe seit 6.9.2001 auf Delphi-Ecke