缓冲越界检测
在一次疏忽中,发现了Windows2000/2003与WindowsXP对Socket的发送/接收缓冲越界检测是不同的。
例如:char buf[1024]; recv(m_hSocket, buf, 10000, 0) ;
这样的代码在XP环境下,只要接收数据是小于10000的话是不会出现错误的。
但如果在Win2000/2003下,则会立刻报错,原因可能是系统先进行了数组越界检测。
缓冲越界检测
在一次疏忽中,发现了Windows2000/2003与WindowsXP对Socket的发送/接收缓冲越界检测是不同的。
例如:char buf[1024]; recv(m_hSocket, buf, 10000, 0) ;
这样的代码在XP环境下,只要接收数据是小于10000的话是不会出现错误的。
但如果在Win2000/2003下,则会立刻报错,原因可能是系统先进行了数组越界检测。