Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Programm aufrufen und Wert übergeben (https://www.delphipraxis.net/67630-programm-aufrufen-und-wert-uebergeben.html)

Chrissi91 17. Apr 2006 20:40


Programm aufrufen und Wert übergeben
 
Hi,

da ich für meine Programme auch eine Updatefunktion haben möchte, habe ich mir folgendes ausgedacht (fand ich z.T. in der DP) :zwinker::
  • Ich starte mein normales Programm und klicke auf Update
  • Es öffnet sich ein neues Programm
  • dem Programm wird die Versionsnummer übergeben und mit der aktuellsten auf meinem Webspace aus einer TXT - Datei verglichen
  • Wen es eine neuere gibt, lädt er die von meiner Website runter und ersetzt sie durch die alte, die ich mittlerweile geschlossen habe

Das ist für mich denke ich auch alles machbar. Doch wie kann ich einen Wert von einem Programm einem anderen übergeben? In der DP fand ich nichts, was mir wirklich geholfen hat. :|

Ist denn sonst meine Idee umsetzbar oder habe ich wieder einen Denkfehler drin? :mrgreen:

Danke schon im Vorraus.

Edit1: Warum funktioniert das [ list][ /list]nicht? :gruebel:

Edit2: Lag an den BBCodes, die ich aus Versehen aktiviert habe. :zwinker:

s-off 17. Apr 2006 20:50

Re: Programm aufrufen und Wert übergeben
 
Hallo,

beim Aufruf des zweiten Programmes übergibst Du einfach einen Parameter, der die Versionsnummer enthält:

Delphi-Quellcode:
WinExeC(PChar('MEINPROGRAMM MEINPARAMETER'), 0);
Diesen Parameter fragst Du dann in Deinem zweiten Programm ab mit

Delphi-Quellcode:
sVersionsnummer := ParamStr(1)

Chrissi91 17. Apr 2006 20:51

Re: Programm aufrufen und Wert übergeben
 
Danke. Dann weiß ich jetzt ja, was ich morgen früh um 7 Uhr programmieren kann. ^^

Danke!

ManuMF 18. Apr 2006 12:52

Re: Programm aufrufen und Wert übergeben
 
Hallo,

arbeite zum Aufrufen besser mit ShellExecute, WinExec ist veraltet!

Delphi-Quellcode:
uses ShellAPI;

ShellExecute(Application.Handle, nil, 'NameDesProgramms', 'Parameter', 'Pfad', SW_ShowNormal);
Gruß,
ManuMF

StefanG 18. Apr 2006 12:56

Re: Programm aufrufen und Wert übergeben
 
warum überprüfst du nicht einfach von deinem hauptprogramm , obs ne neue version gibt und startest erst in dem Fall , dass ein update notwendig ist, das andere Programm? So musste auch nichts übergeben

Chrissi91 18. Apr 2006 18:31

Re: Programm aufrufen und Wert übergeben
 
Das fiel mir auch auf. Aber danke, habe ich was neues gelernt. ;)

HuxXx 19. Apr 2006 17:25

Re: Programm aufrufen und Wert übergeben
 
Wenn du es noch detaillierter starten möchtest verwende CreateProcess.
Mit diesem Befehl kann auch die Ausgabe konfiguiert werden...
So kannst du z.B. die Ausgabe der Konsole über eine Pipe in dein Programm leiten...


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:48 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-2025 by Thomas Breitkreuz