Hallo,
Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
begin
if Excel_Vorhanden() then
begin
ShowMessage(' Excel ist vorhanden');
end
else
begin
ShowMessage(' Excel ist nicht vorhanden');
end;
end;
function TForm1.Excel_Vorhanden (): boolean;
var
olevExcel: OleVariant;
begin
Result:= TRUE;
try
olevExcel := GetActiveOleObject('Excel.Application');
except
try
olevExcel := CreateOleObject('Excel.Application');
except
Result:= FALSE;
exit;
end;
end;
end;
Warum bei einer einfachen True/False Abfrage eine
Exception missbrauchen? Exceptions sind eigentlich dazu gedacht Fehler zu behandeln, die man nicht selbst beeinflussen kann. Netzwerkstecker wird gezogen, Festplatte voll, Diskette wird vom Benutzer ausgeworfen. Und die kein sinnvolles weiter Ausführen des Codes an der Stelle erlauben. Und du verschachtelst sogar noch zwei Exceptions.