Ich gehe da einen Umweg über Temp Verz. und überlasse Windows das öffnen (aller Dateien)
Delphi-Quellcode:
ext:=DataModule2.Dokumente.FieldByName('Endung').AsString ;
Datei:= DataModule2.Dokumente.FieldByName('Dateiname').AsString;
TBlobField(DataModule2.Dokumente.FieldByName('Dokument')).SaveToFile(GetDirTemp+'\'+Datei+ext);
DataModule2.Dokumente.Close;
if ShellExecute(Application.Handle,'open',PChar(GetDirTemp+'\'+Datei+ext),nil, nil, SW_NORMAL) <= 32 then
ShowMessage('Dokument: '+Datei+ext+' kann nicht geöffnet werden');