2012-03-17 58 views
3

我能找到的端口號,如果我只有SOCKET?我掛鉤了ws2_32調用,它看起來像一個SOCKET試圖發送數據,但我沒有關於此SOCKET的信息。我想知道是否有任何方法獲取sockaddr或從SOCKET端口?如果我只有SOCKET,我可以找到端口號嗎?

我跑進一個UDP套接字類似的問題,但我從SOCKADDR剛開的端口號,當它正要發送數據,並更新了我關於它的信息固定它。但問題是,除了SOCKET之外,我沒有任何可以解決的問題。

該方案是一種製造插座,端口0,後來就其它分配給一個新的端口。到時候,我的程序在套接字上的信息已經使用端口0來設置,這是不正確的。所以,我需要找到一種方法,要麼...答:根據查找的插座或B端口:當Windows更新端口,我可以鉤住和更新的端口。

回答

3

有你想要的是什麼了兩個功能:

  1. getpeername - 獲取有關TCP連接
  2. getsockname的另一端的相關信息 - 獲取套接字(本地端)的信息TCP和UDP
+0

哇,非常感謝。 :-) – null 2012-03-17 07:54:58

+0

我剛剛做到了:-)! – null 2012-03-17 08:10:30

+0

謝謝主席先生,我只是upvoted回報:) – sirgeorge 2012-03-17 08:11:34

相關問題