AGB  ·  Datenschutz  ·  Impressum  







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

Progamm im ersten Programm starten

Ein Thema von Luke23 · begonnen am 21. Jul 2004 · letzter Beitrag vom 23. Jul 2004
Antwort Antwort
Seite 2 von 2     12   
Luke23

Registriert seit: 15. Apr 2004
33 Beiträge
 
#11

Re: Progamm im ersten Programm starten

  Alt 22. Jul 2004, 01:46
Hallo!!

ja okay sorry das habe ich dann wohl doch falsch verstanden!!

also ich habe xp und öffne mit meinem schalter die cmd.exe danch soll er das spiel starten mit parameter!!ja das öffnen macht er schon aber das spiel startet er nicht!!ich habe in einer dslibrary.chm gelesen das es so gehen soll aber irgentwie macht er das leider nicht!!
ich hoffe das ihr nen tip habt!!

Mfg Luke23
  Mit Zitat antworten Zitat
scp

Registriert seit: 31. Okt 2003
1.120 Beiträge
 
Delphi 7 Personal
 
#12

Re: Progamm im ersten Programm starten

  Alt 22. Jul 2004, 02:04
Also im Fall der cmd.exe ginge es so:
ShellExecute(0, nil, PChar('cmd.exe'), Pchar('/K C:\Game\volly.exe C:\Game\map1.pk3'), nil, SW_NORMAL); Wenn du statt /K die Option /C verwendest, wird das "DOS-Fenster" nach dem ausführen des Spiels/Emulators oder was auch immer beendet.
  Mit Zitat antworten Zitat
Luke23

Registriert seit: 15. Apr 2004
33 Beiträge
 
#13

Re: Progamm im ersten Programm starten

  Alt 23. Jul 2004, 13:32
Hallo!!

also ich habe es jett so das mein teil startet wie kann ich aber in den parametern noch was verändern?? könnte mir da vieleicht noch einer einen tip zu geben?? ich wolte das so machen das ich die parameter in 2editfenstern angeben kann aber wie??

ShellExecute(0, nil, PChar('cmd.exe'), Pchar('/K C:\Game\volly.exe C:\Game\map1.pk3'), nil, SW_NORMAL);

also so geht das ganze schonmal recht gut nun habe ich versucht edit fenster zu setzen aber dann startet er zwar aber mit den falschen parametern wie kann ich das jetzt lösen??

PChar('/K C:\Game\volly.exe'), PChar(ParamterList), SW_NORMAL); und im paramter dann halt so
ParamterList := 'Edit1.Text ' + 'Edit2.Text';

ja das geht aber leider nicht so ganz könnte mir da vieleicht einer noch nen tip zu geben??
  Mit Zitat antworten Zitat
MathiasSimmack
(Gast)

n/a Beiträge
 
#14

Re: Progamm im ersten Programm starten

  Alt 23. Jul 2004, 13:36
Bitte benutze künftig das [delphi]-Tag für deinen Quellcode. Das liest sich besser.

Und dann schau dir mal die Syntax des Befehls "ShellExecute" an. Das zu startende Programm ist die "cmd.exe". Dein Spiel und seine Parameter sind nur die Parameter für das zu startende Programm. Du benutzt im Moment die Angabe des Arbeisverzeichnisses für die Parameter des Spiels, und das kann nicht gehen.
  Mit Zitat antworten Zitat
Benutzerbild von Spezi1980
Spezi1980

Registriert seit: 11. Aug 2003
Ort: Dresden OT Cossebaude
71 Beiträge
 
Delphi 2005 Personal
 
#15

Re: Progamm im ersten Programm starten

  Alt 23. Jul 2004, 13:50
Hallo ne etwas andere Idee:

Delphi-Quellcode:
procedure Starte Programm;
 var Strings : TStrings;
begin
    //wir nehmen eine Batchdatei,
    //da kannst du soviel reinpacken mit nochsoviel
    //Parametern wie du willst
    Strings := TStringlist.create;
    try
        Strings.add('@echo off'); //schaltet die Anzeige ab
        Strings.add('test.exe /bla /bla /blabla'); //Dein Programm mit Parametern
        Strings.add('del %0'); //löscht die batchdatei nach der ausführung
        //Datei speichern (Ich hasse es, wenn ein Programm etwas irgendwohin speichert.)
        Strings.savetofile(IncludetrailingBackslash(extractfilepath(Paramstr(0)))+'Test.bat');
    finally
       Strings .free;
    end;
    //Batchdatei starten
    ShellExecute(Application.Handle, 'open',
                 IncludetrailingBackslash(extractfilepath(Paramstr(0)))+'Test.bat',
                 nil, nil, SW_SHOW);
end;
Kann das leider nicht so testen weil ich hier kein Delphi hab. Müsste aber funktionieren.
Robert
Codito, ergo sum.
>>I code, therefore I am<<
  Mit Zitat antworten Zitat
roderich
(Gast)

n/a Beiträge
 
#16

Re: Progamm im ersten Programm starten

  Alt 23. Jul 2004, 14:08
@Luke23
wieso nimmst Du dir nicht einfach die Zeit, Dein Anliegen knapp und präzise zu beschreiben ? Dann ist die Chance relativ hoch, daß dir geholfen werden kann. Btw. ich habs auch mit Studium nicht verstanden, was dein Problem ist.

@shmia
wenn du einfach nach Leerzeichen suchst, kannst Du m.E. auf die Nase fallen. Sowohl der erste Parameter (Programmname) als auch die eigentlichen Parameter können Leerzeichen enthalten. Wieso baust du den Parameter-String für die Weitergabe nicht einfach per ParamCount und ParamStr zusammen ?

Gruß
Roderich
  Mit Zitat antworten Zitat
scp

Registriert seit: 31. Okt 2003
1.120 Beiträge
 
Delphi 7 Personal
 
#17

Re: Progamm im ersten Programm starten

  Alt 23. Jul 2004, 23:53
@Luke23
Ganz einfach, machs mit nem + Operator:
Delphi-Quellcode:
var
  ParamterList : String;
begin
  ParamterList := Edit1.Text + ' ' + Edit2.Text;
  ShellExecute(0, nil, PChar('cmd.exe'), Pchar('/K ' + 'C:\Game\volly.exe' + ' ' + ParameterList), nil, SW_NORMAL);
PS: Edit1.Text usw. sollte man nie zwischen '' setzen, wie dus oben gemacht hast, dann über gibt er nämlich einfach "Edit1.Text Edit2.Text" statt den Inhalt der Edits.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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 16:49 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