Verfasst: 15.09.2004 18:54
und für 3.92 ? 3.93 ? 3.94 ?....usw.uswAndre hat geschrieben:Mal sehen, ob er das existierende CodeArchiv kurzfristig PB3.91-kompatibel bekommt...
und für 3.92 ? 3.93 ? 3.94 ?....usw.uswAndre hat geschrieben:Mal sehen, ob er das existierende CodeArchiv kurzfristig PB3.91-kompatibel bekommt...
Stimmt! Also sollte man immer den reservierten Speicher selber wieder freigeben! *merk* (Wieder was neues dazu gelernt)NicTheQuick hat geschrieben:Das reicht solange wie die Variable "Var" nicht geändert wird. Schließlich musst du den Speicher nach Gebrauch wieder mit dem Rückgabewert als Handle freigeben. Wird das Handle geändert oder gelöscht, kannst du den Speicher nicht mehr freigeben, außer du beendest das Programm. Man sollte sich aber selbst angewöhnen solche Sachen selbst zu kontrollieren und freizugeben.
schlechten Tag gehabt? Hätte ich Dein Horoskop vorher lesen sollen? Was kann man denn großartig damit erreichen, wenn man eine solche Variable ohne ID verändert?NicTheQuick hat geschrieben: Ist da was schwer dran zu verstehen?
Zur schnellen Speichermanipulation mit Pointern natürlich, sei es ein Bild oder eine eigene Speicherstruktur.coldarchon hat geschrieben:![]()
aber ich weiß wirklich keinen praktischen Nutzen für das Verändern einer solchen Variable.
Code: Alles auswählen
InitNetwork()
OpenConsole()
CreateNetworkServer(6000)
*read_buf = AllocateMemory(1024)
Repeat
taste$ = Inkey()
If NetworkServerEvent() = 1
PrintN("Neuer Client!")
EndIf
If NetworkServerEvent() = 4
PrintN("Client left!")
EndIf
If NetworkServerEvent() = 2
Repeat
client_id = NetworkClientID()
bytes_rec = ReceiveNetworkData(client_id, *read_buf, 1024)
Print(PeekS(*read_buf))
Until(bytes_rec < 1024)
FreeMemory(*read_buf)
PrintN("")
EndIf
Delay(10)
Until Left(taste$, 1) = Chr(27)
CloseNetworkServer()
CloseConsole()
Code: Alles auswählen
InitNetwork()
OpenConsole()
OpenNetworkConnection("127.0.0.1",6000)
ConnectionID = OpenNetworkConnection("127.0.0.1",6000)
Repeat
taste$ = Inkey()
If Left(taste$,1) = Chr(9)
message$ = Input()
SendNetworkString(ConnectionID,message$)
PrintN("")
EndIf
Delay(10)
Until Left(taste$,1) = Chr(27)
CloseNetworkConnection(ConnectionID)
CloseConsole()
Einfach bei PeekS() die maximale Länge mit angeben:BitchBird hat geschrieben:nun wird der speicher aber nie ganz geleert. es kommen
sonderzeichen dazu oder der rest eines vorher längeren
strings wird mitausgegeben.
lösungsvorschläge?
Code: Alles auswählen
Print( PeekS(*read_buf, bytes_rec) )