AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Problem mit ShellExecute

Ein Thema von Gehstock · begonnen am 27. Jan 2007 · letzter Beitrag vom 28. Jan 2007
Antwort Antwort
Gehstock

Registriert seit: 28. Jan 2006
Ort: Görlitz / Sachsen
489 Beiträge
 
Delphi 2007 Professional
 
#1

Problem mit ShellExecute

  Alt 27. Jan 2007, 18:47
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:
scoutcreator.exe scout.exe teil1 teil2 teil3 teil4 Update.exe

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);
Marcel
  Mit Zitat antworten Zitat
Benutzerbild von turboPASCAL
turboPASCAL

Registriert seit: 8. Mai 2005
Ort: Sondershausen
4.274 Beiträge
 
Delphi 6 Personal
 
#2

Re: Problem mit ShellExecute

  Alt 27. Jan 2007, 18:50
Drück mal bei Delphi-Referenz durchsuchenShellExecute die F1-Taste und guck dir den vorletzten Parameter mal an.
Matti
Meine Software-Projekte - Homepage - Grüße vom Rüsselmops -Mops Mopser
  Mit Zitat antworten Zitat
Benutzerbild von thkerkmann
thkerkmann

Registriert seit: 7. Jan 2006
Ort: Pulheim Brauweiler
464 Beiträge
 
Delphi 2010 Professional
 
#3

Re: Problem mit ShellExecute

  Alt 27. Jan 2007, 18:53
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:
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);
Gruss
Thomas Kerkmann
Ich hab noch einen Koffer in Borland.
http://thomaskerkmann.wordpress.com/
  Mit Zitat antworten Zitat
Gehstock

Registriert seit: 28. Jan 2006
Ort: Görlitz / Sachsen
489 Beiträge
 
Delphi 2007 Professional
 
#4

Re: Problem mit ShellExecute

  Alt 27. Jan 2007, 19:09
kann das dosfenster nicht offen bleiben damit ich seh was schiefgeht
Marcel
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: Problem mit ShellExecute

  Alt 27. Jan 2007, 19:40
Moin Gehstock,

Zitat von Gehstock:
kann das dosfenster nicht offen bleiben damit ich seh was schiefgeht
dann solltest Du es so versuchen:

Delphi-Quellcode:
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);
oder enthält eines der Edit-Felder einen Pfad mit Leerzeichen?
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#6

Re: Problem mit ShellExecute

  Alt 27. Jan 2007, 19:43
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 COMSPEC) mit dem Parameter /K gefolgt von deiner Befehlszeile.

Grüße vom marabu
  Mit Zitat antworten Zitat
Gehstock

Registriert seit: 28. Jan 2006
Ort: Görlitz / Sachsen
489 Beiträge
 
Delphi 2007 Professional
 
#7

Re: Problem mit ShellExecute

  Alt 28. Jan 2007, 15:21
Zitat von Christian Seehase:
oder enthält eines der Edit-Felder einen Pfad mit Leerzeichen?
ja sind leerzeichen drin gehts deswegen net?


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
Marcel
  Mit Zitat antworten Zitat
Benutzerbild von halinchen
halinchen

Registriert seit: 13. Jun 2006
508 Beiträge
 
Delphi 2007 Professional
 
#8

Re: Problem mit ShellExecute

  Alt 28. Jan 2007, 16:35
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
  Mit Zitat antworten Zitat
Gehstock

Registriert seit: 28. Jan 2006
Ort: Görlitz / Sachsen
489 Beiträge
 
Delphi 2007 Professional
 
#9

Re: Problem mit ShellExecute

  Alt 28. Jan 2007, 19:25
ja klappt Dankeschön
Marcel
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:27 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz