![]() |
ChatProgg mit Indy Internetkompatibel machen
Hi Leute.
Ich habe eine kurze Frage: Ich habe ein Chatprogg geschrieben, das über LAN auch toll funktioniert. (mit Indy Server und Client) Mein Frage ist jetzt: was muss ich noch alles machen, dass das Prog auch übers Internet (auch über IP) funktioniert?? Danke für Antworten mr47 |
Re: ChatProgg mit Indy Internetkompatibel machen
Das tät mich auch mal interessieren !
Ich glaube aber, dass das unmöglich ist... so ein mist :cry: Ich glaube die Welt geht unter wenn ich das nicht herrausfinde... MFG |
Re: ChatProgg mit Indy Internetkompatibel machen
Zitat:
Das das bei Indy nicht geht wusste ich noch gar nicht! :gruebel: |
Re: ChatProgg mit Indy Internetkompatibel machen
ich habs voher ausprobiert, da kam immer das er nicht verbinden kann! (bzw. Selbstprogrammierte Verbindungsfehlermeldung)
:?: |
Re: ChatProgg mit Indy Internetkompatibel machen
Also rein Theoretisch müsste das übers Inet auch funzen, du brauchst halt nur immer die IP - Adresse des gegenübers.
Ich habe schon mal einen Chat für's Internet geschrieben und das hat auf geklappt, allerdings mit den UDP-Kompos von Indy. Doch das Projekt habe ich wieder eingestellt, das es Probleme mit Usern gab, die einen Router besitzen. Es ist also möglich. hibbert |
Re: ChatProgg mit Indy Internetkompatibel machen
Könntest mal was zum download machen oder so ?
|
Re: ChatProgg mit Indy Internetkompatibel machen
Normalerweise sollte es auch übers Internet funktionieren, sofern nicht einer von den beiden hinter einem Router sitzt.
|
Re: ChatProgg mit Indy Internetkompatibel machen
Hallo Mr47 und Äfan
Eigentlich ist ein Chat über das Internet kein Problem. Ihr solltet nur folgendes beachten: 1.) Ihr braucht natürlich die WAN-IPs und nicht die LAN-Ips. Die aktuelle WAN-Ip wird z.B. auf ![]() 2.) Die Ports die ihr benutzen wollt müssen, falls ihr einen Router besitzt, als forwarded angegeben werden. Jedenfalls, wenn hinter dem Rounter ein Server läuft. Beim Client siehts da besser aus. 3.) Ein Chat mit einem zentralen Server funktioniert besser als ein System, bei dem jeder Client auch einen idTCPServer benötigt. Meistens müssen dann nichtmal Ports freigeschaltet werden. Wenn es um einen Chat mit zentralen Server geht schaut euch von den Indys mal die idTCPDemo an. Eine Nachricht mit einem TCP-Client zu empfangen ist garnicht so einfach. Früher war es jedenfalls oft so, das Programme die mit Timern ankommende Nachrichten ausgelesen haben abgestürzt sind. Mit der Thread-Variante passiert das nicht. Ausserdem ist eine Lösung mit Threads ohnehin viel eleganter :thumb: MfG Christan |
Re: ChatProgg mit Indy Internetkompatibel machen
So, ich habe jetzt einen gemacht, wenn ich aber verbinden will, kommt ein Socket Error # 10060 :cry: Ich weiß net warum...
Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
begin Client.Host := Edit1.Text; Client.Connect; end; procedure TForm1.Button3Click(Sender: TObject); begin try memo1.Lines.Add('>>'+edit1.Text); Client.WriteLn(edit1.Text); except memo1.Lines.Add('Verbindung unterbrochen') end; edit2.Clear; end; procedure TForm1.ServerExecute(AThread: TIdPeerThread); var ms: string; begin ms:=athread.Connection.ReadLn('',5000); memo1.Lines.Add(ms); end; |
Re: ChatProgg mit Indy Internetkompatibel machen
hmm.... wie ist das mit dem Rooter??
Ich habe da einen Chat(XChat: Meine Bezeichnung) mit Hilfe von Indy Kompanenten geschrieben und habe vor es über Internet zu benützen. Bei dem Rooter sind die Port schon freigeschaltet. So... WEnn ich verbinden möchte, funkt es net. Da kommt auch so eine Nachricht, wie SocketError oder so. Hab mit IndyUDP probiert funkt auch net... Wie kann ich es so machen, dass das Programm zu dem Server, der gerade hinter einem Rooter sitzt sich verbindet? Es muss ja schon gehen, oder? Wenn ich z.B. 2 Rechner hinter einem Rooter habe und eins davon ist ein Server und der Client ist irgend einer aus dem Netz(Internet).. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:26 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 by Thomas Breitkreuz