![]() |
ShellExecute Eigenschaften!
Hallo.
Habe mich hier mal nach einem Befehl umgesehn, mit dem man Exe-Dateien ausführen kann und bin dabei auf "ShellExecute" gestoßen. Habe aber nichts finden können, wo etwas über die Eigenschaften dieses Befehls steht. Kann mir jemand die einzelnen Eigenschaften von Shell Execute erklären.
Code:
Also. Was bedeutet/bewirkt "Handle" und "nil" und "SW_SHOW"?
ShellExecute(Handle, nil, Filename, nil, nil, SW_SHOW)
Steffen |
Handle ist die Eigenschaft Handle (auch Adresse genannt) des Formulars. nil ist ein leerer Pointer und SW_SHOW ist die Anzeigeart.
Chris |
Und was gibts da noch für Anzeigearten außer SW_SHOW?
|
Zitat:
Eine Online-Dokumentation gibt es hier: ![]() Die Dokumentation zum Download: ![]() Da stehen u.a. auch die Anzeigearten dabei. |
sw_show zeigt das Programm an, das aufgerufen wird, ohne es anzuhalten. Dann gibts noch Varianten, bei denen es nicht im Hintergrund läuft, usw. Genaue Hinweise finde ich jetzt selber nicht. :mrgreen:
|
Moin Hansa,
das verwechselst Du jetzt mit der TForm.Show Methode. SW_SHOW besagt nur, dass das Formular so angezeigt wird wie's gerade vorgesehen ist. Es ginge, z.B., auch SW_SHOWMAXIMIZED um beim Programmstart die maximierte Anzeige zu erzwingen. |
Hi Christian,
folgendes hier :
Code:
spielt mir eine Wave-Datei ab, während der Browser gestartet wird, ohne ihn zu stören. Da hat die Form nix damit zu tun.
procedure Ttest.DBEdit24DblClick(Sender: TObject);
begin WaveAbspielen ('\WINNT\Media\Utopia Windows starten.WAV'); // ShellExecute(0, 'open',PChar('WINWORD') , nil, nil, SW_SHOW); ShellExecute(0, 'open',PChar('http://'+DBEdit14.Text) , nil, nil, SW_SHOW); end; Nein, das stimmt so nicht. Nehme alles zurück und behaupte das Gegenteil und lasse es trotzdem so stehen. :chat: Aber folgendes ist in diesem Zusammenhang auch noch interessant:
Code:
Die Wave-Datei hat mich irritiert. Das SND_ASYNC sorgt für das beschriebene Verhalten.
PROCEDURE WaveAbspielen (DateiName : string);
VAR flag : byte; BEGIN flag:=SND_ASYNC; sndPlaySound(PChar (DateiName), Flag); END; Gruß Hansa |
Um jetzt noch mal auf die leeren Pointer zurückzukommen. Was kann man anstelle von den Pointern eintragen. Also was kann man mit ihnen bewirken. Ich weiß, dass man mit dem fünften Parameter den Dateipfad angeben kann, in dem das Programm ausgeführt werden soll. Aber was ist mit 2 und 4?
Steffen! |
Hat sich erledigt!
Meine Frage hat sich erledigt. Hab die Antwort auf
![]() Steffen! |
Re: ShellExecute Eigenschaften!
Warum klappt das dann nicht???
Code:
Da kommt kein Fehler...Der macht einfach gar nix
ShellExecute(0, 'open', PChar('C:\windows\explorer.exe /e,' + DirectoryListBox1.Directory), nil, nil, SW_SHOW)
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:58 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