2011年12月23日

一个基于TCP的多线程文件下载模型

摘要: 服务端代码:View Code 1 UINT MTServerThread(LPVOID pParam); 2 UINT ClientThread(LPVOID pParam); 3 BOOL ParseCmd(char *str, CString& cmd, CString& params); 4 BOOL SendFile(SOCKET s, CString fname); 5 6 SOCKET server; 7 8 9 void CFileServerDlg::OnButton1() 10 { 11 // TODO: Add your control... 阅读全文

posted @ 2011-12-23 22:12 Sunny_NUAA 阅读(481) 评论(0) 推荐(0) 编辑

CString用法整理

摘要: VC:CString用法整理(转载) 1.CString::IsEmpty BOOL IsEmpty( ) const; 返回值:如果CString 对象的长度为0,则返回非零值;否则返回0。 说明:此成员函数用来测试一个CString 对象是否是空的。 示例: 下面的例子说明了如何使用CString::IsEmpty。 // CString::IsEmpty 示例 CString s; ASSERT( s.IsEmpty() ); 请参阅 CString::GetLength 2.CString::Left CString Left( int nCount ) const; throw( . 阅读全文

posted @ 2011-12-23 19:19 Sunny_NUAA 阅读(265) 评论(0) 推荐(0) 编辑

根据主机名获取IP地址

摘要: View Code 1 int CGetHostNameIPDlg::GetLocalIpAddress(const CString& sHostName, CString& sIPAddress) 2 { 3 struct hostent FAR *lpHostEnt = gethostbyname(sHostName); 4 if (lpHostEnt == NULL) 5 { 6 sIPAddress=_T(""); 7 return WSAGetLastError(); 8 } 9 LPSTR lpAddr = ... 阅读全文

posted @ 2011-12-23 19:11 Sunny_NUAA 阅读(631) 评论(0) 推荐(0) 编辑

获取本地主机名

摘要: View Code 1 int CGetHostNameIPDlg::GetLocalHostName(CString& sHostName) 2 { 3 char szHostName[256]; 4 int nRetCode; 5 6 nRetCode = gethostname(szHostName, sizeof(szHostName)); 7 8 if (nRetCode != 0) { 9 // An error has occurred10 sHostName = _T("Not availa... 阅读全文

posted @ 2011-12-23 19:09 Sunny_NUAA 阅读(212) 评论(0) 推荐(0) 编辑

VC调试方法大全

摘要: 转自:http://www.cnblogs.com/vcdog/archive/2010/05/20/1739871.htmlVC调试方法大全一、调试基础调试快捷键F5: 开始调试Shift+F5: 停止调试F10: 调试到下一句,这里是单步跟踪F11: 调试到下一句,跟进函数内部Shift+F11:从当前函数中跳出Ctrl+F10:调试到光标所在位置F9: 设置(取消)断点Alt+F9:高级断点设置跟踪调试1、尽量使用快捷键时行调试2、观察调试信息3、高级中断设置异常调试重试->取消->调试函数堆栈,用variables或者call stack 窗口Release调试1、经常测试 阅读全文

posted @ 2011-12-23 19:00 Sunny_NUAA 阅读(165) 评论(0) 推荐(0) 编辑

memmove和memcpy

摘要: 1.memmove函数原型:void *memmove(void *dest, const void *source, size_t count)返回值说明:返回指向dest的void *指针参数说明:dest,source分别为目标串和源串的首地址。count为要移动的字符的个数函数说明:memmove用于从source拷贝count个字符到dest,如果目标区域和源区域有重叠的话,memmove能够保证源串在被覆盖之前将重叠区域的字节拷贝到目标区域中。2.memcpy函数原型:void *memcpy(void *dest,const void *source,size_tcount);返 阅读全文

posted @ 2011-12-23 18:17 Sunny_NUAA 阅读(213) 评论(0) 推荐(0) 编辑

导航