首先tcpserver跟tcpclient跟这个软件是不是没什么关系???另外我不是很懂 随便看了一眼代码.似乎有while(true)之类的代码.. 上次在别的帖子里面探讨无解..
就是void Receive()之类接收的代码 是使用异步好点还是使用whle(true)好?上次说tcpclient使用BeginReceive被人好顿喷.....这次又看到了..是不是 我真的错了?
就是void Receive()之类接收的代码 是使用异步好点还是使用whle(true)好?上次说tcpclient使用BeginReceive被人好顿喷.....这次又看到了..是不是 我真的错了?
难道假设有一个地址http://www.baidu.com/1.exe我使用tcpclient就可以连接???? IP是啥呀 端口是啥啊? 是不是我连接之后他自动就给我返回数据??
没有看到while(true)
你是哪里看到的
难道假设有一个地址http://www.baidu.com/1.exe我使用tcpclient就可以连接???? IP是啥呀 端口是啥啊? 是不是我连接之后他自动就给我返回数据??Dns.GetHostEntry("http://www.baidu.com/1.exe"); 这样会返回服务器的 ip, 端口默认是 80, 然后就能用 Socket 进行连接了
TcpClient client = new TcpClient("ip", 80);来连接了?这能连接?????????超出我想象了...
Console.WriteLine(uri.Host);
Console.WriteLine(System.Net.Dns.GetHostAddresses(uri.Host)[0]);
Console.WriteLine(uri.Port);
Console.WriteLine(uri.PathAndQuery);
C#对api又做了一次封装,最终调用的是gethostbyname,当然传的参数是img.bbs.csdn.net,需要把域名截取出来的,上C++代码:// 调用:Connect(“img.bbs.csdn.net”,80);
int32_t CHttpSockerWrapper::Connect(const char* addr ,int16_t port)
{
assert(m_socket != INVALID_SOCKET); PHOSTENT phostent = gethostbyname(addr);
if (phostent == NULL)
{
XX_TRACE(kTraceError, kTraceUtility, 0,
"%s gethostbyname falied, getlasterror(%d)",__FUNCTION__,WSAGetLastError());
return -1;
} SOCKADDR_IN server_sin;
server_sin.sin_family = AF_INET;
server_sin.sin_port = htons (port);
memcpy ((int8_t *)&(server_sin.sin_addr),phostent->h_addr, phostent->h_length); if (connect (m_socket,(PSOCKADDR) &server_sin,sizeof(server_sin)) == SOCKET_ERROR)
{
XX_TRACE(kTraceError, kTraceUtility, 0,
"%s connect falied, getlasterror(%d)",__FUNCTION__,WSAGetLastError());
return -1;
} return 0;
}
当然我只是推测,我说的对不?他说的那些好多年前不都尽人皆知了吗。迅雷就是收集下载地址,凡是发现下载的某个文件它的用户中有下载过,也就是存在于它收集的列表,就会从那些地址盗链。
诶我感觉很头疼呢,占用带宽严重啊。
我没研究过他的套路,但是看他的行为我觉得应该就是你说的这个德行了。
这东西说不上好坏吧就那B样吧,也没SP1234说的那么有特色,技术上也没什么太难的。
平台是他最大的特色应该说。