AMIGA-RESISTANCE https://forum.amiga-resistance.info/ |
|
Problem mit den Network Befehlen https://forum.amiga-resistance.info/viewtopic.php?f=38&t=3521 |
Seite 1 von 1 |
Autor: | msu [ 02 Apr 2017, 16:04 ] |
Betreff des Beitrags: | Problem mit den Network Befehlen |
Hallo Bin gerade mal ein wenig mit einer kleinen Server/Client Anwendung beschäftigt, komme aber nicht so recht weiter. Hier mal ein kleiner Code, funktioniert auch soweit, leider allerdings bestenfalls auf 80er Jahre Niveau als noch Serielle- Datenübertragung modern war. Server: Code: Alles auswählen ;SERVER ;Hollywood 7 SetDefaultEncoding(#ENCODING_ISO8859_1, #ENCODING_ISO8859_1) Function Connect(msg) client_id=msg.clientid DebugPrint(client_id) EndFunction Function DisConnect(msg) CloseConnection(msg.id) EndFunction Function receive(msg) data$ = ReceiveData(client_id, #RECEIVELINE) If data$ = "cmd:bereit" send(msg) EndIf EndFunction Function send(msg) file_Pfad$ = FileRequest("Eine große Datei zum senden wählen", "*") OpenFile(1, file_Pfad$) file$ = ReadBytes(1) SendData(msg.id, file$) EndFunction ;************************************************************************************************* CreateServer(1,80) InstallEventHandler({OnConnect=Connect, OnDisconnect=DisConnect, onreceivedata=receive}) Repeat CheckEvent Wait(1) Forever Code: Alles auswählen ;CLIENT ;Hollywood 7 SetDefaultEncoding(#ENCODING_ISO8859_1, #ENCODING_ISO8859_1) Function receive() data$ = ReceiveData(1, #RECEIVEALL, False) DebugPrint("Alle Daten empfangen") EndFunction InstallEventHandler({onreceivedata=receive}) OpenConnection(1, "localhost", 80) SendData(1,"cmd:bereit") Repeat CheckEvent Wait(1) Forever Hmm, irgendwie hat das nichts mit einem Server zu tun. Eigentlich sollte er ja senden, aber gleichzeitig weitere Klienten bedienen können. Vielleicht kann hier ja jemand helfen. Grüße, Michael |
Autor: | Tipsi [ 03 Apr 2017, 16:32 ] |
Betreff des Beitrags: | Re: Problem mit den Network Befehlen |
Salli msu Ich bin leider alles andere als ein Experte bei Netzwerkfragen. Wenn ich so einen Blick in das Handbuch werfe, finde ich keinen Hinweis darauf, dass Du mehrere Clienten aufs Mal bedienen kannst. Hintereinander ja, parallel nein. Ob es eventuell mögliche wäre, von jedem Clienten immer wieder nur einige Bytes anzufordern, weiss ich als "Gipser" leider nicht. Griessli Tipsi |
Autor: | msu [ 03 Apr 2017, 18:36 ] |
Betreff des Beitrags: | Re: Problem mit den Network Befehlen |
Hi Tipsi In anderen Programmiersprachen unter Windows würde ich jedem Klienten einfach einem eigenen Thread zuordnen. Ok, Hollywood kennt leider keine Threads. Ist irgendwo schade, habe jetzt nen HTTP Webserver fast fertig und leider zu spät bemerkt, das das ganze nicht so wirklich Mehrbenutzer fähig ist. Der HTTP Server funktioniert auch ganz gut, erst bei großen Datenpaketen (Downloads) bemerkt man das Problem. Grüße, Micha |
Autor: | Tipsi [ 03 Apr 2017, 19:41 ] |
Betreff des Beitrags: | Re: Problem mit den Network Befehlen |
Hhm, wenn Thrads fehlen, dann schreib doch mal Andreas an. Vielleicht kann er das in Hollywood einfügen oder es gibt eine andere Lösung. Eben, bin Gipser... Griessli Tipsi |
Autor: | HelmutH [ 05 Apr 2017, 18:39 ] |
Betreff des Beitrags: | Re: Problem mit den Network Befehlen |
Hi zusammen Ja, das wäre auch mein Vorschlag gewesen, den Tipsi da gemacht hat. Andreas geht da ziemlich gut auf Vorschläge ein, wie man ja an der Weiterentwicklung von Hollywood sehen kann. |
Seite 1 von 1 | Alle Zeiten sind UTC |
Powered by phpBB® Forum Software © phpBB Limited Deutsche Übersetzung durch phpBB.de |