小d我刚学CSocket1周,想通过CSocket来实现client去server查询数据。
可是问题来了。server开了一个2044这样的端口,然后client连接就可以查到数据,那怎么防止别的程序也连上2044端口来偷我的数据阿?再一个菜问题:这个server开了2044端口,可以支持多少个客户端来同时查询阿?
server怎么来分辨这些客户端阿?
可是问题来了。server开了一个2044这样的端口,然后client连接就可以查到数据,那怎么防止别的程序也连上2044端口来偷我的数据阿?再一个菜问题:这个server开了2044端口,可以支持多少个客户端来同时查询阿?
server怎么来分辨这些客户端阿?
解决方案 »
- 关于mySQL的使用方法!先谢过各位了
- COM 里面不支持TLS(Thread Local Storage) 吗?
- 如何将存在的socket付给新的socket?急!
- 关于VC/MFC的Dialog中嵌入word问题。
- 这样的双列弹出菜单怎么做
- 今天升级了,心情愉快,散分ING;问个问题进来有分
- Documents and Settings下的长路径,Window是函数比如(ShellExecute)解析错误??
- 怎样初始化一个字符指针
- 我已做了cab文件,为什么客户端还是下载不了我做的ActiveX控件?超急急急急
- vc计时器整点的时候触发事件
- 如何在控件中响应鼠标的down和up消息
- 各位做过UDP完成端口的大侠帮忙了
如,客户端连接后必须先发送一个特定的字符串等等第二个问题,能支持同时查询的数目得看你程序是怎么实现的,某些实现就只能一个客户端同时查询,某些实现能支持大量客户端同时查询。如何区分这些客户端你也可以加在协议里面,要求客户端给出自己的身份。另外你可以用getpeername来获得客户端连接的IP和Port
第二个问题,我补充一下。listen函数中可以设定。
int listen (
SOCKET s,
int backlog
);
backlog加以确定。server端accept()到连接时
SOCKET accept (
SOCKET s,
struct sockaddr FAR* addr,
int FAR* addrlen
);
从addr中可以得到client的IP,PORT信息,从而加以控制。