Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi shellexecute mit Parameter? (https://www.delphipraxis.net/81702-shellexecute-mit-parameter.html)

mlspider 2. Dez 2006 10:12


shellexecute mit Parameter?
 
Starten einer fremden Application stellt eigentlich kein Problem dar. Allerdings scheitere ich bei der Parameterübergabee.

Hier ein simples Beispiel wie es offensichtlich nicht funktioniert.

Delphi-Quellcode:
shellexecute(application.Handle,nil,pchar('regedit'+' '+ '/s'),pchar('test.reg HKEY_CURRENT_USER'),nil,SW_ShowNormal);

ste_ett 2. Dez 2006 10:29

Re: shellexecute mit Parameter?
 
Versuchs mal für den zweiten Parameter mit 'open'. :)

himitsu 2. Dez 2006 10:30

Re: shellexecute mit Parameter?
 
Delphi-Quellcode:
shellexecute(application.Handle,nil,pchar('regedit'),pchar('test.reg HKEY_CURRENT_USER /s'),nil,SW_ShowNormal);
ALLE Parameter sind im 4. Wert drin :zwinker:

mlspider 2. Dez 2006 10:35

Re: shellexecute mit Parameter?
 
Es wird zwar der Schlüssel eingetragen, leider mit einer Sicherheitsabfrage. Diesen lästigen Dialog möchte ich vielmehr umgehen.

mlspider 2. Dez 2006 10:51

Re: shellexecute mit Parameter?
 
Mal andersrum formuliert. In der CMD würde ich folgendes eingeben:

regedit /s C:\test.reg HKEY_CURRENT_USER

In Delphi würde es bei mir wie folgt aussehen:

Delphi-Quellcode:
ShellExecute(0, 'open', 'cmd.exe', PChar('regedit'),pchar('test.reg HKEY_CURRENT_USER /s'), nil, SW_SHOWNORMAL);
Leider klappt auch diese Version nicht.

himitsu 2. Dez 2006 11:02

Re: shellexecute mit Parameter?
 
regedit /s C:\test.reg HKEY_CURRENT_USER

Wird zu
Delphi-Quellcode:
ShellExecute(0, 'open', PChar('regedit'), pchar('/s C:\test.reg HKEY_CURRENT_USER'), nil, SW_SHOWNORMAL);
oder
Delphi-Quellcode:
ShellExecute(0, nil, PChar('regedit'), pchar('/s C:\test.reg HKEY_CURRENT_USER'), nil, SW_SHOWNORMAL);

mlspider 2. Dez 2006 11:05

Re: shellexecute mit Parameter?
 
Leuchtet ein. So geht es. Schönes Wochenende.


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:18 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