![]() |
mit Shellexecute auch Links folgen
Ich habe mir ein Programm geschrieben, welches bestimmte Dateien mit dem Standardprogramm öffnet. ALso kurz so:
Delphi-Quellcode:
Ich will damit erreich, dass das gleich passiert, wie es passieren würden, wenn man mit der Maus im Explorer doppelt drauf klickt. Aber leider habe ich festgestellt, dass das mit Links (=Verknüpfungen) nicht funzt.
shellexecute(MainForm.Handle, 'open', PChar(datei), nil, PChar(pfad), SW_SHOW);
Was muss ich da machen? |
Re: mit Shellexecute auch Links folgen
Also erstens mal ist der Pfad wohl bei Links irrelevant... Setze dort ebenfalls einfach nil.
Wie sieht dein Link denn genauer aus... Du musst schon http:// vorstellen, rsp. mailto: wenn du deinen Mailclient öffnen willst. |
Re: mit Shellexecute auch Links folgen
Zitat:
EDIT: Schidt, immernoch nicht präzise. Also ich meine Eine Verknüpfung auf eine Anwendung. Alternativ könnte ich natürlich an der Endung .lnk erkennen, dass es sich um einen Link handelt und diesen dann untersuchen. ABer auch das weiß ich cniht wie geht :-(. |
Re: mit Shellexecute auch Links folgen
Nach weiterer erschöpfender Googlelei habe ich doch noch was gefunden:
![]() da habe ich mir TShellLink runtergeladen. Damit ist es dann ganz einfach :-):
Delphi-Quellcode:
if extractFileExt(datei) ='.lnk' then
begin link :=TShellLink.Create; link.LoadFromFile(pfad + datei); pfad :=link.Path; datei :=extractFileName(pfad); pfad :=extractFilePath(pfad); link.Free; end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:39 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz