Ein möglicher Ansatz wäre:
Delphi-Quellcode:
uses
Variants,
StrUtils,
MSHTML;
function ExtractLink(e: IHTMLElement): String;
begin
if AnsiIndexText(e.tagName, ['a']) = 0 then
Result := VarToStr(e.getAttribute('href', 0))
else if Assigned(e.parentElement) then
Result := ExtractLink(e.parentElement)
else
Result := '';
end;
Die Funktion wird mit ExtractLink(pdispReserved as IHTMLElement) aufgerufen und liefert in der gezeigten Version einen
URL, wenn einer vorhanden ist und zwar auch dann, wenn es sich um einen image link handelt. Geht auch ohne Rekursion.
marabu