![]() |
Winexec
Hi!
Ich würde gerne sowas machen wie Start/ausführen ! Funktionen der benutzer soll in edit1 zb cmd eingeben dann auf button2 klicken dann soll das dos fenster kommen ;) wie soll ich es machen?
Delphi-Quellcode:
geht leider nicht :(
winexec('', edit1.text, 1);
mfg Heinz-erich |
Re: Winexec
Bitte nicht WinExec benutzen sonder nur ShellExecute!
WinExec ist nur der Kompatibilität wegen vorhanden. Du musst die Unit ShellAPI einbinden und die Funktion folgendermaßen aufrufen. ShellExecute(handle, 'open', PChar('Pfad zur Console'), PChar('Parameter'), PChar('Verzeichniss'), 1); Florian |
Re: Winexec
Machs einfach mit ShellExecute und übergib da den Wert aus dem Edit (In der Delphi-Hilfe solltest du ein Beispiel finden). Vergiss nicht die ShellAPI in die Uses-Liste aufzunehmen.
|
Re: Winexec
Als erstes solltest du bitte
![]() ![]() |
Re: Winexec
suppi es geht alles!!!
bis auf was muss ich eingeben wenn der benutzer es in edit1 eingeben soll den befehl und sich dann der befehl öffnet?
Delphi-Quellcode:
hab ich
ShellExecute(handle, 'open', PChar('cmd'), PChar(''), PChar('C:\'), 1);
|
Re: Winexec
Delphi-Quellcode:
ShellExecute(handle, 'open', PChar(edit1.text), PChar(''), PChar('C:\'), 1);
|
Re: Winexec
ups parameter hab ich übersehen sry :P
danke fuer die hilfe ;) |
Re: Winexec
Statt 1 als letzten Parameter zu benutzen, gibt es auch noch diverse Konstanten, welche man bevorzugen sollte: SW_HIDE, SW_SHOW usw. nämlich.
|
Re: Winexec
Hallo!
Da ist aber einer sehr inkonsequent: Zitat:
Delphi-Quellcode:
oder ich caste nur da, wo es auch notwendig ist. String-Literale (also das mit Hochkomma eingeschlossene) wird von Delphi nämlich automatisch umgewandelt, es reicht also:
ShellExecute(handle, PChar('open'), PChar(edit1.text), PChar(''), PChar('C:\'), SW_SHOW);
Delphi-Quellcode:
Diese Inkonsequenz findet man allerdings bei fast allen Posts zum Thema "ShellExecute". Bei anderen WinAPI-Aufrufen kommt eine solche Misch-Schreibweise seltsamerweise nicht vor.
ShellExecute(handle, 'open', PChar(edit1.text), '', 'C:\', SW_SHOW);
Gruß Dietmar Brüggendiek |
Re: Winexec
Zitat:
Delphi-Quellcode:
... was dann nämlich auch der Doku entspricht :zwinker:
ShellExecute(handle, 'open', PChar(edit1.text), nil, 'C:\', SW_SHOW);
Daß Nil und NULL in Delphi etwas anderes sind, ist eine andere Sache. Aber korrekter als ein Stringliteral wäre hier die Übergabe von Nil - ich weiß aber nicht, ob der Compiler es intern nicht sowieso schon macht. |
DP-Maintenance
Dieses Thema wurde von "Daniel" von "VCL / WinForms / Controls" nach "Windows API / MS.NET Framework API" verschoben.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:31 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 by Thomas Breitkreuz