WSASocket() [问题点数:0分]

Bbs1
本版专家分:5
结帖率 100%
Bbs2
本版专家分:297
Bbs7
本版专家分:14581
Blank
黄花 2005年6月 C++ Builder大版内专家分月排行榜第二
2004年11月 C++ Builder大版内专家分月排行榜第二
Blank
蓝花 2006年5月 C/C++大版内专家分月排行榜第三
2006年5月 C++ Builder大版内专家分月排行榜第三
WSASocket端API
创建一个与制定传送服务提供者绑定的套接口 此函数为socket()的扩展版本,其功能都是创建一个原始套接字。使用时需要包含 winsock2.h 头文件和链接ws2_32.lib库。 SOCKET WSASocket( _In_ int                af,//地址族规范,目前仅支持AF_INET格式 _In_ int                t
WSAsocket客户端请求服务器示例
DWORD WSARequestServerVerifyCode(const std::string server_ip, int server_port, const std::string& request_verify_code_xml_) { if (request_verify_code_xml_.length() <= 0) return -1; USES_CONVERSI
Windows网络编程中Socket与WSASocket区别
这2个函数的主要功能都是创建一个SOCKET,函数定义分别如下:SOCKET WSAAPI socket( _In_ int af, _In_ int type, _In_ int protocol );SOCKET WSASocket( _In_ int af, _In_ int type, _In_ int
WSASocket的问题.
问题如下:rnsocket= WSASocket(PF_INET, SOCK_STREAM, 0, NULL, 0,WSA_FLAG_OVERLAPPED);rn//ok!rnWSAConnect(...)rn//not ok!rnint Error = WSAGetLastError();rn//Error==WSAEWOULDBLOCKrnrnswitch (lParam) rn rn case FD_CONNECT: rn SetSelectEvent(socket,FD_WRITE);rn PostMessage(m_hwnd, WM_UD_SOCKET, (WPARAM)0,(LPARAM)FD_WRITE);rn//执行rn break;rn case FD_READ: rn break;rn case FD_WRITE:rn WSABUF Buf;rn Buf.buf="ssdfsfsdf";rn Buf.len=10;rn if(!Send(&Buf))rn rn //errorrn int Error = WSAGetLastError();rn Error =WSAENOTSOCKrn return 0;rn rn break; rn rnrn为什么发送不行?rn是不是没有建立连接?rn
WSASocket出问题
sockRaw = WSASocket(AF_INET,SOCK_RAW,IPPROTO_ICMP,NULL, 0,WSA_FLAG_OVERLAPPED);rn if (sockRaw == INVALID_SOCKET)rn rn WSAGetLastError(); rn ExitProcess(0xff);rn rn//WSAGetLastError()返回0x271D查了一下即:rn以一种访问权限不允许的方式做了一个访问套接字的尝试rn//请问高手们怎么解决?谢谢
WSASocket 链接错误
有人说要这样:rn[code=PHP]rn implib ws2_32.lib c:\winnt\system32\ws2_32.dll rn 或者 implib ws2_32.lib c:\windows\system32\ws2_32.dll rn 再在你的工程里加入ws2_32.lib rn 另外头文件应该用 #include rn[/code]rn我也这样做了,可还是不行。
WSASocket()问题!!!
至今搞不清楚WSASocket()和Socket()的区别,msdn讲的那么抽象,rn哪位高手能给个通俗的解释,谢谢!
vs2010 WSASocket()
vs2010下提示WSASocket not found ,可是我都包含头文件和#pragma comment(lib, "ws2_32.lib") 很不解,求前辈指教。
WSASocket()和socket()两个函数的区别
1. http://hi.baidu.com/hxshellcode/item/21d36ff123a8b72e753c4caf 摘要: WSASocket是Windows专用,支持异步操作; socket是unix标准,只能同步操作。 Socket可采用多线程实现非阻塞 。 #具体看链接。 2. http://blog.163.com/zb_wenwu
WSASocket 返回错误 10013怎么解决?
原文:http://hi.baidu.com/zhaxiu3/item/606b8b087a3b7933a2332a14 程序的权限不够,应用管理员权限打开程序运行方可。 如何使vc程序运行时请求管理员权限? 如果是2005或者2008 就简单了,直接项目右键---属性---链接器---清单文件---uac执行级别 选择requireAdministrator 重新编译 这样
WSASocket写的简单的C/S端
/* * 服务器端 */ #include #include #include #pragma comment(lib,"Ws2_32.lib") SOCKET sockSvc;//服务器端socket SOCKET sockConnect; //连接用的socket DWORD WINAPI Recv
WSASocket()与Socket()的区别
WSASocket是Windows专用,支持异步操作; socket是unix标准,只能同步操作。 Socket可采用多线程实现非阻塞   winsock是socket的windows平台的实现。winsock是微软专门为windows操作系统开发的socket网络编程接口,而socket是通用网络编程接口。 socket() 函数创建一个通讯端点并返回一个套接口。但是在socket库中例...
socket与WSASocket互连?
现在很多windows的服务器都用IOCP,那么socket就是用WSASocket创建的。那么如果客户端用原始的::socket(AF_INET, SOCK_STREAM,0)来创建,能否连接上IOCP的服务器么?目前我测试的结果是不能,::connect返回-1。那么是不是表示IOCP的服务器只支持Windows的客户端来连接呢?因为WSASocket是微软的API啊。rn一下是代码:rn服务器:rn[code=c]// IOCPServer.cpp : 定义控制台应用程序的入口点。rn//rnrn#include "stdafx.h"rn#include rn#include rn#include rn#include rn#include rn#include rn#include rn#include rntypedef unsigned (__stdcall *PBEGINTHREADX_THREADFUN)(void* lpParameter);rn#pragma comment(lib,"ws2_32.lib")rn#pragma comment(lib,"Mswsock.lib")rn#pragma comment(lib,"Winmm.lib")rnrnclass MyOverLapped :public WSAOVERLAPPEDrnrnpublic:rn enumrn rn en_INVALID = 0,rn en_ACCEPT,rn en_SEND,rn en_RECEIVE,rn en_MAXrn ;rn SOCKET m_socket;rn int m_opt;rnrn MyOverLapped()rn rn memset(this,0,sizeof(*this));rn rn rn;rnrnHANDLE gCompletion = 0;rnLPFN_ACCEPTEX gFnAcceptEx;rnLPFN_GETACCEPTEXSOCKADDRS gFnGetAcceptExSockaddrs;rnrnunsigned WINAPI MyOnAccept(void* lpParam)rnrn DWORD dwTrans = 0;rn DWORD dwKey = 0;rn LPOVERLAPPED lpol;rnrn while (true)rn rn BOOL bOK = ::GetQueuedCompletionStatus(gCompletion,rn &dwTrans, (LPDWORD)&dwKey, (LPOVERLAPPED*)&lpol, WSA_INFINITE);rn if (bOK == false)rn rn std::coutm_opt = MyOverLapped::en_RECEIVE;rn if (::WSARecv(pMyOverLapped->m_socket, &wsaBuf, 1, &dwBytes, &dwFlags, (LPWSAOVERLAPPED)pMyOverLapped, NULL) != NO_ERROR)rn rn if(::WSAGetLastError() != WSA_IO_PENDING)rn rn std::cout<<<<>cmd;rn rnrnrn[/code]rnrn求大神解读
关于WSASocket的问题?
我在函数中想用WSASocket,msdn上说rnHeader: Declared in Winsock2.h.rn Library: Use Ws2_32.lib.rn但我include Winsock2.h,却说很多结构重定义,我该在那里加入#include 啊?rn
关于 WSASocket, 一定给分!!!
Hi, 各位!rnrn如果我的函数调用返回错误号 10055,意思是:rnNo buffer space available. rnAn operation on a socket could not be performed because the system lacked sufficient buffer space or because a queue was full. rnrn请问这是什么意思啊?rnrnSOCKET WSASocket (rn int af, rn int type, rn int protocol, rn LPWSAPROTOCOL_INFO lpProtocolInfo, rn GROUP g, rn DWORD dwFlags rn);rnMSDN 里面的帮助是这样的,但我没有看懂,能给我讲讲各个参数的意思和用法吗?rnrnaf rn[in] An address family specification. rntype rn[in] A type specification for the new socket. rnprotocol rn[in] A particular protocol to be used with the socket that is specific to the indicated address family. rnlpProtocolInfo rn[in] A pointer to a WSAPROTOCOL_INFO structure that defines the characteristics of the socket to be created. rng rn[in] Reserved for future use with socket groups. The identifier of the socket group. rndwFlags rn[in] A flag that specifies the socket attribute. rnrn谢谢!!
wsasocket 为什么调用失败
请教一下,为什么 这个调用失败rn m_hListenSocket = WSASocket(AF_INET, SOCK_STREAM, IPPROTO_TCP, NULL, NULL, WSA_FLAG_OVERLAPPED);rnwsagetlasterror 返回错误6,句柄无效rnrn已经包含rn#pragma comment(lib,"ws2_32")rn#include rnrn执行<em>wsasocket</em>前调用rn WORD wVersionRequested;rn WSADATA wsaData;rn int err;rn rn wVersionRequested = MAKEWORD( 2, 2 );rn rn err = WSAStartup( wVersionRequested, &wsaData );rn if ( err != 0 ) rn return FALSE;rn rnrn rn if ( LOBYTE( wsaData.wVersion ) != 2 ||rn HIBYTE( wsaData.wVersion ) != 2 ) rn WSACleanup( );rn return FALSE; rn rnrnrn
请教。WSASocket的问题。
SOCKET hListener;rnhListener = WSASocket (AF_INET, SOCK_STREAM,0,NULL,0,WSA_FLAG_OVERLAPPED);rnif (hListener == INVALID_SOCKET)rnrn //printf( "Socket Create Failed\n");rn char kk[20];rn _itoa( hListener, kk, 10 );rn AfxMessageBox( kk );rn return -1;rnrn程序原来是在控制台下的,现在我复制到MFC下,在一个按钮的响应中运行,hListener就总是返回INVALID_SOCKET了。有谁知道为什么吗?rn
在使用WSASocket时
在使用VC 用WSASocket 来初始化socket时,包含头文件”afxwinsock.h“,rn但通过编译,在链接时编译器声称"WSASocket"不能被解析,各位有何高见,rn不尽谢意!
WSASocket函数详细介绍
n 适用人群n n windows网络编程的初学者n nnn 课程概述n n 课程简介:n这部教程是windows网络编程课程的第一部分课程:tcp/ip协议n后续会有第二部分课程:udp/ip协议以及第三部分课程http协议的课程发布。希望能够帮助到大家。n课程内容:nc/s模型的编码,5种windows网络模型:select,异步选择,事件选择,重叠io,完成端口,以及基础理论知识的讲解。n课程分八章,总课时100课时左右,每日更新2~5节.n课程代码会带大家一行一行书写,保证大家都能够学会。n课程适合人群:n网络编程爱好者,网络编程初学者n课程章节:n第一章 c/s模型的讲解以及代码实现n第二章 select模型的讲解以及代码实现n第三章 异步选择模型的讲解以及代码实现n第四章 事件选择模型的讲解以及代码实现n第五章 重叠i/o模型的讲解以及代码实现n第六章 完成端口模型的讲解以及代码实现n第七章 tcp/ip基础知识的讲解,包括网络分层,三次握手,四次挥手,协议头等等。n n
WSASocket使用问题。
#include rn#include rnrn然而调用sockRAW = WSASocket(AF_INET,SOCK_RAW,IPPROTO_ICMP,NULL,0,WSA_FLAG_OVERLAPPED);rn时出错,rnerror C2065: 'WSASocket' : undeclared identifierrn为什么?rnWSASocket是winsock2的新函数,#include ,会出现更多的错误。rn请指教!rn在线等候。rnrnrn
socket WSAsocket 有什么区别?
socket WSAsocket 有什么区别?
WSASocket 返回10106
WSASocket 返回10106 ,说是协议不支持或者未安装,但是WSAStartup已经调用成功了。rn同样的WSASocket创建套接字,在DEMO控制台下可以,但是放到MFC的对话框里就返回10106了,该怎么解决哦?rn大家帮忙,谢谢了!
关于WSASocket函数?
编译错误:G:\Microsoft Visual Studio\MSDev98\MyProjects\ping\pingDlg.cpp(307) : error C2065: 'WSASocket' : undeclared identifierrnrnrn我又在前面加了::,错误:G:\Microsoft Visual Studio\MSDev98\MyProjects\ping\pingDlg.cpp(307) : error C2039: 'WSASocket' : is not a member of '`global namesrnpace''rnrnrn是不是我写错字母了?好像没有!不知哪个错了?帮忙rnrn还有用socket极其对应的struct类型时,在stdafx.h重要不要加入afxsock.h?rn
WSASocket的参数IPPROTO_IP和IPPROTO_TCP
WSASocket(AF_INET,SOCK_STREAM,IPPROTO_IP,NULL,0,SOCK_STREAM);rnrnWSASocket(AF_INET,SOCK_STREAM,IPPROTO_TCP,NULL,0,SOCK_STREAM);rnrn为什么客户端和服务器端分别指定IPPROTO_IP和IPPROTO_TCP程序能正常运行?rnrn客户端和服务器端不需要指定相同的参数吗?
WSASocket函数详解
课程概述rn rnrn 这部教程是windows网络编程课程的第二部分课程:基于udp/ip协议的网络模型 rnrnrn 网络编程是互联基石,是程序猿基础必备技能,咱们这部UDP/IP课程为大家介绍有关于UDP/IP基本理论知识的分析,以及5个常用的网络模型,课程以代码实践为主,理论分析为辅,希望能帮助到大家。 rnrnrn课程特点:rn课程代码会带大家一行一行书写,保证大家都能够学会。rnrnrn rnrnrn rnrn
问一个关于WSASocket的问题
WSASocket类中WSASend和WSARecv两个函数需要以下参数rn SOCKET s,rn LPWSABUF lpBuffers,rn DWORD dwBufferCount,rn LPDWORD lpNumberOfBytesSent,rn DWORD dwFlags,rn LPWSAOVERLAPPED lpOverlapped,rn LPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutinernrn小弟经验比较欠缺,请哪位大侠指点一下如何定义这些参数,最好给个示例,谢谢
为什么啊 WSASocket()不能用
我的VC++为什么不能用WSASocket()。难道不支持新版本的套接字??????
WSASocket编译无法通过!!!急。。。。。
error C2065: 'WSASocket' : undeclared identifierrn
WSASocket问题,急!急!急!
我的通讯程序,用tcp/ip传文件,一端用的是linux的tcp的socket, 发送用writern另一端是win2000,用的是WSASocket, 在传一个8M的文件时候怎么就是传的不全阿,rn是不是两边的机器不同步,还是什么原因?按理说,tcp连接是可靠的,需要回响应的阿rn希望有经验的程序员帮帮忙阿!!!!!!!!!
WSASocket( ) 怎样与 stdin 结合使用
WSASocket( ) 怎样与 stdin 结合使用
WSASocket函数未定义和重定义错误
报错error C2065: 'WSASocket' : undeclared identifier 意思是WSASocket函数没有声明定义 WSASocket()是:创建一个与指定传送服务提供者捆绑的套接口,可选地创建和/或加入一个套接口组。 此函数为socket()的扩展版本,其功能都是创建一个原始套接字。使用时需要包含 winsock2.h 头文件和链接ws2_32.lib库。 ...
WSASocket中的WSA是什么意思?
WSASocket中的WSA是什么意思?
vc网络编程 出现wsasocket未定义
我在vs2008下编译一个网络程序,用#progma comment(lib,"ws2_32.lib)不包含winsock2.h的时候出现error C3861: “WSASocket”: 找不到标识符, “WSA_FLAG_OVERLAPPED”: 未声明的标识符两个错误。包含winsock2。h的时候出现一大堆的宏重定义 如:“sockaddr”: “struct”类型重定义。。上网百度和msdn半天没结果,在线等大牛指教。
WSASocket()创建套接字不成功解决方法
这几天我在写一个模仿windows自带的ping程序,可是套接字总是创建不成功,在网上找了一些资料最后总算把问题解决了,现在总结一下。 解决方法:以管理员运行VS就行了我的是vs2013,vs2010也一样。 /*Winsock 初始化*/ if (WSAStartup(MAKEWORD(2, 2), &wsaData) != 0) { //如果初始化不成功则报错,GetLastErro
WSAsocket与socket有区别吗?
最近我在学习windows编程时看到了有关WSAsocket与socket的不懂的地方,它们之间到底有什么样的区别呢?
郁闷中....WSASocket的最后一个参数问题!!!
WSASocket的最后一个参数在MSDN中有以下几种取值:rnWSA_FLAG_OVERLAPPED = 1rnWSA_FLAG_MULTIPOINT_C_ROOT =2 rnWSA_FLAG_MULTIPOINT_C_LEAF =4rnWSA_FLAG_MULTIPOINT_D_ROOT =8rnWSA_FLAG_MULTIPOINT_D_LEAF =16rnrn但是有这种写法:rn if((s = WSASocket(AF_INET,SOCK_STREAM,IPPROTO_IP,NULL,0,0))rn == INVALID_SOCKET)rn rn outerr("WSASocket()");rn return 1;rn rnrn请问这里的最后一个参数为0,表示什么意思???rn
mfc聊天程序,利用WSASocket来实现
利用WSA扩展函数进行聊天,其中也用到了多线程的思想。WSASocket进行套接字编程。 用到了IP控件以及通过IP获得主机名等技巧
为什么我不能用winsock下的WSASocket()函数?
在用WSASocket()函数时老是出这样的错误:rn[Linker Error] Unresolved external 'WSACreateEvent' referenced from D:\PROGRAM FILES\BORLAND\CBUILDER5\PROJECTS\SERVER\MAINPROC.OBJrn我已经用了#include 啊rn但是有些以WSA开头的函数能用,有些不能用rn如:WSAStartup()能用,而WSASocket(),WSACreateEvent()等不能用rn这是为什么呢?
在用WSASocket()创建一个多播套接字的时候编译出现错误'WSASocket' : undeclared identifier等.
在用WSASocket(AF_INET, SOCK_DGRAM, 0, NULL, 0, WSA_FLAG_MULTIPOINT_C_LEAFrn | WSA_FLAG_MULTIPOINT_D_LEAF | WSA_FLAG_OVERLAPPED);创建一个多播套接字的时候出现如下错误:为什么?加了#include 且连接了Ws2_32.lib后,错误更多.rnerror C2065: 'WSASocket' : undeclared identifierrnerror C2065: 'WSA_FLAG_MULTIPOINT_C_LEAF' : undeclared identifierrnerror C2065: 'WSA_FLAG_MULTIPOINT_D_LEAF' : undeclared identifierrnerror C2065: 'WSA_FLAG_OVERLAPPED' : undeclared identifier
请教 WSASocket函数 需要什么头文件
SockRaw=WSASocket(AF_INET,SOCK_RAW,IPPROTO_RAW,NULL,0,WSA_FLAG_OVERLAPPED);rnrn程序编译时提示: rnC:\Documents and Settings\fufo2\桌面\synkill\2.c(88) : warning C4013: 'WSASocket' undefined; assuming extern returning intrnC:\Documents and Settings\fufo2\桌面\synkill\2.c(88) : error C2065: 'WSA_FLAG_OVERLAPPED' : undeclared identifierrnrn我一加了文件头rn#include "winsock.h"rn怎么办?rnrnrnrn
完成端口的socket一定要用WSASocket()创建吗?
如题
调用WSASocket()函数出错,为什么啊?
我在用MFC建的程序中(选中了socket)rn调用WSASocket()建立组播套接字时总是编译不通过,提示WSASocket没定义,为什么啊?rn代码如下:rnmultiSock=WSASocket(AF_INET, SOCK_DGRAM, IPPROTO_UDP,rn NULL, 0, rn WSA_FLAG_MULTIPOINT_C_LEAF | WSA_FLAG_MULTIPOINT_D_LEAF);rn错误信息:rn:\我的程序\ClientMDI\RevPlayWnd.cpp(58) : error C2065: 'WSASocket' : undeclared identifierrnE:\我的程序\ClientMDI\RevPlayWnd.cpp(60) : error C2065: 'WSA_FLAG_MULTIPOINT_C_LEAF' : undeclared identifierrnE:\我的程序\ClientMDI\RevPlayWnd.cpp(60) : error C2065: 'WSA_FLAG_MULTIPOINT_D_LEAF' : undeclared identifierrn需要包含哪些头文件啊?我加入winsock2.h后出现很多重定义,晕死。rn大哥帮帮我啊!
WSASocket出现10044错误,怎么解决?
wince5.0的内核,EVC4.0的编程环境。我导入的是ws2.lib的库。可是在我用WSASocket(AF_INET, SOCK_RAW, IPPROTO_RAW, NULL, 0, WSA_FLAG_OVERLAPPED)建立套接字的时候,出现了这个错误。查看了一下MSDN,错误是“The support for the specified socket type does not exist in this address family”。知道是SOCK_RAW产生的不支持的原因。可是,我的WSAStartup(0x202, &wsaData)是可以正常起来的了。怎么会出现这样的不支持呢?rnrn有谁遇到过这样的问题吗?是怎么解决的?rnrn另外,我一定要用到SOCK_RAW,因为要实现tracert命令
谁能讲讲WSASocket()和socket()啥区别啊?
rnrn谁能讲讲WSASocket()和socket()啥区别啊?rnrn看了MSDN,看不懂,什么叫overlapped attribute?
C++ Builder 中 如何调用WSASocket()函数???
WSASocket函数在winsock2.h中声明,但是编译通过,链接不通过?rn请问为什么?rn
WSASOCKET连接域名出错,错误代码为10060
本人用WSASOCKET创建了一个套接字,连接域名(服务器),不知道为什么每次运行6天后,就连不上域名(服务器)了,需要重启才能重新连接,用GrtLastError()报的是10060。有没有哪位朋友帮忙分析一下原因?
WINCE5.0 多址广播WSASocket创建失败?
首先说下,我的WINCE系统是支持WinSock2的,可以用WinSock2库的函数,在我的程序中想要创建多址广播套接字rn创建函数:SOCKET WSASocket(rn int af,rn int type,rn int protocol,rn LPWSAPROTOCOL_INFO lpProtocolInfo,rn GROUP g,rn DWORD dwFlagsrn);rn// 创建一个多址广播套接字rnm_hSock = WSASocket(AF_INET, SOCK_DGRAM, IPPROTO_UDP, rn (LPWSAPROTOCOL_INFO)NULL, 0, WSA_FLAG_OVERLAPPEDrn | WSA_FLAG_MULTIPOINT_C_LEAF | WSA_FLAG_MULTIPOINT_D_LEAF);rn返回错误,前面的代码Socket已经初始化了。错误码是10022,就是WSAEINVAL ,无效的参数,可能是函数dwFlags无效了,这个在WINDOWS下是没问题的,请问哪位知道怎么弄?我的目的要实现多址广播。
winsock2.h中的WSASocket怎么用啊?
我调用WSASocket时是这样用的:rnListenSocket=WSASocket(AF_INET,SOCK_STREAM,0,NULL,0,WSA_FLAG_OVERLAPPED);rn出如下错误:rn[Linker Error] Unresolved external 'WSASocketA' referenced from D:\PROGRAM FILES\BORLAND\CBUILDER5\PROJECTS\MAINPROC.OBJrn这是为什么呢???难道用的有错?rn
请问WSASocket()和socket()两个函数的区别?
如题,谢谢!
MFC中异步套接字WSASocket的使用
现在假设局域网中有3台电脑A,B,C,电脑A实时发送UDP数据包到电脑B,电脑B接收UDP数据包后再实时转发给电脑C,那么,电脑B中的MFC代码实现过程大致是这样的:rn 首先,创建一个异步套接字m_socketReceive,绑定电脑A的IP和端口号,自定义接收数据消息VM_RECVDATAMSG,注册数据接收事件,在事件的消息响应函数中通过PostMessage(WM_SENDDATAMSG)实现把接收的消息转发,其消息响应函数为OnSendData();rn 然后,再创建一个异步套接字m_socketSend,绑定电脑B的IP和端口号,但是[b]不调用WSAAsyncSelect函数请求消息通知[/b],只是在上面的OnSendData()函数中调用m_socketSend的WSASendTo()函数发送数据;rn请教大神们:这样能实现异步接收和转发吗?非阻塞的方式,电脑B是要实时刷新数据的,会不会出现卡死的现象啊?向各位大神求救,小弟现在对MFC的Socket了解的不是很深,而且又没有实时数据测试的条件,希望大神帮助啊!
问个弱智问题 :WSASocket和socket有什么区别
WSASocket和socket有什么区别
使用 WSASocket函数,Winsock2.h 出来好多错误信息
如果#include "Winsock2.h" 就出现下列错误 ,还有好多错误信息, lib库我也添加进去了,还是有这些错误,请问什么原因?rn我的操作系统2000rnrnrnd:\program files\microsoft visual studio\vc98\include\winsock2.h(99) : error C2011: 'fd_set' : 'struct' type redefinitionrnd:\program files\microsoft visual studio\vc98\include\winsock2.h(134) : rn............rn............rn............rnrnrn对了,谁有多播的列子? 《window 网络编程》 第11章的的2个多播列子也可以,能不能发给我? konfyt520@sina.com
使用WSASocket()要包含哪个头文件?
除了afxsock.h还有什么?
为什么WSAStartup成功,但是WSASocket却不成功?
操作系统是win2000,程序编译通过,但是执行总有错误,相关代码如下:rnrn定义了一个CInetServ类,在类的构造函数里,进行初始化:rnrnWSADATA wsaData; rnif (WSAStartup(0x202, &wsaData) != 0)rnm_sInitialized=INIT_ERR_WSASARTTUP;rn在debug的时候发现初始化成功rnrn在main函数里定义CInetServ类的对象:rnCInetServ server;rnserver.CreateSocket();//调用CInetserv的成员函数rn在CreateSocket函数里,如下语句:rnSOCKET sdSocket = INVALID_SOCKET;rnsdSocket = WSASocket(AF_INET, SOCK_STREAM, IPPROTO_IP, NULL, 0, WSA_FLAG_OVERLAPPED); rn int nd=GetLastError();rn总是创建不成功,察看GetLastError()返回的错误代码是10093,是没有初始化,不知道这是怎么回事,希望高手指教!
WSASocket每次调用返回的值为什么是相同的!
我在一个程序内多次调用WSASocket(...)函数用于返回一个套接字句柄,发现每次调用返回的值是相同的,我感觉应该每次返回不同才对。是不是我理解错了,在线等答案!
网络编程(54)—— Windows下使用WSASocket基于事件进行IO重叠
一、引言         本文主要研究下Windows下的IO重叠技术。         何为IO重叠?按照它的定义,在同一个线程中,我们同时向多个目标socket发送数据或者从多个socket接收数据,而我们用于传递和接收的函数未等IO过程结束就返回,而数据的传递和接收工作完全交给了操作系统,在这个过程中针对目标socket的每个IO操作在时间片上都发生了重叠,这就是IO重叠,如下图所示:
为什么我在bcb里不能使用 winsock api : WSASocket ??
rn 我在程序里使用 winsock api WSASocket 及 WSAIoctl 出现如下错误: rnrn[Linker Error] Unresolved external 'WSASocketA' referenced from D:\BCB\IBM.OBJrn[Linker Error] Unresolved external 'WSAIoctl' referenced from D:\BCB\IBM.OBJrnrnrn #include , rnrn 有没有人试过可以使用这个api的?
怎么修改socket 属性为Overlapped (非使用WSASocket)
已知创建一个带Overlapped属性的 socket 可以使用 WSASocket,在最后dwflag的位置使用WSA_FLAG_OVERLAPPED标志。rnrn但现在需要先使用socket 创建一个阻塞的套接字,而后修改为Overlapped属性。rnrn这要怎么实现?使用wsaioctl么?还是咋做?
WSASocket这样的Windows Socket 2函数在哪里边声明了?
我要编写Windows Socket 2.2的程序,像WSASocket这样的函数没有在Winsock.duc中,我要手工的写全部的函数和变量的声明吗?我用的是Delphi7 Enterprise。谢谢。
sockRaw = WSASocket(AF_INET,SOCK_RAW,IPPROTO_ICMP,NULL, 0,WSA_FLAG_OVERLAPPED);
这个问题怎么解决啊???rnrn需要使用这个函数rnsockRaw = WSASocket(AF_INET,SOCK_RAW,IPPROTO_ICMP,NULL, 0,WSA_FLAG_OVERLAPPED);rn已经加了#include "winsock.h"加”winsock2.h“的时候有两百来个错。ws2_32.lib也加了就是过不了。rnerror C2065: 'WSASocket' : undeclared identifier
关于函数WSASocket()和Socket()的区别,以及相关的区别
偶总是碰到这几个函数,可是有不清楚他们几对到底区别在哪里.比方说WSARecvFrom和RecvFrom,WSASend和Send,WSASendto和Sendto,rnrn偶英文不行,看得模模糊糊,所以恳请各位老大了rnrn说的详细的,多得分.
为什么Delphi5.0中winsock.pas中没有包含WSASocket这个函数?
我想在Delphi5.0中直接使用winsock2的API函数来编程,而不用delphi自带的rn构件.可是却发现delphi中没有把WSASocket这个函数翻译到winsock.pas中.
WSASocket() 创建的套接字返回0x00000, 为什么会这样?
WSADATA wsd;rn struct sockaddr_in local;rn int len= sizeof (struct sockaddr_in), optval;rn DWORD i=0;rnrn unsigned short iPort=25000;rn DWORD dwMulticastGroup=inet_addr("234.5.6.7");rn//开始初始化rn if (WSAStartup(MAKEWORD(2,2), &wsd)!=0)rn return false;rnrn//创建一个套接字rn if ((sock= WSASocket( AF_INET,rn SOCK_DGRAM,rn 0,rn NULL,rn 0, rn WSA_FLAG_OVERLAPPED| WSA_FLAG_MULTIPOINT_C_LEAF| WSA_FLAG_MULTIPOINT_D_LEAF )rn ==INVALID_SOCKET))rn rn WSACleanup();rn return false;rn rnrn local.sin_family= AF_INET;rn local.sin_port= htons(iPort);rn local.sin_addr.s_addr= htonl (INADDR_ANY);rnrn if (bind(sock, (struct sockaddr *)&local, sizeof(local))== SOCKET_ERROR)rn rn closesocket(sock);rn WSACleanup();rn return false;rnrn rnrnrn请问错在哪里?
对于WSASocket创建的socket,必须用WSARecv来接收数据吗?
为了创建一个监听线程,我用到了WSACreatEvent模型,监听网络客户端连接事件,rnrn但是接收数据时,accept客户端以后如果用recv接收至少要等待2 秒才能接收到数据rnrn什么原因呢?
winsock2 的WSASocket函数中 overlapped属性是什么意思
我看到msdn上说好像是什么异步I/O之类的,那异步I/O又是什么意思?rn反正不太懂。我刚开始学TCP/UDP编程rn多谢各位指导
给位大哥:Delphi中的哪个单元有Winsock2的函数?如:WSASocket(,,,,,)
-
编译error C2065: 'WSASocket' : undeclared identifier,我已经将afxsock.h加入stdafx.h
?
IOCP中,Close掉的Socket还没来得极处理就被WSASocket再次申请问题
在做IOCP服务端开发时,发现当要硬关闭一个Socket时, rn一个线程调用closeSocket关闭,而另一个线程恰好在这时调用WSASocket申请个新的Sokcet,这时这个被关闭的Socket就可能会被申请到,但这个Socket上的一些IO可能还没来得极返回,用这个Socket去投递AcctptEx会导致10022错误,请问有什么解决办法没?
网络编程(55)—— Windows下使用WSASocket基于Completion Routine进行IO重叠
一、引言         上一文中我们介绍了使用基于事件进行IO重叠的方法,本文主要介绍另外一种,基于回调函数void CALLBACK CompletionRoutine(DWORD dwError,DWORDszRecvBytes,LPWSAOVERLAPPED lpOverlapped,DWORD flags)进行IO重叠。首先,我们先介绍一种线程的状态——alertable wait状态
请问怎么在一MFC程序中同时用CSocket\CAsynSocket 类和用WSASocket函数
我如果包含winsock2.h的话,程序包错(因为同时包含了winsock.h)rn而不包含winsock2.h ,编译错误 WSASocket没定义。rnrn非常感谢。
请教:在用CB6做socket编程时,调用函数WSASocket()构造原始套接字遇到的问题
编译能通过,但是连接时,总是提示错误:rn unresolved external WSASocketA ...rn而我在Winsock2.h看到有这样的定义:#define WSASocket WSASocketA。rnrn请高手指点!!rnrn
大家好,小弟有个问题请教大哥们一下,就是如何使用WSASOCKET,WSACONNECT等一系列的
大家好,小弟有个问题请教大哥们一下,就是如何使用WSASOCKET,WSACONNECT等一系列的函数使用流程,最好府上小段事例代码,不胜感激!!!!rn急!!
为何用wsasocket成功创建的socket,而调用wsasend会说无效的socket?????
rnrnrn我用完成端口写的一个客户端程序,开始用::WSASocket()创建一个socket,没有错误rn然后用connect与服务器连接,也没有错误,可是就在调用wsasend时,返回错误,rn调用wsagetlasterror返回错误代码10038,查资料说10038—WSAENOTSOCKrnSocket operation on an invalid socket. This error can be returned from any Winsockrnfunction that takes a SOCKET handle as a parameter. This error indicates that thernsupplied socket handle is not valid.可是我的socket创建是好的?????rn怎么会这样,快帮帮我rnbool CIOCPClient::AddNewModule(const CMInfo &info)rn /////////////////////////////////////////////////////////////////////////rn //创建modulecontext并连接rn CModuleContext *pModule=AllocateContext();rn SOCKET socMdl=::WSASocket(AF_INET, SOCK_STREAM, 0, NULL, 0, WSA_FLAG_OVERLAPPED);rn if (socMdl == INVALID_SOCKET)rn rn CString err;rn string sss;rn err.Format(_T("ERROR(AddNewModule()):Can't create basic ModuleContext's socket.SOCKETERROR=%ld\n"),::WSAGetLastError());rn AfxMessageBox(err);rn closesocket(socMdl);rn return false;rn rnrnrn //与module建立连接rn int port=9000;rn SOCKADDR_IN moduleIP; rn moduleIP.sin_family=AF_INET;rn moduleIP.sin_port=htons(port);rn moduleIP.sin_addr.s_addr=inet_addr("200.205.4.194");//info.m_IpAddr.sin_addr;rn rn int nRet=connect(socMdl,(SOCKADDR*)&moduleIP,sizeof(moduleIP));rn if(nRet==SOCKET_ERROR)rn CString err;rn err.Format(_T("ERROR(AddNewModule):can't connect to module %s,error %d"),info.m_IpAddr.IPAddr,::WSAGetLastError());rn AfxMessageBox(err);rn ::closesocket(socMdl);rn return false;rn rnrnrn //与iocp建立连接rn if(AssociateSocketWithIOCP(socMdl,m_hIOCP,(DWORD)pModule)==false)rn TRACE("\nCAN'T ASSOCIATE WITH SOCKET AND IOCP");rn return false;rn rn rn rn rn //////////////////////////////////////////////////////////////////////rn m_csModuleMap.Lock();rn //连接建立,加入module maprn m_mapModule.insert(make_pair(info.m_ModuleAddr,pModule));rn //m_mapMonitor.insert(make_pair(info.m_ModuleAddr,pMonitor));rn m_csModuleMap.Unlock();rnrn //初始化module模块rn CModuleCommand *p=new CModuleCommand;//will be delete in main threadrn p->CommandType(CModuleCommand::INITI_SETUP);rn //setup message prefix to be openrn string command("w1601");rn p->Command(command);rnrnrn //for debug;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; rn OVERLAPPED_PLUS *op=AllocateOLPlus();rn op->Type(IOWrite);rn //op->Command(p);rn ULONG ulFlags = MSG_PARTIAL;rn DWORD dwIoSize;rn pModule->m_wsaOutBuf.buf=(char *)pModule->m_writeBuf.GetBuffer();rn pModule->m_wsaOutBuf.len=pModule->m_writeBuf.GetBufferLen();rn SOCKET socket=pContext->Socket();rn int nRetVal = ::WSASend(socMdl,rn &pModule->m_wsaOutBuf,rn 1,rn &pModule->m_wsaOutBuf.len,rn 0,rn &op->m_ol, rn NULL);rn //返回-1,产生错误,用WSAGetLastError(),取得10038,说无效的socket,rn //可是前面创建和连接都没有问题,如果ip地址错了,会产生这个错误?吗rn //在debug下socMdl有值,为700左右的数值,按理创建是对的,rnrn if (nRetVal == SOCKET_ERROR && WSAGetLastError() != WSA_IO_PENDING) rn rn CString err;rn err.Format(_T("ERROR:When calling WSARecv on module c=%c,r=%c,s=%c,SOCKETERR=%ld"),rn pModule->ModuleInfo().m_ModuleAddr.Cluster(),rn pModule->ModuleInfo().m_ModuleAddr.Rack(),rn pModule->ModuleInfo().m_ModuleAddr.Slot(),rn ::WSAGetLastError());rn AfxMessageBox(err);rn //p->Error(err.operator LPCTSTR());rn //p->SetEvent();rn //::PostMessage(this->m_pFrame->m_hWnd,WM_USER_IOCP_NOTIFY,NC_COMMAND_DONE,(long)pContext);rn return false; rn //?删除该module?rn //pThis->RemoveStaleClient( lpClientContext, FALSE );rn rn //;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;rnrnrn SendCommand(info.m_ModuleAddr,p);rn return true;rnrn
IO完成端口模型,创建监听套接字时用socket还是WSASocket
本人为学习IO完成端口,阅读了大量别人的博客,贴子rn我发现:rn 在创建监听套接字时有时候别人代码里用的是socketrn 有时候又看见别人代码里用的是WSASocketrn我想问在IO完成端口模型的情况下,创建监听套接字应该用socket还是用WSASocket?rn并且请高人说说其中的道理。rn希望高人指点
socket的创建(socket,WSASocket)相对来说是非常费时的,怎么样才能重复利用已经创建好的套接字?
比如说 在启动的时候先创建50个套接字存放到链表中.rnrn然后在运行中用到套接字的时候 从链表中取rnrn我想问的问题是:rnrn 如果一个连接不用了,断掉了,怎么重复利用这个 断掉连接的套接字?rn closesocket后,资源就没有了. 如果不closesocket,直接在去使用,就会有问题.rn
创建非阻塞的Socket服务器
前一篇文章我专门为创建多线程的Socket服务,但是貌似没有很多人来看啊。。汗!不过这 并没有什么,我也是刚刚开始写博客,重要的是把自己的理解记下来防止以后忘了,当然了如 果能给其他的新手一些指引那更好!呵呵。。。不说了直接入正题。来看看我们今天讨论的内 容。 上一篇文章我们讨论了怎么创建多线程的socket服务,里面的demo以及讲解我已经写了出来 如果看了的同志们...
Java利用Socket进行通信
上学期学校开设了创新项目的课程,而我迷迷糊糊的选择了《基于手机定位的Android考勤系统》,在整个开发过程中,总的来说,真的是学到了很多,尤其是客户端和服务器端通信这一块。对Socket通信,多线程等有了一定的认识,所以在此记录一下,一起学习,我的认识还是很浅的,如有错误,欢迎指出。...
shellcode中变形bindshell的实现
最近学习《0day安全》一书 记录一下调试编码过程 书中环境XP VC6 本机的环境是server 2008 r2 x64  编译环境是vs2013    第一步: 首先是写一个win c版本的bindshell 代码如下: #include&amp;lt;winsock2.h&amp;gt; #pragma comment(lib,&quot;Ws2_32.lib&quot;) void main() { //1...
TCPSocket通信客户机
客户端流程: 用socket或WSASocket创建一个套接字。 用connect或WSAConnect初始化一个连接。 用send发送信息,用recv接受信息。
WSAPoll引发的一场血案(2)
在写EventLoopThread的过程中发现了一个问题。tcpServer启动时需要初始化n个线程的EventLoopThread,需要在每个线程中创建一个EventLoop,并指向loop函数,发生错误。此时是这样的,主EventLoop还没有给其他从EventLoop分配TcpConnection,也就是io事件,所以此时它的struct pollfd是空的,也就相当于这样: WSAPol
python socket 编程 (看python黑帽编程4.1做的笔记)
原文链接python黑帽编程4.1 Sniffer嗅探器通过 ifconfig eth1 promisc 设置网卡为混杂模式创建socket对象、接收数据、分析数据import o import socket import ctypes #PromiscuousSocket这个类负责创建一个绑定到当前主机名绑定的网卡上的raw socket对象,并设置启动混杂模式。 class Promiscuou
Socket连接时Input.available()报空指针错误
在使用socket获取输入流读取数据时,总是提示空指针。获取输入流getInputstream()和创建socket是在一个线程中执行,又创建一个线程处理输入流中的数据。然后就会报错。 public class ReceiveThread implements Runnable { @Override public void run() { while (true) {
C/C++ Windows API——Tcp 客户端 服务器
使用VS2010新建2个项目,一个叫 “tcpserver” ,另一个叫 “tcpclient”。 右击 &quot;项目&quot; --&amp;gt; &quot;属性&quot; --&amp;gt; &quot;配置属性&quot; --&amp;gt; &quot;链接器&quot; --&amp;gt; &quot;输入&quot; --&amp;gt; &quot;附加依赖项&quot; ,在右侧下拉框中点击 “编辑” 按钮,添加 “WS2_32.lib”,单击确定。 1、项目tcpserv
CentOS 6.4下Zabbix的安装配置
2.下载zabbix 官方下载地址:http://www.zabbix.com/download.php 选择和自己系统对应的版本,这里选择安装与Linux内核为2.6对应的zabbix-2.2.2版本 解压缩 #tar -zxvf zabbix-2.2.2.tar.gz #cd zabbix-2.2.2 3.安装所需要的组件 #yum install -y curl curl-de
IOCP使用小结
很多知识,只有自己亲自实践了才知道坑在哪里。 socket是内核对象句柄,每次对socket执行操作,需要用户对象到内核对象的转换,执行完成返回结果,需要内核对象到用户对象的转换。 IOCP的中文名称是完成端口,目前是Windows下最高效的网络模型。特点:半异步,非阻塞。(我理解的完全异步是回调式,不需要人工参与,但是IOCP的异步需要轮询)。         其他模型的缺点: 1)se
c++做的异步通信,使用socket的典型例子
c++,socket的应用例子,能实现发送消息
WSACleanup 崩溃,以及使用注意
WSACleanup 在多线程多次调用会产生内存崩溃等现场发生! 由于程序模块其他对象正在使用网络库等操作,而此时如果调用WSACleanup 则一定会崩溃! 一般程序模块在启用的时候调用一次WSAStartup,退出时候调用WSACleanup ,DLL模块也是,这用就可以及时销毁网络资源
Winsock的初始化与销毁(WSAStartup)
在进行Winsock编程时,首先需要导入头文件:#include &amp;lt;winsock2.h&amp;gt;其次需要调用WSAStartup(设置Winsock的版本,并初始化对应的库)int WSAStartup(WORD wVersionRequested, LPWSADATA lpWSAData); -&amp;gt;成功时返回0,失败时返回非零的错误代码值这里WSAStartup有两个参数:(1)wVe...
WinRT 环境下缺失 Windows API 模拟实现
WinRT 环境下很多API没有了,比如socket相关的WSASocket,WSAConnect,线程相关的CreateThread等等,导致很多库不能使用,比如boost,基于这些库的应用如果要移植到WinRT环境下,将不得不修改很多代码,甚至需要重新设计程序结构。 我们的解决方案是通过新加的WinRT类模拟老的Windows API,该方案在boost库上运行测试过。 现在将该方案的相关资源共享给大家,不提供源码,如果需要了解实现细节,请关注我的博客。
网络协议 -- ICMP协议(2) Ping程序
一、Ping实现原理 大多数系统都已经在内核中内置了ping服务器的功能,所以不需要单独的其他进程来接收主机的ping请求。 windows系统下,输入ping /?命令查看ping的用法如下: 用法: ping [-t] [-a] [-n count] [-l size] [-f] [-i TTL] [-v TOS] [-r count] [-s count] [[-
Windows网络编程之(一)Socket阻塞模式(TCP和UDP)
TCP通信Server#include #include static const int PORT = 7777; static const int BUFFER_LENGTH = 128 ;bool InitWSA() ;int main() { if(!InitWSA()) { return -1 ; }
VS2013【windows】 尝试简单socket连接
VS2013【windows】 尝试简单socket连接
【网络编程】socket通信流程图(tcp)
啥也不说直接上图
Windows网络编程之(二)Socket通信非阻塞模式Select(TCP和UDP)
阻塞式的Socket很容易理解,但是使用起来非常别扭。Windows提供了选择(Select)I/O模型,进行异步Socket通信. Select模型 int select( _In_ int nfds,//忽略. 此参数为了与Berkeley sockets兼容. _Inout_ fd_set *readfds,//检查可读性fd_set指针. _Inout_ f
学生成绩管理系统论文下载
基于ASP.NET的平台下以C#编写程序,用Visual Studio .2005连接SQL Server 2005建立的数据库,调试并运行出结果。 相关下载链接:[url=//download.csdn.net/download/azrail180/3752420?utm_source=bbsseo]//download.csdn.net/download/azrail180/3752420?utm_source=bbsseo[/url]
DTree非动态jsp实现下载
DTree非动态jsp实现 相关下载链接:[url=//download.csdn.net/download/sprita1/4289594?utm_source=bbsseo]//download.csdn.net/download/sprita1/4289594?utm_source=bbsseo[/url]
linux开机进入命令行模式下载
linux开机进入命令行模式,你会感觉会需要的。。。。。。 相关下载链接:[url=//download.csdn.net/download/yang3866910/4346041?utm_source=bbsseo]//download.csdn.net/download/yang3866910/4346041?utm_source=bbsseo[/url]
相关热词 c#异步发送kafka c#窗体编号 c# 操作二进制文件 c# 反射 机制 c#线程 窗体失去响应 c#角度转弧度 c# 解析gps数据 c# vs设置 语法版本 c# json含回车 c#多线程demo
我们是很有底线的