LINUX SOCKET PART 2: THE SERVER SIDE ISSUES
摘要:NETWORK PROGRAMMINGLINUX SOCKET PART 2: THE SERVER SIDE ISSUES MenuNetwork Story 1Network Story 2Network Story 3Network Story 4Network Story 5Network Story 6Socket Example 1Socket Example 2Socket Example 3Socket Example 4Socket Example 5Socket Example 6Socket Example 7Advanced TCP/IP 1Advanced TCP/I
阅读全文
posted @
2012-07-26 11:59
kkmm
阅读(340)
推荐(0) 编辑
UNIX I/O with TCP/IP
摘要:To a certain degree, I/O with sockets is like file I/O.TCP/IP sockets are identified using file descriptors.
阅读全文
posted @
2012-07-26 10:43
kkmm
阅读(175)
推荐(0) 编辑
ioctlsocket的作用
摘要:ioctlsocket is short for io control socket,也就是指示SOCKET的IO mode.可以为阻塞或者非阻塞.以下代码copy from MSDN。代码中iMode参数指示了阻塞或者非阻塞的模式。===================================================================================================================================================#include <winsock2.h>#include
阅读全文
posted @
2012-07-25 17:28
kkmm
阅读(3553)
推荐(1) 编辑
__in __out 是什么
摘要:rup wrote:> What is the meaning of these keywords used before variables in a> function parameters?> > __in> __out> __in_opt> These are Microsoft extensions that annotate the parameters for__in: input parameter__out output parameter__in_opt: optional input parameter
阅读全文
posted @
2012-07-25 17:21
kkmm
阅读(425)
推荐(0) 编辑
__w64 copied from MSDN
摘要:__w64Visual Studio 2010Other Versions0 out of 1 rated this helpful-Rate this topic(Microsoft Specific) Lets you mark variables, such that when you compile with/Wp64the compiler will report any warnings that would be reported if you were compiling with a 64-bit compiler.type __w64 identifierParameter
阅读全文
posted @
2012-07-25 16:40
kkmm
阅读(407)
推荐(0) 编辑
网络字节序与主机字节序的转换
摘要:在对IP地址结构体SOCKADDR_IN赋值的时候,经常会用到下列的函数htonl,htons,inet_addr,与之相对应的函数是ntohl,ntohs,inet_ntoa。查看这些函数的解析,会发现这些函数其实是与主机字节序和网络字节序之间转换有关。就是什么网络字节序,什么是主机字节序呢?下面我写出他们之间的转换:用IP地址127.0.0.1为例:第一步 127 . 0 . 0 . 1 把IP地址每一部分转换为8位的二进制数。第二步 01111111 00000000 00000000 00000001 = 2130706433(主机字节序)然后把上面的四部分二进制数从右往左按部分重新排
阅读全文
posted @
2012-07-25 16:27
kkmm
阅读(328)
推荐(0) 编辑
What is the difference between _tmain() and main() in C++?
摘要:_tmaindoes not exist in C++.maindoes._tmainis a Microsoft extension.mainis, according to the C++ standard, the program's entry point. It has one of these two signatures:int main();int main(int argc,char* argv[]);Microsoft has added a wmain which replaces the second signature with this:int wmain(
阅读全文
posted @
2012-07-10 19:04
kkmm
阅读(412)
推荐(0) 编辑
error LNK2019: 无法解析的外部符号 "__declspec(dllimport)
摘要:我在VS2005下写C++的程序,采用一个工程生成DLL文件给另一个工程执行,但每次执行时都出现 error LNK2019: 无法解析的外部符号 "__declspec(dllimport)错误。检查了好几遍代码都觉得没有问题。最后发现是字符集出现问题。生成DLL文件的字符集是Unicode而生成exe文件的字符集为默认的ASCII。只要统一字符集即可解决问题:VS2005的c++项目默认字符集是使用 Unicode 字符集,在项目属性->配置属性-->常规->项目默认值->字符集中设置字符集即可。补充VC6.0是默认采用ASCII字符集的。
阅读全文
posted @
2012-07-05 11:32
kkmm
阅读(20986)
推荐(1) 编辑
添加LIB文件的3大步骤
摘要:第一次使用VS2010,也是初学者开始编写VC++,程序首先学习编写DLL文件,编译完自己的DLL文件后,要在其它项目中使用,开始遇到很多错,但是在网上搜索了好久后,终于解决了问题。1、H文件目录:依次点击“项目——XX 属性——C/C++——常规”,在“附加包含目录”中加入H文件所在的文件夹2、LIB目录:依次点击“项目——XX 属性——链接器——常规”,在“附加库目录”中加入LIB所在目录3、还没完,在“链接器”中找到“输入”,在“附加依赖项”中加入abc.lib或用#pragma comment(lib,"abc.lib")
阅读全文
posted @
2012-07-05 11:30
kkmm
阅读(975)
推荐(0) 编辑
无法解析的外部符号的几种可能(lib方面的)(还有dll方面的,不在本文中)
摘要:无法解析的外部符号的几种可能 1. lib 文件未引入。可使用“#pragma comment(lib, “winsock.lib”) ”语句添加 lib 引用,也可在项目依赖里添加。2. 类方法的实现未加类标识。如, “CTest::Connect(void) { … }” 写成了 “Connect(void) { … }”。3. 缺少 obj 文件。在项目里添加“包含路径”:C:/curl/lib/release-dll/*.obj。4. 没有将项目需要的头文件、源文件都加入项目中,这个错误我犯了好几次。另外的一些解析:当用Visual Studio 链接程序时,往往会产生”无法解析的外部
阅读全文
posted @
2012-07-04 18:50
kkmm
阅读(21751)
推荐(1) 编辑
com组件和一般dll的区别
摘要:这阵子在想一个需要利用com组件的小程序怎么做,突然想起上次去面试的时候考官问过autocad开发时为什么要利用com,而不采用一般的dll呢? 到google上查了一下,许多人也问了一样的问题:) 用com来写程序要比普通的dll麻烦一些,但是带来的好处也大很多,尤其是在开发像autocad这样大型软件的时候,需要跨区域来协同工作。 “学习COM,首先要知道COM的目的是什么,它解决了一个什么样的问题,在此基础上,MS提供了各式各样的可扩展的COM服务,COM编程接口。这些服务和接口恐怕一个程序员一辈子都不可能通晓,因为发展是如此之快。大家也没有必要通晓这些接口,就象对待大量的WIN ...
阅读全文
posted @
2012-07-04 16:33
kkmm
阅读(9272)
推荐(2) 编辑