![]() |
Versenden von Strings im LAN
Hey Leute,
kann ich eigentlich auch noch mit anderen Komponenten evtl auch von torry.net String bzw. Nachrichten im Lan versenden, als mit Server- ClientSocket. Denn diese scheinen bei mir unter Delphi 7 nicht richtig zu funzen. Sie connecten zwar und geben keine Fehler aus, senden aber anscheinend den String doch nicht. Des Weiteren wollte ich evtl. auch noch Daten über's LAn versenden. Dafür empfehlen sich die Indy-Komponenten. Habt ihr tuts für diese parat? Denn ich weiß nicht, wie man per Indy eine Verbindung aufbaut... Danke im Vorraus |
Re: Versenden von Strings im LAN
Du musst die Nachrichten mit einem Thread abfragen.
Daran scheiterte ich auch als Erstes. Dazu eignet sich Luckies Tutorial. Du erstellst einen Thread, z.b. durch die classe TThead und schreibst ein eigenes OnExecute Ereignis, welches permanent ReadLn; bei der LAN-Komponente ausführt. |
Re: Versenden von Strings im LAN
Hi StanY,
Zitat:
@DJ-SPM: Was genau hat bei den Server- und ClientSockets nicht funktioniert? TClientSocket kennt das Ereignis [b]OnRead[/], welches ausgelöst wird, sobald Daten am Socket ankommen. Und zum zweiten Problem: Wenn du Strings über die Sockets versenden kannst, dann funktioniert dies auch mit Streams usw. Greetz alcaeus |
Re: Versenden von Strings im LAN
alcaeus, ich verstehe nicht : D
Ich denke, er hat das Problem, dass der Client zwar Connected, aber, obwohl ein OnRead Ereignis geschrieben wurde, keine Daten ankommen. Dasselbe Problem hatte ich auch, da ich nicht wusste, dass man die Nachrichten per Thread abfragen muss. - Ich denke, das meinte er, berichtigt mich, wenn nicht. ^^ |
Re: Versenden von Strings im LAN
Hi Stany,
Zitat:
Zitat:
Zitat:
Zitat:
Greetz alcaeus |
Re: Versenden von Strings im LAN
Ja... ich habe immer den Status von den Socketsüberprüft und alles schien super. Dann habe ich auf senden geklickt und den Code
Delphi-Quellcode:
ausführen lassen. Dann mit
ClientSocket1.Socket.SendText('Hallo Welt!');
Delphi-Quellcode:
Die Nachricht empfangen. Dies hat immer prima geklappt. Doch seit Delphi 7 muss man ja das Package selbst installieren. Seitdem klappt es nicht mehr.
procedure TForm1.ServerSocket1ClientRead(Sender: TObject;
Socket: TCustomWinSocket); var s:String; begin s:=Socket.ReceiveText; ShowMessage(s); end; Da klicke ich auf "Senden", alle Codes, wie bisher, werden ausgeführt und es tritt KEIN Fehler auf. Aber eine Message kommt auch nicht an... Mit Threads kenne ich mich garnicht aus! Deshalb dachte ich mir, dass ich zu den Indy-Kompos wechsele, da ich damit auch Dateien senden kann... Wenn ihr allerdings eine Lösung für das Sockets-Problem habt, dann bin ich ganz Ohr, oder soll ich ganz Auge sagn ;-) Würde besagte nämlich gerne beibehalten, da diese sehr simpel im umgang sind... |
Re: Versenden von Strings im LAN
Liste der Anhänge anzeigen (Anzahl: 1)
Hi DJ-SPM,
weil heute ein Feiertag ist, gibts mal ein kleines Testprojekt mit den Sockets. Mit meinem D7 Ent hat es einwandfrei funktioniert. Wenn es auch bei deinem D7 funktioniert, so liegt es an der Anwendung, falls es nicht funktioniert dann hast du entweder die Socketkompos falsch installiert oder dein PC hat Probleme Greetz alcaeus [add]:wall: ich will gar nicht wissen das wievielte mal ich das Attachment vergessen hab :roll:[/add] |
Re: Versenden von Strings im LAN
Hey danke. Da bin ich aber mal gespannt, ob ich wieder mist gebaut habe, oder ob ich "mal" unschuldig bin :-D
|
Re: Versenden von Strings im LAN
Hi DJ-SPM,
ich weiß nicht ob du es bemerkt hast, aber ich hab das Attachment vorhin vergessen :wall: Siehe obiger Beitrag Greetz alcaeus |
Re: Versenden von Strings im LAN
Ok...
ich habe meinen Fehler... meinen Fehler :wall: Ich danke dir / euch... Ich muss jetzt nicht sagen, was ich falsch gemacht habe, oder? Ok, alles funzt wie immer. Die Codes sind die gleichen und immer an die Tuts hängen, wenn Fehler auftreten... Danke! Bye PS: Dann kann das Coden ja weitergehen!!!! :bouncing4: |
Re: Versenden von Strings im LAN
Zitat:
Greetz alcaeus |
Re: Versenden von Strings im LAN
Ok, ich hatte bei OnClientRead folgendes stehen:
Delphi-Quellcode:
Dabei sollte nur dies hier stehen
s:=ClientSocket1.Socket.ReceiveText;
[delphi]s:=Socket.ReceiveText;[delphi] Und deswegen hat er auf Stur geschaltet. Ich glaube jedenfalls, dass das der Fehler ist, denn das ist so ziemlich die einzige Abweichung unserer Codes. Achso, und dann hatte ich noch bei dem SendText nicht die Connection angegeben... :oops: |
Re: Versenden von Strings im LAN
Danke dass du es hingeschrieben hast ! ich hatte genau den selben fehler THX !! (mein erstes socket proggy .. ^^ :drunken: )
|
Re: Versenden von Strings im LAN
Bitte, kein Problem... *glückwunsch*
|
Re: Versenden von Strings im LAN
Hiermit mache ich offiziell auf ein Tutorial namens "Einen Chat mit den Sockets programmieren" aufmerksam (*in Tut-Sparte schiel* ;-))
Meins :mrgreen: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:41 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz