正文

枚举系统安装的所有协议2010-07-31 00:29:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/lym51/51564.html

分享到:

// EnumProtocol.cpp : 定义控制台应用程序的入口点。 // // Get Procotol installed in os // code @ VS2005 // by lym #include "stdafx.h" #include <iostream> #include <Winsock2.h> using namespace std; #pragma comment(lib, "Ws2_32") int _tmain(int argc, _TCHAR* argv[]) {      WSADATA            wsd;      DWORD              dwSize=0;      WSAPROTOCOL_INFO* lpWsaprotocolInfo=NULL;      int                ret, i;         // Load Winsock      //      if (WSAStartup(MAKEWORD(2,2), &wsd) != 0)      {           printf("WSAStartup() failed: %d\n", GetLastError());           return -1;      }      // first call this funciton for get protocols size      ret = WSAEnumProtocols(NULL,lpWsaprotocolInfo,&dwSize);      if (ret == SOCKET_ERROR)      {             // new memory           lpWsaprotocolInfo = new WSAPROTOCOL_INFO[dwSize];           if (!lpWsaprotocolInfo)           {                printf("Msg: new memory failed!\n");                return 0;           }           // second call this funcion for get protocols info             ret = WSAEnumProtocols(NULL, lpWsaprotocolInfo, &dwSize);           if (ret>0)           {                for (i=0;i<ret;i++)                {                     printf("Install Protocol (%d): %s\n", i+1, lpWsaprotocolInfo[i].szProtocol);                }           }      }      // free memory      if (lpWsaprotocolInfo)      {           delete []lpWsaprotocolInfo;      }      // Clean Winsock               WSACleanup();     // for pause      cin >> i;      return 0; }  

阅读(2037) | 评论(0)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

暂无评论
您需要登录后才能评论,请 登录 或者 注册