Flash и TCP/IP

То что касается флеша, но не касается ВКонтакте API. Например проблемы при создании прыгающего мячика.
Ответить
Casperovskii
Сообщения: 429
Зарегистрирован: 22 июн 2012, 17:50

Flash и TCP/IP

Сообщение Casperovskii »

Проблема вот в чем: делаю сокетсервер на С++ и соответственно клиент на флеше. Но вот в чем проблема, коннект к серверу выполняется только в отладке.
При выполнении коннекта с обычного флеша (встроенного в браузер или автономного проигрывателя). Вылетает эта ошибка:

Код: Выделить всё

SecurityError: Error #2010: Не допускается использование сокетов SWF-файлам в local-with-filesystem.    at flash.net::Socket/internalConnect()    at flash.net::Socket/connect()    at MainTCPClient/conn()
Собстна, я понимаю, что это ошибка безопасности, но вот вопрос, будет ли работать коннект, если SWF-фаил будет лежать не на моем компе, а на каком-то хосте или в том же контакте?
В коде объявил:

Код: Выделить всё

private var clientSocket:Socket = new Socket(null,1234);
Строка вызывающая ошибку:

Код: Выделить всё

clientSocket.connect(textInputForIp.text,1234);
P.S. Пошел пока сам проверять. А вообще вопрос еще в том, может, есть другие методы прикручивания флеша к С++?
UPDATE: проверил, нет. Все равно не коннектит.
Casperovskii
Сообщения: 429
Зарегистрирован: 22 июн 2012, 17:50

Re: Flash и TCP/IP

Сообщение Casperovskii »

Так, нашел в чем косяк и вот тут нужна помощь. Косяк был в отсутствии на сервере файла crossdomain.xml, это исправил. Но не могу серверным приложением, написанным на С++ выдать файл политики клиенту. Совсем не пойму как это делается. Можно, конечно, выставить этот файл в открытый доступ, но тут куча дыр сразу возникает, поэтому не хочется, да и не можется пока. Есть ли другие методы?

Был бы очень благодарен за код на С++, как правильно отдать флешу файл политики.
Casperovskii
Сообщения: 429
Зарегистрирован: 22 июн 2012, 17:50

Re: Flash и TCP/IP

Сообщение Casperovskii »

Настроил отдачу файла политики, даже все вроде передается, но:

Код: Выделить всё

Error #2044: Необработанный securityError:. text=Error #2048: Нарушение изолированной среды: http://cs416520.userapi.com/u11023308/699e166447c3cc.zip не может загрузить данные из 127.0.0.1:1234.    at MainTCPClient()
Т.е. он не распознает фаил, как фаил... (Я передаю его сплошным потоком, сразу целый фаил). Пойду пока дальше гуглить, но, может, кто-то знает все-же, как быть?
Casperovskii
Сообщения: 429
Зарегистрирован: 22 июн 2012, 17:50

Re: Flash и TCP/IP

Сообщение Casperovskii »

Победа! Сказалось мое незнание С++. Нужно было добавлять в конец байтового передаваемого массива нулевой байт, причем как символ, а я передавал как строку.
Как оформлю по-человечьи код на С++, выложу сюда, если кому интересно.
Программирую в QT 4.8, так что там будут свои классы.
Ответить