amiga-news ENGLISH VERSION
.
Links| Forum| Kommentare| News melden
.
Chat| Umfragen| Newsticker| Archiv
.

amiga-news.de Forum > Programmierung > Residentes Programm [ - Suche - Neue Beiträge - Registrieren - Login - ]

-1- [ - Beitrag schreiben - ]

08.08.2014, 11:15 Uhr

AGSzabo
Posts: 1663
Nutzer
Hi

ich möchte, dass wenn mein Executable /nochmal/ gestartet wird, dass dann das schon laufende Executable verwendet wird und das neue sich wieder beendet. Wie mache ich das?

Grüße
A
--
Webmaster of Kestra Bitworld. Author of Open eXternal User Interfaces, eXternal Format Rippers and "Torakosmos".

[ Dieser Beitrag wurde von AGSzabo am 08.08.2014 um 11:16 Uhr geändert. ]

[ - Antworten - Zitieren - Direktlink - ]

08.08.2014, 11:36 Uhr

Thore
Posts: 2266
Nutzer
Gibt mehrere Möglichkeiten.
Möglichkeit 1:
Dein Programm hat einen Loader, der vorher mit FindTask prüft, ob das Programm gestartet wurde. Der Loader kann ein weiteres externes Programm sein, oder ein Teil des Executables. Der Maintask wird dann eben innerhalb des Programms gestartet.
Möglichkeit 2:
Dein Programm eröffnet z.B. einen MessagePort mit einem speziellen Namen. Bevor es das tut, prüft es, ob dieser schon existiert. Existiert er, beendet er sich selbst wieder. Exisitiert er nicht, legt er einen an und weiter gehts im Programm.

Möglichkeit 2 ist gängige Praxis.

[ - Antworten - Zitieren - Direktlink - ]

08.08.2014, 17:45 Uhr

Holger
Posts: 8116
Nutzer
Ja, public MessagePort ist die übliche Vorgehensweise, weil man dann auch gleich eine Message an den anderen Task schicken kann, damit der weiß, dass das Programm ein zweites Mal gestartet wurde.

Alternativ kann man das Programm als unique Commodity anmelden. Dann bekommt man alles nötige frei Haus. Wenn ich mich richtig erinnere, wird dann beim zweiten Start im Falle von Commodity mit GUI die Aufforderung, das Fenster zu öffnen, und ohne GUI, sich zu beenden, generiert.

--
Good coders do not comment. What was hard to write should be hard to read too.

[ - Antworten - Zitieren - Direktlink - ]


-1- [ - Beitrag schreiben - ]


amiga-news.de Forum > Programmierung > Residentes Programm [ - Suche - Neue Beiträge - Registrieren - Login - ]


.
Impressum | Datenschutzerklärung | Netiquette | Werbung | Kontakt
Copyright © 1998-2024 by amiga-news.de - alle Rechte vorbehalten.
.