Fehler bei Network

Hier werden, insbesondere in den Beta-Phasen, Bugmeldungen gepostet. Das offizielle BugForum ist allerdings hier.
mbvwt4
Beiträge: 18
Registriert: 17.11.2006 10:33
Wohnort: bei Siegen

Fehler bei Network

Beitrag von mbvwt4 »

Hallo,
seit dem ich die neue 4.10 Version einsetze funktionieren mehrere
Server, die auf verschiedenen Ports in einer Anwendung laufen, nicht mehr.

Unter 4.01 war alles in Ordnung.

Nur der zu erst gestartete Server funktioniert, alle anderen nicht mehr.
Lediglich ein Connect Ereignis wird bei den anderen Server zurückgegeben,
noch nicht einmal ein disconnect.

Ist bei Linux und Windows so.
Benutzeravatar
HeX0R
Beiträge: 3040
Registriert: 10.09.2004 09:59
Computerausstattung: AMD Ryzen 7 5800X
96Gig Ram
NVIDIA GEFORCE RTX 3060TI/8Gig
Win11 64Bit
G19 Tastatur
2x 24" + 1x27" Monitore
Glorious O Wireless Maus
PB 3.x-PB 6.x
Oculus Quest 2 + 3
Kontaktdaten:

Beitrag von HeX0R »

Reproduzierungscode:

Code: Alles auswählen

InitNetwork()
#StartPort = 1024
S1.l = CreateNetworkServer(0, #StartPort)
S2.l = CreateNetworkServer(1, #StartPort + 1)
S3.l = CreateNetworkServer(2, #StartPort + 2)

Dim C.l(3)
Buffer.s = Space(1024)

If S1 = 0 Or S2 = 0 Or S3 = 0
	MessageRequester("Error", "At least one Server couldn't get started!")
	End
EndIf
OpenWindow(0, 250, 250, 250, 200, "", #PB_Window_SystemMenu)
CreateGadgetList(WindowID(0))
ListIconGadget(0, 5, 5, 240, 100, "Server#", 50)
AddGadgetColumn(0, 1, "Message", 186)
For i = 1 To 3
	TextGadget(i, 5, i * 30 + 82, 40, 20, "Client" + Str(i))
	StringGadget(i + 3, 47, i * 30 + 80, 90, 20, "")
	ButtonGadget(i + 6, 142, i * 30 + 80, 40, 20, "Send")
	ButtonGadget(i + 9, 187, i * 30 + 80, 60, 20, "Connect")
	DisableGadget(i + 3, 1)
	DisableGadget(i + 6, 1)
Next i
Repeat
	Select WindowEvent()
		Case 0
			Select NetworkServerEvent()
				Case 0
					Delay(5)
				Case #PB_NetworkEvent_Connect
					AddGadgetItem(0, -1, Str(EventServer()) + #LF$ + "New Client: " + Str(EventClient()))
				Case #PB_NetworkEvent_Disconnect
					AddGadgetItem(0, -1, Str(EventServer()) + #LF$ + "Client quit: " + Str(EventClient()))
				Case #PB_NetworkEvent_Data
					S = ReceiveNetworkData(EventClient(), @Buffer, 1024)
					AddGadgetItem(0, -1, Str(EventServer()) + #LF$ + "Text: " + Left(Buffer, S))
			EndSelect
		Case #PB_Event_Gadget
			Gadget.l = EventGadget()
			Select Gadget
				Case 7 To 9
					a$ = GetGadgetText(Gadget - 3)
					*G.LONG = @C(Gadget - 7)
					If a$ And *G\l
						SendNetworkString(*G\l, a$)
						SetGadgetText(Gadget - 3, "")
					EndIf
				Case 10 To 12
					*G.LONG = @C(Gadget - 10)
					If *G\l
						CloseNetworkConnection(*G\l)
						SetGadgetText(Gadget, "Connect")
						DisableGadget(Gadget - 6, 1)
						DisableGadget(Gadget - 3, 1)
						*G\l = 0
					Else
						*G\l = OpenNetworkConnection("127.0.0.1", #StartPort + Gadget - 10)
						If *G\l
							SetGadgetText(Gadget, "Disconnect")
							DisableGadget(Gadget - 6, 0)
							DisableGadget(Gadget - 3, 0)
						EndIf
					EndIf
			EndSelect
		Case #PB_Event_CloseWindow
			Break
	EndSelect
ForEver
mbvwt4
Beiträge: 18
Registriert: 17.11.2006 10:33
Wohnort: bei Siegen

Beitrag von mbvwt4 »

Hallo,
anscheinend braucht wohl niemand mehrere Server in seiner Anwendung,
oder es stört niemanden das es Befehle gibt, die in einer Version funktionieren und dann in einer neuen halt nicht mehr.
Wann kann man denn damit rechnen das zumindest ein Bugfix zur Verfügung gestellt wird. >_<
Benutzeravatar
STARGÅTE
Kommando SG1
Beiträge: 7028
Registriert: 01.11.2005 13:34
Wohnort: Glienicke
Kontaktdaten:

Beitrag von STARGÅTE »

das PureBasic Team wird wohl kauf nach jeden gefundenen BUG sofort eine neue Version rausbringen, es wird wie immer erst gesammelt und dann später ein Update geben.
PB 6.01 ― Win 10, 21H2 ― Ryzen 9 3900X, 32 GB ― NVIDIA GeForce RTX 3080 ― Vivaldi 6.0 ― www.unionbytes.de
Aktuelles Projekt: Lizard - Skriptsprache für symbolische Berechnungen und mehr
Benutzeravatar
Zaphod
Beiträge: 2875
Registriert: 29.08.2004 00:40

Beitrag von Zaphod »

Das passiert ein bis zweimal im Jahr... hotfixes gibt es hier nicht.
Benutzeravatar
HeX0R
Beiträge: 3040
Registriert: 10.09.2004 09:59
Computerausstattung: AMD Ryzen 7 5800X
96Gig Ram
NVIDIA GEFORCE RTX 3060TI/8Gig
Win11 64Bit
G19 Tastatur
2x 24" + 1x27" Monitore
Glorious O Wireless Maus
PB 3.x-PB 6.x
Oculus Quest 2 + 3
Kontaktdaten:

Beitrag von HeX0R »

Deswegen spiele ich auch grundsätzlich mit den Betaversionen mit (natürlich in nem Extraordner).
Nur so ist gewährleistet... ähm, naja, o.k. das Wort ist jetzt übertrieben... sagen wir die Gefahr ist kleiner, dass die von mir selbst gefundenen Bugs während der Betaphase (in der sehr viel schneller repariert wird als dann später) nicht gefixt werden.
Benutzeravatar
mk-soft
Beiträge: 3845
Registriert: 24.11.2004 13:12
Wohnort: Germany

Beitrag von mk-soft »

Wer damit leben kann, verwendet die Network LIB von der PB-Version 4.02

Habe diese mal zum testen einkopiert und mit dieser läuft es.

Offen wir mal auf ein Bugfix vom PB-Team :cry:
Alles ist möglich, fragt sich nur wie...
Projekte ThreadToGUI / EventDesigner V3 / OOP-BaseClass-Modul
Downloads auf MyWebspace / OneDrive
mbvwt4
Beiträge: 18
Registriert: 17.11.2006 10:33
Wohnort: bei Siegen

Beitrag von mbvwt4 »

Vielen Dank MK-Soft, das funktioniert. :D
Ich hätte sonst eine Pure-Basic Version überspringen müssen.
Wenn der Fehler ja in der Net Lib liegt, könnte man diese doch korrigieren und zum Download bereit stellen, ist nur so eine Idee?.
Benubi
Beiträge: 187
Registriert: 22.10.2004 17:51
Wohnort: Berlin, Wedding

Beitrag von Benubi »

Danke!

Ich finde es sollte ein Versions-archiv für PB geben... der bug hat mich die Tage etwas...beschäftigt. wie in der beta.
:freak:
mbvwt4
Beiträge: 18
Registriert: 17.11.2006 10:33
Wohnort: bei Siegen

Beitrag von mbvwt4 »

In der neuen Beta funktionieren mehrer Server immer noch nicht.
Antworten