“牧童遥指杏花村”-----如何得知Windows Sockets自动选择的端口号?
BOOL Create(
UINT nSocketPort = 0,
int nSocketType = SOCK_STREAM,
long lEvent = FD_READ | FD_WRITE | FD_OOB | FD_ACCEPT | FD_CONNECT | FD_CLOSE,
LPCTSTR lpszSocketAddress = NULL
);
参数nSocketPort用于指定套接字使用的端口号,若为0,则由Windows Sockets选择端口。
我现在用:m_pSocket->Create(0, SOCK_DGRAM);创建了套接字,请问用什么方法得知Windows Sockets已选择的端口号?请指教!谢谢!
问题点数:100、回复次数:4Top
1 楼happyparrot(快乐鹦鹉)回复于 2005-08-03 13:38:39 得分 25
用BOOL GetPeerName( CString& rPeerAddress, UINT& rPeerPort );函数,应该能获取端口号Top
2 楼dirdirdir3(风)回复于 2005-08-03 13:40:16 得分 25
GetSockName()Top
3 楼qrlvls( 空 气 )回复于 2005-08-03 13:43:25 得分 25
使用 connect 后可以通过输出参数得到本地地址
如果使用 CSocket 的话可能需要重载Top
4 楼orbit(走了走了)回复于 2005-08-03 13:54:28 得分 25
调用了connect建立连接候才分配端口号,使用getsockname可得到本地信息,getpeername可得到远端端口信息Top




