-
Socket Problem!!
Hallo erstmal,
also ich habe bereits die Suchfunktion benutzt, bin aber nicht ganz fündig geworden. Ich bin dabei ein MiniChatTool in Delphi zu schreiben, um einfach ein wenig in die Socket-Programmierung reinzukommen.
Ich stehe allerdings seit kurzem vor einem Problem: In vielen Foren etc. wird gesagt, dass man per ServerSocket einen String wie folgt versendet 'ServerSocket.Socket.Connections[ID].SendText(Edit1.Text);'
Wenn ich allerdings versuche zu kompilieren, kommt ne meldung, dass es zu einem Verlust kommt, weil TCaption und Ansistring nicht kompatibel sind. So etwas wurde nirgendwo sonst beschrieben. Wenn ich Diese Daten dann mit dem Client empfange, zeigt er mir irgendwelche Schriftzeichen '摅瑩攱桔浥' !!!
Weiß jemand, um welches Problem es sich handeln kann, da ich in allen Tutorials immer wieder gesehen habe, dass Strings ganz einfach über 'SendText(Edit1.text)' oder auch einfach 'SendText('Hallo')' versendet werden konnten.
Ich hoffe jemand kann mir helfen ...
Mfg Nepster
-
Ich kann zwar kein Delphi, aber ich würde mal darauf tippen, dass du den Text erst in einen ansistring umwandeln muss (in C gibt die funktion c_str(), vielleicht gibts was ähnlichen dazu für Delphi?)
-
hab ich auch schon überlegt, aber ich hab kp was das für ne funktion wäre. Wusste nicht genau wonach ich suchen muss ...
Weiß da jemand mehr?
-
Benutzt du ein neueres Delphi?
ab 200? benutzt Delphi afaik standardmäßig Unicode-strings.
-
Danke erstmal für alle Antworten, habe inzwischen die Lösung des Problems gefunden. Um einen String in einen Ansistring zu konvertieren einfach: Ansistring(string) benutzen. Das brachte mich leider auch nicht zum erfolg, woraufhin ich in einem Forum erfahren habe, dass die neue Delphi Version einfach nen Fehler hat und Strings nicht über ReceiveText empfangen kann. Habe das Problem durch ne ältere Delphi - Version gelöst. Thread kann geschlossen werden.
-
hmm ist nicht immer gerade leicht aber man kommt schon dahinter wenn es einen wirklich interresiert! =)
lg