Starten von nur einer BB-Instanz

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

TheMatrix

Betreff: Starten von nur einer BB-Instanz

BeitragMo, Jan 29, 2007 21:39
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi,
ist es eigentlich möglich BB zu erklären, dass ein bestimmtes Programm (von BB) nur einmal gestartet werden darf? Bzw. wie könnte man das am besten realisieren?

mfg,

Manu
°_° °.° °~° °v° .. -.-

BtbN

BeitragMo, Jan 29, 2007 21:49
Antworten mit Zitat
Benutzer-Profile anzeigen
Erstell im Programm einen TCP-Server auf dem immer gleichen Port.
Wenn der Server nicht erstellt werden konnte, läuft dein Programm schon.

TheMatrix

BeitragMo, Jan 29, 2007 22:04
Antworten mit Zitat
Benutzer-Profile anzeigen
Mein Problem:
Ich benutze UDP und die Clients benutzen variable Ports. D.h. ich kann darüber nicht ermitteln, ob der Client bereits schon das Programm gestartet hat. Gibt es vielleicht einen anderen Weg?
°_° °.° °~° °v° .. -.-

pixelshooter

BeitragMo, Jan 29, 2007 22:06
Antworten mit Zitat
Benutzer-Profile anzeigen
is ja auch komisch wenn die firewall immer da nachfragen muss...das kommt irg net gut an

Holzchopf

Meisterpacker

BeitragMo, Jan 29, 2007 22:24
Antworten mit Zitat
Benutzer-Profile anzeigen
Machs doch mit Systemvariablen. SetEnv und GetEnv helfen da.
Erledige alles Schritt um Schritt - erledige alles. - Holzchopf
CC BYBinaryBorn - Yogurt ♫ (31.10.2018)
Im Kopf da knackt's und knistert's sturm - 's ist kein Gedanke, nur ein Wurm

TheMatrix

BeitragMo, Jan 29, 2007 22:35
Antworten mit Zitat
Benutzer-Profile anzeigen
Die Idee mit Set- Getenv ist nicht schlecht.

Leider:
Setze ich mit Setenv eine Variabel, so kann die aber komischerweise nur von dem Programm ausgelesen werden, von der sie erstellt wurde. Starte ich eine neue Instanz zusätlich, so ist dem Program die Variabel unbekannt...
°_° °.° °~° °v° .. -.-

Rallimen

Sieger des 30-EUR-Wettbewerbs

BeitragDi, Jan 30, 2007 0:08
Antworten mit Zitat
Benutzer-Profile anzeigen
Mit der WinApi geht das...
https://www.blitzforum.de/foru...php?t=5436
[BB2D | BB3D | BB+]

TheMatrix

BeitragDi, Jan 30, 2007 0:48
Antworten mit Zitat
Benutzer-Profile anzeigen
Gut, also ich hab mich mal jetzt mit DLL-Dateien auseinander gesetzt. Jedoch existiert in meinem BB-Ordner kein Ordner Namens "Userlibs". Habe den Ordner selbst erstellt, die kernel23 hineinkopiert , sowie .decls erstellt. Es zeigt jedoch keinen Effekt. Kann das eventuell sein, dass Blitzbasic DLLs garnicht unterstüzt? Habe die Vollversion von BB 1.8.
°_° °.° °~° °v° .. -.-
 

Czybik88

BeitragDi, Jan 30, 2007 1:25
Antworten mit Zitat
Benutzer-Profile anzeigen
doch aber du musst den userlibs ordner erstellen, die dll datei brauchst du nicht hinein zu kopieren.

dann erstelle eine .decls datei in dem userlibs ordner, name ist egal

so kann eine aussehen:

Code: [AUSKLAPPEN]

;Sleep.decls
.lib "kernel32.dll"
Sleep ( dwMilliseconds ) :"Sleep"


Aufrufen tust du sie wie eine normale funktion oder prozedur:

Code: [AUSKLAPPEN]

Sleep (2000)
Print "2000 ms gepennt"

TheMatrix

BeitragDi, Jan 30, 2007 13:40
Antworten mit Zitat
Benutzer-Profile anzeigen
Ja, soweit ich auch schon.
Habe einen Ordner namens "userlibs" im BB-Ordner erstellt. Die Datei kernel32.delcs hineingetan und den jeweiligen Inhalt hineingeschrieben. BB meint jedoch immer "Function not found"..
°_° °.° °~° °v° .. -.-

BtbN

BeitragDi, Jan 30, 2007 13:46
Antworten mit Zitat
Benutzer-Profile anzeigen
Eine andere variante die mir einfällt: Eine Datei im Programm-Verzeichnis, die dein programm erstellt. Wenn es sie schon gibt: Versuchen zu löschen. Ist sie danach noch da(Weil das vorher laufende Programm sie nicht geschlossen hat Wink ) läuft das Programm bereits. Wenn sie erfolgreich gelöscht werden konnte/es sie garnicht gibt läuft da nix, und die datei wird (neu) erstellt und der stream offen gelassen(!), bis das Programm beendet wird.

TheMatrix

BeitragDi, Jan 30, 2007 13:56
Antworten mit Zitat
Benutzer-Profile anzeigen
Hey, das ist echt ne gute Idee! Ich werd es nachher gleichmal zu Hause ausprobieren Surprised .

Danke schonmal Wink

Gruß, Manu
°_° °.° °~° °v° .. -.-

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group