Hallo,
ich möchte IE-Favoriten erzeugen/bearbeiten.
Die ini-artigen Textfiles, die allenthalben beschrieben sind, habe ich bei mir (zurück bis IExplore 6) nicht gefunden; in den Favoriten-Ordnern sind url-Dateien.
Das Erzeugen habe ich auch nach vielem Stöbern (msdn, foren) hinbekommen, nur die SetDescription-Anweisung bleibt ohne jede Wirkung.
Hier ist der Code (nackt, ohne Fehlerbehandlung etc.).
Jeder Aufruf liefert ordentlich S_OK zurück. Ich benutze Delphi 2007, die Unit IEConst habe ich im Netz gefunden
Vielleicht kann mir jemand weiterhelfen:
- Was mache ich falsch mit dem SetDescription ?
- kann man das Ganze mit Delphi-Mitteln eleganter lösen ?
- Auch im Hinblick auf das Auslesen/Bearbeiten ?
Danke schonmal
Reinhold
ich möchte IE-Favoriten erzeugen/bearbeiten.
Die ini-artigen Textfiles, die allenthalben beschrieben sind, habe ich bei mir (zurück bis IExplore 6) nicht gefunden; in den Favoriten-Ordnern sind url-Dateien.
Das Erzeugen habe ich auch nach vielem Stöbern (msdn, foren) hinbekommen, nur die SetDescription-Anweisung bleibt ohne jede Wirkung.
Hier ist der Code (nackt, ohne Fehlerbehandlung etc.).
Code:
uses ... ActiveX, ComObj, ShlObj, IEConst; const IID_IPersistFile : TGUID = (D1: $0000010B; D2: $0000; D3: $0000; D4: ($C0,$00,$00,$00,$00,$00,$00,$46)); procedure CreateURL(url, lnkfile, lnkdesc: string); var PersistFile: IPersistFile; ShellLink: IShellLink; IURL: IUniformResourceLocator; begin CoCreateInstance(CLSID_InternetShortcut, nil, CLSCTX_InProc_Server, IID_IUniformResourceLocatorA, IURL); IURL.QueryInterface(IID_IPersistFile, PersistFile); IURL.QueryInterface(IID_IShelllinkA, ShellLink); IURL.SetURL(PChar(url), 0); ShellLink.SetDescription(PChar(lnkdesc)); PersistFile.Save(StringToOLEStr(lnkfile), True); end;
Vielleicht kann mir jemand weiterhelfen:
- Was mache ich falsch mit dem SetDescription ?
- kann man das Ganze mit Delphi-Mitteln eleganter lösen ?
- Auch im Hinblick auf das Auslesen/Bearbeiten ?
Danke schonmal
Reinhold