C++服务器无法识别 AS3 套接字
C++ server doesn't recognize AS3 socket
嗯,不到24小时就回答了三个问题。但我想缺乏任何有用的文档(无论如何我都能找到)让我别无选择。
现在,我知道了Adobes开始的所有安全工作,策略文件处理和必须处理的沙盒限制。 我完成了建议的选项更改,允许在我的 AS3 项目中访问网络。我准备好了我的服务器,以便在连接时立即吐出策略文件;但问题是 flash/AS3 无论你想怎么称呼它,都看不到我的服务器(或者相反)
AS3 延迟几秒钟,就像文档所说的那样,如果它努力建立连接/查找策略文件,但它从不建立连接期,尝试一段时间,然后放弃并吐出我一个访问错误(因为它没有找到它假设它在网络上不允许的策略文件,所以它对我尝试很生气......倔强的窃听器)
Flash永远不会得到它想要的东西,我的服务器从来没有检测到任何连接(失败或成功,什么都没有)我知道我的服务器很好,因为我已经用我在C++编写的测试客户端测试了它,他们就像最好的朋友一样交谈。
所以我现在几乎失去了想法,我想过在 AS3 中重新创建 winsock 类,但我什至不知道 winsock 的 connect() 函数实际上是如何工作的; 我得到了声明,没有我能找到的定义。
我不确定你真正需要从我的源代码中得到什么,但仅在客户端中就已经有超过一千行,所以发布所有内容并不是一个真正的选择。 我在这里至少给出我认为相关的内容。
function hwndEnterFrame(e:Event):void
{
//trace("Frame Entered");
if (firstframe)
{
trace("try to reconcile policy file...");
//Security.loadPolicyFile("192.168.1.2:843");
TSocket = new Socket("192.168.1.2",843);//must call flush() to send data***
firstframe = false;
}
Security.loadpolicyfile 似乎没有做任何事情,无论有没有它,我都会得到相同的消息,代码似乎正在套接字声明中指定的位置查找策略文件。一切都编译得很好,它只是没有做我想做的事情 :P其他人似乎都在用Perl或Python编写他们的服务器 我没有找到太多丰富的C++材料,尽管据我所知,TCP是跨任何支持它的平台的通用连接(可以跨语言没有任何有趣的业务)
呃,我现在得到的,如果你想要代码的其他部分(客户端或服务器端,无论你想要什么)都快把它贴在这里。
编辑:
我在网上找到了一个我下载的 swf,它连接到它附带的示例服务器(但该服务器是用 c sparp 编写的,所以它对我没有多大用处),但它无法连接到我的服务器。因此,已知良好的闪存客户端无法连接到我的C++服务器,但C++客户端将连接到我的C++服务器。所以它显然在服务器端,因为它不会听到来自 flash 应用程序(我的或 expamle 应用程序)的任何连接
干杯;-泰勒
我终于想通了。我需要AllowDomian(IPofserver)
.我以为我已经尝试过了,但显然没有。
- 当套接字连接断开时检测C/C++Unix
- 通过套接字[TCP]传输数据 如何在C / C ++中打包多个整数并使用send() recv()传输数据
- 如何通过套接字将文本文件的内容从服务器发送到客户端
- 如何在C/C++中用FD_set Unix设置套接字文件描述符
- 套接字读取后,我在缓冲区中看到意外输入
- 如何在CPP中创建应该在Windows和Linux上运行的套接字?
- 我可以与 python 服务器而不是 c++ 客户端建立 tcp/ip 套接字吗?
- 套接字连接"Operation not permitted"错误,甚至使用升压/平发器根.cpp
- WINAPI 注册应用程序重新启动时不清除打开的套接字
- (Winsock) UDP 接收工作正常,但同一套接字的发送失败
- MSG_WAITALL的套接字发送得到了 22 EINVAL
- C++套接字客户端到 Python 服务器未创建连接
- 在不知道套接字的情况下关闭网络连接
- C++套接字对不读/写父/子
- 非更新套接字消息
- SIGSEGV on Boost UDP 套接字关闭 - tcache_get at malloc.c.
- 将"uint8_t"(从套接字读取)隐式转换为"char"安全吗
- 当对套接字 send() 的同步调用由于连接另一端丢失而被阻止时,如何恢复?
- 当客户端在 write() 期间终止连接时,由对等套接字错误重置连接
- C++服务器无法识别 AS3 套接字