![]() |
Problem mit ShellExecute
also es soll ein programm gestartet werden welches noch 5 parameter bekommt
edit5 ist eine exe die mit allen anderen parametern zu einem programm zusammen gepackt wird edit1-edit4 sind teile der fertigen datei update.exe ist die ausgabe datei also aufgerufen werden tut es so Zitat:
edit 1-5 fülle ich mit einen open dialog das klappt
Delphi-Quellcode:
ShellExecute(handle,
'open', PChar('scoutcreator.exe'), Pchar(' '+Edit5.Text+' '+Edit1.Text+' '+Edit2.Text+' '+Edit3.Text+' '+Edit4.Text), Pchar('Update.exe'), SW_NORMAL); |
Re: Problem mit ShellExecute
Drück mal bei
![]() |
Re: Problem mit ShellExecute
Hi,
der 5te Parameter im ShellExecute sollte nicht deine Ausgabedatei sein, sondern das Arbeitsverzeichnis der Anwendung die du startest. Also wirst du den Teil noch an den zusammengesetzten string anhängen müssen, und dort entweder dein Verzeichnis oder nil angeben müssen.
Delphi-Quellcode:
Gruss
ShellExecute(handle,
'open', PChar('scoutcreator.exe'), Pchar(' '+Edit5.Text+' '+Edit1.Text+' '+Edit2.Text+' '+Edit3.Text+' '+Edit4.Text+' '+'update.exe'), PChar(Programmverzeichnis der scoutcreater.exe), SW_NORMAL); |
Re: Problem mit ShellExecute
kann das dosfenster nicht offen bleiben damit ich seh was schiefgeht
|
Re: Problem mit ShellExecute
Moin Gehstock,
Zitat:
Delphi-Quellcode:
oder enthält eines der Edit-Felder einen Pfad mit Leerzeichen?
ShellExecute(handle,
'open', PChar('cmd.exe'), Pchar('/k scoutcreator.exe '+Edit5.Text+' '+Edit1.Text+' '+Edit2.Text+' '+Edit3.Text+' '+Edit4.Text+' '+'update.exe'), PChar(Programmverzeichnis der scoutcreater.exe), SW_NORMAL); |
Re: Problem mit ShellExecute
Hallo,
damit das DOS-Fenster offen bleibt, musst du auch eines öffnen. Dazu musst du deine ShellExecute-Parameter etwas umstellen. Starte nicht ScoutCreator sondern starte den command processor (steht in der environment variable ![]() Grüße vom marabu |
Re: Problem mit ShellExecute
Zitat:
danke funzt zur kontrolle hab ich umgestellt da das dos fenster nix anzeigt
Delphi-Quellcode:
strF:= '/k scoutcreator.exe '+Edit5.Text+' '+Edit1.Text+' '+Edit2.Text+' '+Edit3.Text+' '+Edit4.Text+' '+'update.exe';
ShellExecute(handle, 'open', PChar('cmd.exe'), Pchar(strF), PChar(nil), SW_NORMAL); memo1.Lines.add(strF); End; Edit geht jetzt wenn ich drauf achte das keine leerzeichen drinsind aber das muss auch mit gehen nur wie Danke nochmal |
Re: Problem mit ShellExecute
Wenn Leerzeichen drin sein sollen, musst du alles in Anführungszeichen schreiben:
cmd /k "C:\Mein Ort\Mein Prog.exe" Und das für jeden Parameter (glaub ich, kannst du ja im Ausführen-Dialog von Windows testen) halinchen |
Re: Problem mit ShellExecute
ja klappt Dankeschön
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 10: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 by Thomas Breitkreuz