В конструкторе своего класса пишу:

Код:
if (_host == undefined) _host = 'localhost';
if (_port == undefined) _port = 1234;
_conn = false;
_xmlSocket = new XMLSocket();
_xmlSocket.onConnect = Delegate.create(this, xmlOnConnect);
_xmlSocket.onClose = Delegate.create(this, xmlOnClose);
_xmlSocket.onData = Delegate.create(this, xmlOnData);
_xmlSocket.connect(_host, _port);
trace("connecting to: " + _host);
Далее в обработчике события коннекта:

Код:
_conn = success;
trace('connected: ' + success);
if (_conn) {
_xmlSocket.send("<test>hello</test>"+"\n");
}
else {
if (this["mess"] != undefined) this["mess"].removeTextField();
showInfoMess(_connFailText);
}
Создаю экземпляр класса и передаю туда в качестве _host свой айпи: 192.168.1.129. TCPServer у меня простенький, для тестов написан на Delphi. С локалхоста на этот сервер коннектится без проблем. С другой машины из сети - нет. Причём до обработчика события коннекта дело не доходит вообще, где-то затыкается. Проблемы с файрволлом исключил.
В механизме кроссдоменных разрешалок я понимаю очень мало, но думается, что оно тут не при чём.