Entwickler-Ecke
Dateizugriff - Andere Anwendung starten.
knittel - Mo 24.06.13 17:32
Titel: Andere Anwendung starten.
Hallo allerseits,
Ich programmiere an einem Spiel, das sowohl aus einem Server als auch aus einem Client besteht. Es soll aber möglich sein im Client Einstellungen vorzunehmen und dann den Server mit diesen Parametern zu starten. Nun meine Frage: Wie kann ich beim Server start diese Parameter übergeben und auch diese dann beim server dann auslesen?
Bisher kam ich nur auf die idee, die parameter in einer temporären datei zu speichern und diese dann vom server laden, aber das scheint mir nicht das gelbe vom ei zu sein.
Gibts da was besseres?
Danke schonmal! :)
Moderiert von Narses: Topic aus Delphi Language (Object-Pascal) / CLX verschoben am Mo 24.06.2013 um 22:36
WasWeißDennIch - Mo 24.06.13 18:26
Der Client soll den Server starten und dieser soll die Parameter auswerten, habe ich das richtig verstanden? Ich gehe mal davon aus, dass beides "normale" Windows-Anwendungen sind.
Starten des Servers:
Delphi-Quelltext
1:
| ShellExecute(EinHandle, 'open', PChar(Pfad_zur_Server_Exe), PChar(Parameter), nil, SW_SHOW ); |
Auswerten auf Serverseite:
Delphi-Quelltext
1: 2: 3: 4:
| for i := 1 to ParamCount do if ParamStr(i) = 'Blabberblubb' then usw. |
knittel - Mo 24.06.13 19:00
Vielen Dank! Das wars was ich gesucht hatte :) Probiers gleich mal aus.
Zitat: |
normale Windows-Anwendungen |
Sind momentan plattform unabhängige sdl Anwendungen, weis aber sowieso nicht ob ich das bis zum schluss durchhalte.
MSCH - Mo 24.06.13 19:09
alternative 1: Registry.
alternative 2: Datenbank
:-)
Msch
Delete - Di 25.06.13 08:27
Alternative 3: SHARED MEMORY
JohannPeter - Mi 23.04.14 12:03
Hallo,
Bin neu auf euerer Seite.
Kann ich in Delphi auch externe Programme einbinden.
Habe eine Hauptmaske und von der will ich eigene Progamme starten.
Vielen Dank für die Hilfe.
rushifell - Mi 23.04.14 17:12
Zum Ausführen von exe-Dateien sollte ShellExecute nicht verwendet werden. Benutze stattdessen lieber CreateProcess. ShellExecute ist z.B. zum Öffnen von Textdateien (*.txt).
JohannPeter - Mi 23.04.14 18:19
Danke für die Antwort.
Möchte mich für meine Anfängerfehler gleich mal entschuldigen, habe bisher immer mit etlichen Formularen gearbeitet.
Hier mein Quelltext:
procedure TfrmMain.mnuAShopClick(Sender: TObject);
begin
Pfad := ExtractFilePath(Application.ExeName);
if Pfad[Length(Pfad)] <> '\' then begin
Pfad := Pfad + '\';
CreateProcess(Pfad + 'Shop.exe'), nil, SW_SHOW {oder eine andere SW_Konstante});
end;
end;
Vielleicht denke ich nur zu umständlich.
LG
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2024 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!