![]() |
Windowsbotschaft nach Doppelklick / Parameterübergabe
Hallo Delphianer, habe einen Player programmiert, bei welchem man auch Playlists abspeichern kann. Habe eine eigene Endung (.dpp) welche ich ja nun via Windows mit meinem Programm verknüpfen kann. Wenn ich nun auf eine abgespeicherte Playlist doppelklicke, versteht das Windows und startet mein Programm. Nun meine Frage: Wie komme ich an die Botschaft, welche mit Windows zu diesem Zeitpunkt übermittelt? Ein String mit dem Pfad+Dateiname ist alles was ich brauche. Vielen Dank im Voraus.
|
Re: Windowsbotschaft nach Doppelklick / Parameterübergabe
ParamStr(1) beinhaltet den Pfad+Dateinamen zu der Playlist ;-)
|
Re: Windowsbotschaft nach Doppelklick / Parameterübergabe
Ein Beispiel
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin if paramcount <> 0 then begin if ParamStr(1) <> '' then begin //anweisungen mit filename um datei zu öffnen end; end; end |
Re: Windowsbotschaft nach Doppelklick / Parameterübergabe
ich brech ab.... das funktioniert ja. Vielen Dank :hello:
|
Re: Windowsbotschaft nach Doppelklick / Parameterübergabe
Die Frage wäre allerdings, verbergen sich noch mehr nützliche Parameter in ParamStr ?
Habe mal versucht den Inhalt auf einem Label auszugeben:
Delphi-Quellcode:
für x habe ich mal ein paar Zahlen eingesetzt...
if paramcount <> 0 then begin
if ParamStr(1) <> '' then begin label1.caption := inttostr(ParamStr(x)); end; end; |
Re: Windowsbotschaft nach Doppelklick / Parameterübergabe
Der Inhalt von ParamStr is aber kein Int... ?!
Edit: Posting 300 :party: |
Re: Windowsbotschaft nach Doppelklick / Parameterübergabe
Hallo padavan,
es kommt auf den Aufruf an. ParamCount gibt dir die Anzahl Parameter, und diese kannst du mit ParamStr abfragen. Bei einem Doppelklick auf eine Datei wird nur ein Parameter mitgegeben (eben der Pfad), aber wenn du eine Verknüpfung der Art
Code:
hast, dann wird dein Programm mit diesen Parametern aufgerufen. "Versteckt" ist in den Parametern aber gar nichts :zwinker:
Programm.exe Param1 Param2 Param3
Greetz alcaeus |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:59 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