亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? multitst.c

?? Allows sending and receiving of multicast datagrams and experimentation with the multicast APIs
?? C
?? 第 1 頁 / 共 3 頁
字號:
      break;
    case WM_PAINT:
      UpdateWnd(hwnd);
      break;
    default:
      return (DefWindowProc(hwnd, msg, wParam, lParam));
  } /* end switch(msg) */
  
  return (0L);
} /* end MainWndProc() */

/*-----------------------------------------------------------
 * Function: BindDlgProc()
 *
 * Description: procedure for the bind() dialog box
 */
BOOL CALLBACK BindDlgProc (
  HWND hDlg,
  UINT msg,
  UINT wParam,
  LPARAM lParam)
{
  static HANDLE hwnd, hInst;
  static u_long lMultiAddr;
  int nRet;
  
  switch (msg) {
    case WM_INITDIALOG:
            
      /* get parameters passed */
      if (lParam) {        
        hInst = (HANDLE)LOWORD(lParam);
        hwnd  = (HANDLE)HIWORD(lParam);
      }
                                              
      /* set display values */
      SetDlgItemText (hDlg, IDC_SRCADDR, strSrcMulti);
      SetDlgItemInt  (hDlg, IDC_SRCPORT, nSrcPort, FALSE);
      SetFocus (GetDlgItem (hDlg, IDC_BIND));

      /* center dialog box */
      CenterWnd (hDlg, hwnd, TRUE);
      
      return FALSE;
        
    case WM_COMMAND:
      switch (wParam) {

        case IDCANCEL:        
        case IDOK:
          EndDialog (hDlg, TRUE);
          return TRUE;
                
        case IDC_BIND:
          nSrcPort = (u_short) GetDlgItemInt (hDlg, IDC_SRCPORT, NULL, FALSE);
          GetDlgItemText (hDlg, IDC_SRCADDR, strSrcMulti, 40);
          lMultiAddr = inet_addr(strSrcMulti);
          if (lMultiAddr == INADDR_NONE) {
            WSAErrMsg("inet_addr()");
          } else {
            /* init source address structure to port & address requested */
            stSrcAddr.sin_family = PF_INET;
            stSrcAddr.sin_port   = htons(nSrcPort);
            stSrcAddr.sin_addr.s_addr = lMultiAddr;

            /* call bind */
            nRet = bind (hSock, 
              (struct sockaddr FAR *)&stSrcAddr, 
              sizeof(struct sockaddr));
            if (nRet == SOCKET_ERROR) {
              WSAErrMsg ("bind()");
            }
          }
          return TRUE;
        } /* end switch(wParam) */
      return TRUE;
    } /* end switch(msg) */
    return FALSE;
} /* end BindDlgProc() */

/*-----------------------------------------------------------
 * Function: SendDlgProc()
 *
 * Description: procedure for the send() dialog box
 */
BOOL CALLBACK SendDlgProc (
  HWND hDlg,
  UINT msg,
  UINT wParam,
  LPARAM lParam)
{
  static int net, nDataLen;
  static HANDLE hwnd, hInst;
  static u_long lMultiAddr;
  int nRet;
  
   switch (msg) {
      case WM_INITDIALOG:
            
      /* get parameters passed */
      if (lParam) {        
        hInst = (HANDLE)LOWORD(lParam);
        hwnd  = (HANDLE)HIWORD(lParam);
      }
                                              
      /* set display values */
      lstrcpy (achOutBuf, "Testing Multicast 1-2-3 (cha-cha-cha)");
      SetDlgItemText (hDlg, IDC_DESTADDR, strDestMulti);
      SetDlgItemText (hDlg, IDC_DATAOUT, achOutBuf);
      SetDlgItemInt  (hDlg, IDT_FPORT, nDestPort, FALSE);
    
      SetFocus (GetDlgItem (hDlg, IDC_SENDTO));

      /* center dialog box */
      CenterWnd (hDlg, hwnd, TRUE);
      
      return FALSE;
        
    case WM_COMMAND:
        switch (wParam) {

        case IDCANCEL:        
            case IDOK:
                EndDialog (hDlg, TRUE);
                return TRUE;
                
            case IDC_DATAOUT:
            case IDC_DESTADDR:
              break;
            case IDC_SENDTO:
              nDestPort = (u_short) GetDlgItemInt (hDlg, IDT_FPORT, NULL, FALSE);
              GetDlgItemText (hDlg, IDC_DATAOUT, achOutBuf, 1024);
              GetDlgItemText (hDlg, IDC_DESTADDR, strDestMulti, 40);
              lMultiAddr = inet_addr(strDestMulti);
              if (lMultiAddr == INADDR_NONE) {
                WSAErrMsg("inet_addr()");
              } else {
            /* init destination address structure */
            stDestAddr.sin_family = PF_INET;
            stDestAddr.sin_port   = htons (nDestPort);
            _fmemcpy ((char FAR *)&(stDestAddr.sin_addr), 
              (char FAR *)&lMultiAddr, 4);
                      /* sendto() */
            nRet = sendto (hSock, (char FAR *)achOutBuf, lstrlen(achOutBuf), 0,
                     (struct sockaddr FAR *) &stDestAddr, sizeof(struct sockaddr));
            if (nRet == SOCKET_ERROR) {
              WSAErrMsg ("sendto()");
            }
            return (FALSE);
              }
              break;
            case IDC_CONNECT:
              nDestPort = (u_short) GetDlgItemInt (hDlg, IDT_FPORT, NULL, FALSE);
              GetDlgItemText (hDlg, IDC_DESTADDR, strDestMulti, 40);
              lMultiAddr = inet_addr(strDestMulti);
              if (lMultiAddr == INADDR_NONE) {
                WSAErrMsg("inet_addr()");
              } else {
            /* init destination address structure */
            stDestAddr.sin_family = PF_INET;
            stDestAddr.sin_port   = htons (nDestPort);
            _fmemcpy ((char FAR *)&(stDestAddr.sin_addr), 
              (char FAR *)&lMultiAddr, 4);
                      /* connect */
            nRet = connect (hSock, 
                (struct sockaddr FAR *) &stDestAddr, 
                sizeof(struct sockaddr));
            if (nRet == SOCKET_ERROR) {
              WSAErrMsg ("connect()");
            }
            return (FALSE);
              }
            case IDC_SEND:
              GetDlgItemText (hDlg, IDC_DATAOUT, achOutBuf, MCBUFSIZE);
              nRet = send (hSock, (char FAR *)achOutBuf, lstrlen(achOutBuf), 0);
              if (nRet == SOCKET_ERROR) {
                WSAErrMsg ("send()");
              }
           return (FALSE);
        }
    return TRUE;
    }        
    return FALSE;
} /* end SendDlgProc() */

/*-----------------------------------------------------------
 * Function: OptionDlgProc()
 *
 * Description: procedure for the setsockopt()/getsockopt()
 *  dialog box
 */
BOOL CALLBACK OptionDlgProc (
  HWND hDlg,
  UINT msg,
  UINT wParam,
  LPARAM lParam)
{
  static int nRet, nOptName, nOptVal, nOptLen, nOptIDC, nLevel;
  static char FAR *lpOptVal;
  static HANDLE hwnd, hInst;
  static struct ip_mreq stIpReq;
  char achMultiIntr[MAXHOSTNAME];
  u_long lMultiAddr, lMultiIntr;
  struct in_addr stInAddr;
    
    switch (msg) {
        case WM_INITDIALOG:
            
            /* get parameters passed */
        if (lParam) {        
          hInst = (HANDLE)LOWORD(lParam);
          hwnd  = (HANDLE)HIWORD(lParam);
        }
                                              
      /* set display values */
      SetDlgItemInt  (hDlg, IDT_SOCKIN, hSock, FALSE);
      SetDlgItemText (hDlg, IDT_LEVELIN, "0");
      SetDlgItemText (hDlg, IDT_MULTIADDR, inet_ntoa (stDestAddr.sin_addr));
      SetDlgItemInt  (hDlg, IDT_MULTIINTR, IPPROTO_IP, FALSE);
      SetDlgItemInt  (hDlg, IDT_OPTNAME, IP_ADD_MEMBERSHIP, FALSE);    
      SetDlgItemInt  (hDlg, IDT_OPTVAL, 0, FALSE);
      SetDlgItemInt  (hDlg, IDT_OPTLEN, sizeof(struct ip_mreq), FALSE);
      CheckDlgButton (hDlg, IDC_BSD_OPTNAMES, bBSD_OptNames); 
      
      nOptName = IP_ADD_MEMBERSHIP;
           nOptLen  = sizeof (struct ip_mreq);
      nLevel   = IPPROTO_IP;
      lpOptVal = (char FAR *)&stIpReq;
    
      SetFocus (GetDlgItem (hDlg, IDT_MULTIADDR));
      CheckRadioButton(hDlg, IDR_ADD, IDR_OTHER, IDR_ADD); 

      /* center dialog box */
      CenterWnd (hDlg, hwnd, TRUE);
      
      break;
        
    case WM_COMMAND:
        switch (wParam) {

        case IDCANCEL:        
            case IDOK:
                EndDialog (hDlg, TRUE);
                break;
                
            case IDB_GETSOCKOPT:
            
              /* Get the parameter values, and call getsockopt(), 
               *  then display the results! */
              if (nOptName == USER_PARAMETER_VALUES) {
                nLevel   = GetDlgItemInt(hDlg, IDT_LEVELIN, NULL, FALSE);
                nOptName = GetDlgItemInt(hDlg, IDT_OPTNAME, NULL, FALSE);
                nOptVal  = GetDlgItemInt(hDlg, IDT_OPTVAL,  NULL, FALSE);
                  nOptLen  = GetDlgItemInt(hDlg, IDT_OPTLEN,  NULL, FALSE);
              }
              nRet = getsockopt(hSock, 
                nLevel, 
                (bBSD_OptNames ? nOptName : nOptName-DEERING_OFFSET),
                        lpOptVal,  /* pointer set to right location earlier */
                (int FAR *)&nOptLen);
              if (nRet == SOCKET_ERROR) {
                WSAErrMsg("getsockopt()");
               } else {
                /* Display the results */
            switch (nOptName) {
              case IP_ADD_MEMBERSHIP:    /* fail with get */
              case IP_DROP_MEMBERSHIP:
                break;
              case IP_MULTICAST_LOOP:
               case IP_MULTICAST_TTL:
              case USER_PARAMETER_VALUES:
                SetDlgItemInt  (hDlg, IDT_OPTVAL, *lpOptVal, FALSE);
                break;
              case IP_MULTICAST_IF:
                SetDlgItemText (hDlg, IDT_MULTIINTR, inet_ntoa(stInAddr));
                break;
            }
          }
              break;
              
            case IDB_SETSOCKOPT:
              /* Get the parameter values, and call getsockopt(), 
               *  then display the results! */
          switch (nOptName) {
            case IP_ADD_MEMBERSHIP:
            case IP_DROP_MEMBERSHIP:
                  GetDlgItemText (hDlg, IDT_MULTIADDR, 
                    strDestMulti, MAXHOSTNAME);
                  lMultiAddr = inet_addr(strDestMulti);
                  if (lMultiAddr == INADDR_NONE) {
                    WSAErrMsg("inet_addr()");                              
                  } else {
                    _fmemcpy ((char FAR *)&(stIpReq.imr_multiaddr),
                          (char FAR *)&lMultiAddr, 4);
                  }
                  GetDlgItemText (hDlg, IDT_MULTIINTR, 
                    achMultiIntr, MAXHOSTNAME);
                  lMultiIntr = inet_addr(achMultiIntr); 
                  /* we don't check inet_addr() error since INADDR_NONE is ok */
                  _fmemcpy ((char FAR *)&(stIpReq.imr_interface),
                        (char FAR *)&lMultiIntr, 4);
                  break;
                case IP_MULTICAST_TTL:
                case IP_MULTICAST_LOOP:
                  nOptVal = GetDlgItemInt(hDlg, IDT_OPTVAL, NULL, FALSE);
                  break;
                case IP_MULTICAST_IF:
                  GetDlgItemText (hDlg, IDT_MULTIINTR, 
                    achMultiIntr, MAXHOSTNAME);
                  lMultiIntr = inet_addr(achMultiIntr); 
                  /* we don't check inet_addr() error since INADDR_NONE is ok */
                  _fmemcpy ((char FAR *)&(stIpReq.imr_interface),
                        (char FAR *)&lMultiIntr, 4);
                  break;
                case USER_PARAMETER_VALUES:
                  /* Unknown option, so use user values for all input */
                  nLevel   = GetDlgItemInt(hDlg, IDT_LEVELIN, NULL, FALSE);
                  nOptName = GetDlgItemInt(hDlg, IDT_OPTNAME, NULL, FALSE);
                  nOptVal  = GetDlgItemInt(hDlg, IDT_OPTVAL,  NULL, FALSE);
                  nOptLen  = GetDlgItemInt(hDlg, IDT_OPTLEN,  NULL, FALSE);
                default:
                  break;
              }
              nRet = setsockopt(hSock,
                nLevel, 
                (bBSD_OptNames ? nOptName : nOptName-DEERING_OFFSET),
                lpOptVal,
                nOptLen);
              if (nRet == SOCKET_ERROR) {
                WSAErrMsg("setsockopt()");
              }
              /* Display the results (for better or worse) */
          SetDlgItemInt  (hDlg, IDT_OPTVAL, nOptVal, FALSE);
          break;
              

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品对白一区国产伦| 欧美做爰猛烈大尺度电影无法无天| 欧美一级夜夜爽| 日韩中文字幕1| 日韩一区二区三区电影| 老司机午夜精品99久久| 2021久久国产精品不只是精品| 韩国av一区二区三区在线观看| 久久婷婷综合激情| 不卡视频免费播放| 亚洲最新视频在线观看| 欧美一区二区在线免费播放| 久久精品国产第一区二区三区| 久久色在线视频| 成人18视频在线播放| 亚洲精品中文在线影院| 91精品久久久久久久91蜜桃| 免费在线成人网| 欧美国产97人人爽人人喊| 一本一道综合狠狠老| 毛片av一区二区三区| 中文字幕精品综合| 欧美日韩免费观看一区二区三区| 美国av一区二区| 成人免费视频在线观看| 69堂成人精品免费视频| 国产精品1区二区.| 亚洲国产综合视频在线观看| 26uuu亚洲| 在线免费视频一区二区| 国产一区二区三区免费在线观看| 综合久久综合久久| 精品国产露脸精彩对白| 91国产免费看| 国产成人免费视频网站高清观看视频| 亚洲精品一二三| 337p日本欧洲亚洲大胆精品| 色婷婷久久久亚洲一区二区三区| 久久精品久久精品| 亚洲综合区在线| 日本一区二区三区电影| 日韩一卡二卡三卡| 在线观看精品一区| 丁香六月综合激情| 美国一区二区三区在线播放| 亚洲免费毛片网站| 国产亚洲综合性久久久影院| 337p亚洲精品色噜噜噜| 97se亚洲国产综合自在线| 国产一区二区三区久久悠悠色av| 亚洲va欧美va人人爽| 中文字幕日韩欧美一区二区三区| 日韩欧美亚洲国产另类| 在线免费观看日本一区| 成人开心网精品视频| 精品一区免费av| 日韩激情视频在线观看| 一区二区三区免费观看| 国产精品黄色在线观看| 国产天堂亚洲国产碰碰| 日韩欧美在线观看一区二区三区| 欧美午夜电影一区| 色哟哟一区二区三区| 成人av综合一区| 成人免费的视频| 国产精品一级在线| 欧美福利一区二区| 色综合久久久久网| 色婷婷av一区| 91免费观看国产| 91丨porny丨户外露出| 波波电影院一区二区三区| 国产毛片精品一区| 丰满白嫩尤物一区二区| 激情文学综合网| 国产剧情一区在线| 国产馆精品极品| 国产精品91xxx| 国产成人啪免费观看软件| 国产精品99久久久久久似苏梦涵| 国模套图日韩精品一区二区| 精品在线你懂的| 国产盗摄一区二区| 成人中文字幕合集| 91麻豆123| 欧洲激情一区二区| 欧美另类一区二区三区| 91精品国产综合久久精品图片| 制服丝袜在线91| 日韩亚洲欧美在线| 亚洲精品一区二区在线观看| xfplay精品久久| 国产精品天美传媒| 亚洲精品视频免费看| 亚洲成人自拍偷拍| 青青草视频一区| 国产精品18久久久久久久网站| 国产精品 欧美精品| av在线综合网| 欧美日韩中文国产| 日韩免费电影一区| 国产精品网站在线| 亚洲一卡二卡三卡四卡| 日本欧美久久久久免费播放网| 久久国产精品露脸对白| 成人性视频免费网站| 欧美亚洲一区二区在线| 精品日韩欧美在线| 国产精品久久久久9999吃药| 亚洲va在线va天堂| 国产精品影音先锋| 欧美中文字幕不卡| 欧美xxx久久| 亚洲人xxxx| 久久国产视频网| 91女人视频在线观看| 欧美日韩国产综合视频在线观看 | 色8久久精品久久久久久蜜| 欧美日韩国产乱码电影| 国产欧美视频一区二区| 亚洲成人精品一区| 成人午夜视频免费看| 6080亚洲精品一区二区| 国产精品美女久久久久高潮| 午夜电影一区二区三区| 国产99久久久国产精品潘金| 337p亚洲精品色噜噜噜| ...xxx性欧美| 国产一区二区三区四区在线观看| 欧美在线高清视频| 国产精品理伦片| 久久精品国产亚洲高清剧情介绍| 91蝌蚪国产九色| 久久精品亚洲乱码伦伦中文| 午夜欧美大尺度福利影院在线看| 国产成人免费高清| 日韩午夜三级在线| 亚洲午夜激情网站| 91麻豆成人久久精品二区三区| 久久久久99精品国产片| 蜜臀va亚洲va欧美va天堂| 欧美影院一区二区三区| 亚洲人一二三区| 成人的网站免费观看| 久久亚洲一区二区三区明星换脸 | 国产精品五月天| 韩国欧美国产一区| 欧美一级专区免费大片| 亚洲五码中文字幕| 在线欧美日韩国产| 亚洲人成网站在线| 成人av电影观看| 亚洲国产高清不卡| 国产精品综合在线视频| 欧美一区二区免费观在线| 一区二区成人在线| 色欲综合视频天天天| ●精品国产综合乱码久久久久| 粉嫩欧美一区二区三区高清影视| 2欧美一区二区三区在线观看视频 337p粉嫩大胆噜噜噜噜噜91av | 一区二区三区在线看| 91香蕉视频在线| 中文字幕一区二区三区在线播放| 丁香六月综合激情| 中文字幕av一区二区三区免费看 | 国产亚洲欧美一级| 国产做a爰片久久毛片| 久久尤物电影视频在线观看| 国产在线视频一区二区三区| 日韩精品一区二区三区在线观看 | 九九精品一区二区| 欧美大黄免费观看| 久久99久久99精品免视看婷婷| 日韩精品一区二区在线| 国产一区二区久久| 国产欧美va欧美不卡在线| 成人av网站免费观看| 亚洲欧美日韩国产另类专区| 欧洲精品一区二区| 奇米色777欧美一区二区| 精品久久久久av影院| 国产成人精品亚洲日本在线桃色| 欧美韩国日本一区| 一本大道av伊人久久综合| 亚洲国产日韩综合久久精品| 日韩天堂在线观看| 国产精品香蕉一区二区三区| 一区视频在线播放| 欧美亚洲愉拍一区二区| 麻豆精品视频在线观看视频| 国产女人aaa级久久久级| 91天堂素人约啪| 日韩av中文字幕一区二区三区| 精品国产91久久久久久久妲己| 高清不卡一二三区| 亚洲成人动漫一区| 久久蜜桃av一区二区天堂| 99精品久久只有精品| 首页亚洲欧美制服丝腿| 久久久久久免费|