Client - Vorlage
> habe ich ausprobiert, hat bei mir nicht funktioniert. wenn ich das so mach wie gesagt dann öffnet sich die ganz normale hilfe
Öffnet ein F1 auf ButtonGadget() nicht die Hilfe für ButtonGadget()?
Natürlich muss der Befehl auch eine native PB-Funktion sein ansonsten geht
das vorerst nicht.
Öffnet ein F1 auf ButtonGadget() nicht die Hilfe für ButtonGadget()?
Natürlich muss der Befehl auch eine native PB-Funktion sein ansonsten geht
das vorerst nicht.
Win11 x64 | PB 6.20
Code: Alles auswählen
If InitNetwork() = 0
MessageRequester("Error", "Error")
EndIf
ip$ = InputRequester("","bitte server ip eingeben!","")
Debug ip$
ConnectionID = OpenNetworkConnection(ip$, 6654)
If ConnectionID
OpenConsole()
PrintN("Erfolgreich zum server Verbunden")
String$ = InputRequester("","String zum versenden eingeben","")
If String$
SendNetworkData(ConnectionID, @String$, Len(String$))
EndIf
Input()
Else
Debug "error"
EndIf
End
den server code kennt ihr ja.
bin sehr dankbar für die bisherige hilfe.
auf Serverseite in den Codeteil zum Empfangen von Daten musst du folgendes ergänzen:
Code: Alles auswählen
Case 2
length.l = ReceiveNetworkData(ClientID, *buffer, 2000)
String$ = PeekS(*buffer, 2000)
If string$ = "info"
;Gib Text aus
EndIf
EndSelect
Ich verkaufe Rechtschreibfehler und jede menge GROßBUCHSTABEN. Alles unbegrenzt zu haben.
ah,
ich habe das problem gefunden.
wenn ich den text einfach über die konsole laufen lass funktioniert es. versuch ich jedoch den text über den server zu verschicken, quasi übers "netz" dann funktioniert es nicht.
könntest du das ganze nochmal so abändern das der client das ganze auch empfangen kann ?
ich habe das problem gefunden.
wenn ich den text einfach über die konsole laufen lass funktioniert es. versuch ich jedoch den text über den server zu verschicken, quasi übers "netz" dann funktioniert es nicht.
könntest du das ganze nochmal so abändern das der client das ganze auch empfangen kann ?
kleinen Moment, ich bastel kurz was.
Edit: Sooooo hier mal ein modifizierter Client:
Und ein modifizierter Server:
Edit: Sooooo hier mal ein modifizierter Client:
Code: Alles auswählen
If InitNetwork() = 0
MessageRequester("Error", "Error")
EndIf
ip$ = InputRequester("","bitte server ip eingeben!","")
Debug ip$
ConnectionID = OpenNetworkConnection(ip$, 6654)
If ConnectionID
*buffer = AllocateMemory(2048)
OpenConsole()
PrintN("Erfolgreich zum server Verbunden")
PrintN("fuer Eingabemodus bitte "+Chr(34)+"T"+Chr(34)+"druecken.")
Repeat
Select NetworkClientEvent(ConnectionID)
Case 2 ; Wenn Rohdaten ankommen
ReceiveNetworkData(ConnectionID,*buffer,2048)
string$ = PeekS(*buffer,2048)
PrintN("String erhalten")
Print("Inhalt: ")
PrintN(string$)
PrintN("")
EndSelect
inkey$ = Inkey()
If Inkey$ = "t" ; Wenn Inkey t ist, dann wird der Textmodus aktiviert.
textmode = 1
EndIf
If textmode = 1 ; Textmode
inkey$ = "0"
PrintN("fuer normalen Modus bitte "+Chr(34)+"zurueck"+Chr(34)+" eingeben")
PrintN("")
input$ = Input()
If input$ = "sendstring" ;String senden
String$ = InputRequester("","String zum versenden eingeben","")
If String$
SendNetworkData(ConnectionID, @String$, Len(String$))
EndIf
EndIf
If input$ = "zurueck" ; Auf Normalmodus zurückwechseln !!!WICHTIG!!!: zum empfangen eines Strings
EnableGraphicalConsole(1) ; muss der Server/Client im Normalmodus sein, da Input() den Programmablauf pausiert,
ClearConsole() ; bis eine Eingabe gemacht wurde.
EnableGraphicalConsole(0)
PrintN("fuer Eingabemodus bitte "+Chr(34)+"T"+Chr(34)+"druecken.")
PrintN("")
textmode = 0
EndIf
If input$ = "cls" ; Konsole leeren
EnableGraphicalConsole(1)
ClearConsole()
EnableGraphicalConsole(0)
EndIf
EndIf
Delay(10)
Until input$ = "exit" ;beenden
Else
Debug "error"
EndIf
FreeMemory(*buffer)
End
Code: Alles auswählen
InitNetwork()
If ExamineIPAddresses()
IP.l = NextIPAddress()
EndIf
*buffer = AllocateMemory(2000)
If CreateNetworkServer(0, 6654)
OpenConsole()
PrintN("Server Online Listening on IP (" + IPString(IP) + ")")
Repeat
Select NetworkServerEvent()
Case 0
If Left(Inkey(), 1) = Chr(13)
Quit = 1
EndIf
Delay(5)
Case 1
PrintN("Ein neuer Client hat Connectet")
ClientID.l = EventClient()
Case 2
length.l = ReceiveNetworkData(ClientID, *buffer, 2000)
String$ = PeekS(*buffer, 2000)
PrintN("Received:" + String$)
EndSelect
inkey$ = Inkey()
If Inkey$ = "t"
textmode = 1
inkey$ = "0"
EndIf
If textmode = 1
inkey$ = "0"
PrintN("fuer normalen Modus bitte "+Chr(34)+"zurueck"+Chr(34)+" eingeben")
PrintN("")
input$ = Input()
If input$ = "sendstring"
String$ = InputRequester("","String zum versenden eingeben","")
If String$
SendNetworkData(ClientID, @String$, Len(String$))
EndIf
EndIf
If input$ = "zurueck"
EnableGraphicalConsole(1)
ClearConsole()
EnableGraphicalConsole(0)
PrintN("fuer Eingabemodus bitte "+Chr(34)+"T"+Chr(34)+"druecken.")
PrintN("")
textmode = 0
EndIf
EndIf
Delay(10)
Until Quit = 1
EndIf
Zuletzt geändert von jojo1541 am 14.06.2009 20:59, insgesamt 1-mal geändert.
Ich verkaufe Rechtschreibfehler und jede menge GROßBUCHSTABEN. Alles unbegrenzt zu haben.