Hi,
es gibt eine SHLWAPI Funktion
PathFindOnPath(), welche das Verhalten der Shell (CMD) beim Suchen nach einem ausführbaren Befehl nachbildet - ähnlich wie
which unter Unix. Allerdings muss man bei fehlender Extension noch ein paar Zeilen selbst schreiben. Wenn Memo die Strings aus Beitrag #1 enthält, könnte das so aussehen:
Delphi-Quellcode:
procedure TDemoForm.ButtonClick(Sender: TObject);
var
cmd, path: string;
i: Integer;
begin
with Memo do
for i := 0 to Pred(Lines.Count) do
begin
cmd := ExtractField(Lines[i], 0);
path := FindCommand(cmd);
if path = '' then path := cmd;
ShowMessage(ExpandEnvStr(path));
end;
end;
Grüße vom marabu