隨筆 - 303  文章 - 883  trackbacks - 0
          <2007年11月>
          28293031123
          45678910
          11121314151617
          18192021222324
          2526272829301
          2345678

          歡迎光臨! 
          閑聊 QQ:1074961813

          隨筆分類(357)

          我管理的群

          公共blog

          • n維空間
          • Email : java3d@126.com 群 : 12999758

          參與管理的論壇

          好友的blog

          我的其他blog

          朋友的網站

          搜索

          •  

          最新評論

          代碼:

          #pragma comment(lib,"Ws2_32.lib")
          #include
          <winsock2.h>
          #include
          <iostream.h>

          void WSAprint(WSAPROTOCOL_INFO *lpProtocolBuf)
          {
              cout
          <<"dwCatalogEntryId-> "<<lpProtocolBuf->dwCatalogEntryId<<endl;
              cout
          <<"dwProviderFlags -> "<<lpProtocolBuf->dwProviderFlags<<endl;
              cout
          <<"dwServiceFlags1 -> "<<lpProtocolBuf->dwServiceFlags1<<endl;
              cout
          <<"dwServiceFlags2 -> "<<lpProtocolBuf->dwServiceFlags2<<endl;
              cout
          <<"dwServiceFlags3 -> "<<lpProtocolBuf->dwServiceFlags3<<endl;
              cout
          <<"dwServiceFlags4 -> "<<lpProtocolBuf->dwServiceFlags4<<endl;
              cout
          <<"iAddressFamily -> "<<lpProtocolBuf->iAddressFamily<<endl;
              cout
          <<"iMaxSockAddr    -> "<<lpProtocolBuf->iMaxSockAddr<<endl;
              cout
          <<"iNetworkByteOrder -> "<<lpProtocolBuf->iNetworkByteOrder<<endl;
              cout
          <<"iProtocol       -> "<<lpProtocolBuf->iProtocol<<endl;
              cout
          <<"iProtocolMaxOffset -> "<<lpProtocolBuf->iProtocolMaxOffset<<endl;
              cout
          <<"iSecurityScheme -> "<<lpProtocolBuf->iSecurityScheme<<endl;
              cout
          <<"iSocketType     -> "<<lpProtocolBuf->iSocketType<<endl;
              cout
          <<"iVersion        -> "<<lpProtocolBuf->iVersion<<endl;
              cout
          <<"szProtocol      -> "<<lpProtocolBuf->szProtocol<<endl;
          }


          void main(void)
          {
              WSADATA WSAData;
              DWORD lpdwBufferLength 
          = 0;
              WSAPROTOCOL_INFO 
          *lpProtocolBuf = NULL;
              
              
          if (WSAStartup(MAKEWORD(2,2), &WSAData))
                  cout
          <<"WSAStartup "<<WSAGetLastError()<<endl;
              
          else{
                  
          if(SOCKET_ERROR != WSAEnumProtocols(NULL,lpProtocolBuf, &lpdwBufferLength))
                  
          {
                      cout
          <<"WSAEnumProtocols: should not have succeeded\n"<<endl;
                  }

                  
          else if(WSAENOBUFS != WSAGetLastError())
                       cout
          <<"WSAEnumProtocols(1): "<<WSAGetLastError()<<endl;
                  
          else
                  
          {
                      lpProtocolBuf 
          = (WSAPROTOCOL_INFO *)malloc(lpdwBufferLength);
                      
          if (lpProtocolBuf)
                      
          {
                             DWORD nRet 
          = WSAEnumProtocols(NULL, lpProtocolBuf, &lpdwBufferLength);
                             
          if (SOCKET_ERROR == nRet)
                                 cout
          <<"WSAEnumProtocols(3): "<<WSAGetLastError()<<endl;
                             
          else
                                 
          {
                                  
          for (int i=0; i< nRet; i++)
                                     WSAprint(
          &lpProtocolBuf[i]);
                                 }

                             free(lpProtocolBuf);
                       }

                  }

              }

               if (SOCKET_ERROR == WSACleanup())
             
          {
                 cout
          <<"WSACleanup failed with error "<<WSAGetLastError()<<endl;
                 
          return;
             }
              
               return ;
          }

          運行結果:
          dwCatalogEntryId-> 1001
          dwProviderFlags -> 8
          dwServiceFlags1 -> 131174
          dwServiceFlags2 -> 0
          dwServiceFlags3 -> 0
          dwServiceFlags4 -> 0
          iAddressFamily -> 2
          iMaxSockAddr    -> 16
          iNetworkByteOrder -> 0
          iProtocol       -> 6
          iProtocolMaxOffset -> 0
          iSecurityScheme -> 0
          iSocketType     -> 1
          iVersion        -> 2
          szProtocol      -> MSAFD Tcpip [TCP/IP]
          dwCatalogEntryId-> 1002
          dwProviderFlags -> 8
          dwServiceFlags1 -> 132617
          dwServiceFlags2 -> 0
          dwServiceFlags3 -> 0
          dwServiceFlags4 -> 0
          iAddressFamily -> 2
          iMaxSockAddr    -> 16
          iNetworkByteOrder -> 0
          iProtocol       -> 17
          iProtocolMaxOffset -> 0
          iSecurityScheme -> 0
          iSocketType     -> 2
          iVersion        -> 2
          szProtocol      -> MSAFD Tcpip [UDP/IP]
          dwCatalogEntryId-> 1004
          dwProviderFlags -> 8
          dwServiceFlags1 -> 140809
          dwServiceFlags2 -> 0
          dwServiceFlags3 -> 0
          dwServiceFlags4 -> 0
          iAddressFamily -> 2
          iMaxSockAddr    -> 16
          iNetworkByteOrder -> 0
          iProtocol       -> 17
          iProtocolMaxOffset -> 0
          iSecurityScheme -> 0
          iSocketType     -> 2
          iVersion        -> 6
          szProtocol      -> RSVP UDP Service Provider
          dwCatalogEntryId-> 1005
          dwProviderFlags -> 8
          dwServiceFlags1 -> 139366
          dwServiceFlags2 -> 0
          dwServiceFlags3 -> 0
          dwServiceFlags4 -> 0
          iAddressFamily -> 2
          iMaxSockAddr    -> 16
          iNetworkByteOrder -> 0
          iProtocol       -> 6
          iProtocolMaxOffset -> 0
          iSecurityScheme -> 0
          iSocketType     -> 1
          iVersion        -> 6
          szProtocol      -> RSVP TCP Service Provider
          dwCatalogEntryId-> 1114
          dwProviderFlags -> 0
          dwServiceFlags1 -> 131086
          dwServiceFlags2 -> 0
          dwServiceFlags3 -> 0
          dwServiceFlags4 -> 0
          iAddressFamily -> 17
          iMaxSockAddr    -> 20
          iNetworkByteOrder -> 0
          iProtocol       -> -3
          iProtocolMaxOffset -> 0
          iSecurityScheme -> 0
          iSocketType     -> 5
          iVersion        -> 2
          szProtocol      -> MSAFD NetBIOS [\Device\NetBT_Tcpip_{A0A7169C-1DB9-4D5E-8594-3976D0991E26}] SEQPACKET 3
          dwCatalogEntryId-> 1115
          dwProviderFlags -> 0
          dwServiceFlags1 -> 131593
          dwServiceFlags2 -> 0
          dwServiceFlags3 -> 0
          dwServiceFlags4 -> 0
          iAddressFamily -> 17
          iMaxSockAddr    -> 20
          iNetworkByteOrder -> 0
          iProtocol       -> -3
          iProtocolMaxOffset -> 0
          iSecurityScheme -> 0
          iSocketType     -> 2
          iVersion        -> 2
          szProtocol      -> MSAFD NetBIOS [\Device\NetBT_Tcpip_{A0A7169C-1DB9-4D5E-8594-3976D0991E26}] DATAGRAM 3
          dwCatalogEntryId-> 1116
          dwProviderFlags -> 8
          dwServiceFlags1 -> 131086
          dwServiceFlags2 -> 0
          dwServiceFlags3 -> 0
          dwServiceFlags4 -> 0
          iAddressFamily -> 17
          iMaxSockAddr    -> 20
          iNetworkByteOrder -> 0
          iProtocol       -> -2147483648
          iProtocolMaxOffset -> 0
          iSecurityScheme -> 0
          iSocketType     -> 5
          iVersion        -> 2
          szProtocol      -> MSAFD NetBIOS [\Device\NetBT_Tcpip_{B626B50F-0244-4460-A218-1D8466D9E7A3}] SEQPACKET 0
          dwCatalogEntryId-> 1117
          dwProviderFlags -> 8
          dwServiceFlags1 -> 131593
          dwServiceFlags2 -> 0
          dwServiceFlags3 -> 0
          dwServiceFlags4 -> 0
          iAddressFamily -> 17
          iMaxSockAddr    -> 20
          iNetworkByteOrder -> 0
          iProtocol       -> -2147483648
          iProtocolMaxOffset -> 0
          iSecurityScheme -> 0
          iSocketType     -> 2
          iVersion        -> 2
          szProtocol      -> MSAFD NetBIOS [\Device\NetBT_Tcpip_{B626B50F-0244-4460-A218-1D8466D9E7A3}] DATAGRAM 0
          dwCatalogEntryId-> 1118
          dwProviderFlags -> 0
          dwServiceFlags1 -> 131086
          dwServiceFlags2 -> 0
          dwServiceFlags3 -> 0
          dwServiceFlags4 -> 0
          iAddressFamily -> 17
          iMaxSockAddr    -> 20
          iNetworkByteOrder -> 0
          iProtocol       -> -1
          iProtocolMaxOffset -> 0
          iSecurityScheme -> 0
          iSocketType     -> 5
          iVersion        -> 2
          szProtocol      -> MSAFD NetBIOS [\Device\NetBT_Tcpip_{CC8B610C-90B7-46FE-839C-C5427023A576}] SEQPACKET 1
          dwCatalogEntryId-> 1119
          dwProviderFlags -> 0
          dwServiceFlags1 -> 131593
          dwServiceFlags2 -> 0
          dwServiceFlags3 -> 0
          dwServiceFlags4 -> 0
          iAddressFamily -> 17
          iMaxSockAddr    -> 20
          iNetworkByteOrder -> 0
          iProtocol       -> -1
          iProtocolMaxOffset -> 0
          iSecurityScheme -> 0
          iSocketType     -> 2
          iVersion        -> 2
          szProtocol      -> MSAFD NetBIOS [\Device\NetBT_Tcpip_{CC8B610C-90B7-46FE-839C-C5427023A576}] DATAGRAM 1
          dwCatalogEntryId-> 1120
          dwProviderFlags -> 0
          dwServiceFlags1 -> 131086
          dwServiceFlags2 -> 0
          dwServiceFlags3 -> 0
          dwServiceFlags4 -> 0
          iAddressFamily -> 17
          iMaxSockAddr    -> 20
          iNetworkByteOrder -> 0
          iProtocol       -> -2
          iProtocolMaxOffset -> 0
          iSecurityScheme -> 0
          iSocketType     -> 5
          iVersion        -> 2
          szProtocol      -> MSAFD NetBIOS [\Device\NetBT_Tcpip_{F696A8CB-6643-4958-AF37-E1D74C5C8CA4}] SEQPACKET 2
          dwCatalogEntryId-> 1121
          dwProviderFlags -> 0
          dwServiceFlags1 -> 131593
          dwServiceFlags2 -> 0
          dwServiceFlags3 -> 0
          dwServiceFlags4 -> 0
          iAddressFamily -> 17
          iMaxSockAddr    -> 20
          iNetworkByteOrder -> 0
          iProtocol       -> -2
          iProtocolMaxOffset -> 0
          iSecurityScheme -> 0
          iSocketType     -> 2
          iVersion        -> 2
          szProtocol      -> MSAFD NetBIOS [\Device\NetBT_Tcpip_{F696A8CB-6643-4958-AF37-E1D74C5C8CA4}] DATAGRAM 2
          dwCatalogEntryId-> 1122
          dwProviderFlags -> 0
          dwServiceFlags1 -> 131086
          dwServiceFlags2 -> 0
          dwServiceFlags3 -> 0
          dwServiceFlags4 -> 0
          iAddressFamily -> 17
          iMaxSockAddr    -> 20
          iNetworkByteOrder -> 0
          iProtocol       -> -4
          iProtocolMaxOffset -> 0
          iSecurityScheme -> 0
          iSocketType     -> 5
          iVersion        -> 2
          szProtocol      -> MSAFD NetBIOS [\Device\NetBT_Tcpip_{27234B9C-EE1B-4417-8044-3E473B55AC57}] SEQPACKET 4
          dwCatalogEntryId-> 1123
          dwProviderFlags -> 0
          dwServiceFlags1 -> 131593
          dwServiceFlags2 -> 0
          dwServiceFlags3 -> 0
          dwServiceFlags4 -> 0
          iAddressFamily -> 17
          iMaxSockAddr    -> 20
          iNetworkByteOrder -> 0
          iProtocol       -> -4
          iProtocolMaxOffset -> 0
          iSecurityScheme -> 0
          iSocketType     -> 2
          iVersion        -> 2
          szProtocol      -> MSAFD NetBIOS [\Device\NetBT_Tcpip_{27234B9C-EE1B-4417-8044-3E473B55AC57}] DATAGRAM 4
          dwCatalogEntryId-> 1124
          dwProviderFlags -> 0
          dwServiceFlags1 -> 131086
          dwServiceFlags2 -> 0
          dwServiceFlags3 -> 0
          dwServiceFlags4 -> 0
          iAddressFamily -> 17
          iMaxSockAddr    -> 20
          iNetworkByteOrder -> 0
          iProtocol       -> -5
          iProtocolMaxOffset -> 0
          iSecurityScheme -> 0
          iSocketType     -> 5
          iVersion        -> 2
          szProtocol      -> MSAFD NetBIOS [\Device\NetBT_Tcpip_{CDFF07DF-6E82-46BB-A752-240156F6A069}] SEQPACKET 5
          dwCatalogEntryId-> 1125
          dwProviderFlags -> 0
          dwServiceFlags1 -> 131593
          dwServiceFlags2 -> 0
          dwServiceFlags3 -> 0
          dwServiceFlags4 -> 0
          iAddressFamily -> 17
          iMaxSockAddr    -> 20
          iNetworkByteOrder -> 0
          iProtocol       -> -5
          iProtocolMaxOffset -> 0
          iSecurityScheme -> 0
          iSocketType     -> 2
          iVersion        -> 2
          szProtocol      -> MSAFD NetBIOS [\Device\NetBT_Tcpip_{CDFF07DF-6E82-46BB-A752-240156F6A069}] DATAGRAM 5
          Press any key to continue


          地震讓大伙知道:居安思危,才是生存之道。
          posted on 2007-11-24 10:21 小尋 閱讀(1314) 評論(0)  編輯  收藏 所屬分類: c/c++/C#/pasic/vb/php/asp(.net)/win-cgi/xml...
          主站蜘蛛池模板: 方山县| 长沙市| 收藏| 嘉义县| 郴州市| 达拉特旗| 元氏县| 铜鼓县| 施甸县| 贵州省| 武鸣县| 色达县| 麻城市| 孝昌县| 吉安县| 深州市| 东乡族自治县| 祁门县| 黄山市| 化德县| 甘谷县| 垫江县| 黄浦区| 霍城县| 珲春市| 香格里拉县| 阳信县| 漯河市| 北碚区| 桐庐县| 彭水| 平和县| 吉安市| 镇康县| 拜城县| 武强县| 门头沟区| 福建省| 阳信县| 扬中市| 柘荣县|