首页 > 代码库 > 简单的flash策略文件服务器!

简单的flash策略文件服务器!

最近在做一个flash小游戏,
众所周知,flash连接服务器socket的时候,需要向服务器请求策略文件。
以下是一个简单的策略文件服务器的代码c++:

 1 #include <Winsock2.h> 2 #include <stdio.h> 3 #pragma comment(lib,"WS2_32.lib") 4 #define _CRT_SECURE_NO_WARNINGS 5 void main() 6 { 7     WSADATA wsd; 8     SOCKET server;                                            //服务器socket 9     SOCKADDR_IN addrSrv;10     SOCKADDR_IN addrClient;11     SOCKET client;                                            //连接的客户端socket12     char szPolicy[1024] = "";13     strcat_s(szPolicy, 1024, "<?xml version=‘1.0‘?>");14     strcat_s(szPolicy, 1024, "<cross-domain-policy>");15     strcat_s(szPolicy, 1024, "<site-control permitted-cross-domain-policies=‘all‘/>");16     strcat_s(szPolicy, 1024, "<allow-access-from domain=‘*‘ to-ports=‘*‘/>");17     strcat_s(szPolicy, 1024, "</cross-domain-policy>");18     int len;19     if (WSAStartup(MAKEWORD(2, 2), &wsd) != 0)20     {21         printf("start up failed!\n");22         return;23     }24     server = socket(AF_INET, SOCK_STREAM, 0);                    //创建socket25     addrSrv.sin_addr.S_un.S_addr = htonl(INADDR_ANY);            //设置地址26     addrSrv.sin_family = AF_INET;27     addrSrv.sin_port = htons(843);                            //设置端口号28     bind(server, (SOCKADDR*)&addrSrv, sizeof(SOCKADDR));        //绑定29     printf("flash策略文件服务器已启动!\n");    30     31     listen(server, 5);                                        //设置最多连接数32     int count = 0;33     len = sizeof(SOCKADDR);34     while (1)35     {36         client = accept(server, (SOCKADDR*)&addrClient, &len);    //接收客户端连接37         char buff[1024] = "";        38         recv(client, buff, 1024, 0);        39         szPolicy[strlen(szPolicy)] = \0;40         send(client, szPolicy, strlen(szPolicy), 0);        41         closesocket(client);42         count++;43         printf("已成功返回%d个客户端!", count);44     }45     WSACleanup();46 }

 

简单的flash策略文件服务器!