Entwickler-Ecke

Windows API - .lnk per ShellExecute aufrufen.


blackbirdXXX - Do 16.10.03 22:01
Titel: .lnk per ShellExecute aufrufen.
Ich habe eine Datei mit dem namen start.lnk. Diese möchte ich per ShellExecute aufrufen. Das funktioniert aber nicht. Weiß jemand wie das geht?


toms - Do 16.10.03 22:47

Hi,

Zitat:
Das funktioniert aber nicht


Vielleicht funktioniert's ja mit ShellExecute aber dein Code ist falsch.
Was falsch ist, kann niemand sagen, da du leider keinen Code
gepostet hast.

Aber das geht doch so:


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
uses 
  ShellApi;

procedure TForm1.Button1Click(Sender: TObject);
begin
  ShellExecute(0,
               'open',
               'C:\Test\start.lnk',
               nil,
               nil,
               SW_SHOWNORMAL);

end;


sebastianf - So 25.04.04 18:48

sorry, geht leider auch nicht.
Es tut sich einfach nix .. warum den bloß ?


Delete - Mo 26.04.04 18:21

Und was gibt Shellexecute für einen Wert zurück? Und was sagt GetLastError?


sebastianf - Di 27.04.04 09:54

hi luckie ! das problem wurde schon in dem VCL forum geklärt -
bei mir wurden durch shellexecute keine lnk dateien geöffnet.
shellexecute gab 31 (zur dateiendung kein programm) zurück.
gelöst wurde das problem, in dem ich aus der lnk die exe ausgelesen habe, und dann
die exe mit shellexecute aufgerufen hab.

gruß, sebastian


Delete - Di 27.04.04 10:02

sebastianf hat folgendes geschrieben:
hi luckie ! das problem wurde schon in dem VCL forum geklärt -

Ach?!?! Nett, dass ich das hier auch schon erfahre. :roll:


sebastianf - Mi 28.04.04 12:12

och mönnnsch , sei doch nicht so
:D