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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? enumprot.c

?? 網(wǎng)絡(luò)當(dāng)前運行協(xié)議枚取程序
?? C
?? 第 1 頁 / 共 2 頁
字號:
        ADDSF(XP1_GUARANTEED_DELIVERY,
			"Delivery guaranteed",
			"Delivery NOT guaranteed");

        ADDSF(XP1_GUARANTEED_ORDER,
			"Order guaranteed",
			"Order NOT guaranteed");

        ADDSF(XP1_MESSAGE_ORIENTED,
			"Message boundaries preserved",
			"Message boundaries NOT preserved");

        if (pInfo->dwServiceFlags1 & XP1_PSEUDO_STREAM)
			AddTreeItem(hWndTree, hParent2, 
				"Message oriented with boundaries ignored");

        ADDSF(XP1_GRACEFUL_CLOSE,
			"Can perform graceful close",
			"Abortive close only");

        ADDSF(XP1_EXPEDITED_DATA,
			"Supports expedited data",
			"Doesn't support expedited data");

        ADDSF(XP1_CONNECT_DATA,
			"Supplies connect data",
			"Doesn't supply connect data");

        ADDSF(XP1_DISCONNECT_DATA,
			"Supplies disconnect data",
			"Doesn't supply disconnect data");

        ADDSF(XP1_SUPPORT_BROADCAST,
			"Supports broadcasts",
			"Doesn't support broadcasts");

		// Multipoint/multicast
        if (pInfo->dwServiceFlags1 & XP1_SUPPORT_MULTIPOINT)
		{
			hParent3 = AddTreeItem(hWndTree, 
								   hParent2, 
								   "Supports multicast");
			AddTreeItem(hWndTree,
						hParent3,
						(pInfo->dwServiceFlags1 & 
						XP1_MULTIPOINT_CONTROL_PLANE) ?
						"Control plane rooted" :
						"Control plane non-rooted");

			AddTreeItem(hWndTree,
						hParent3,
						(pInfo->dwServiceFlags1 & 
						XP1_MULTIPOINT_DATA_PLANE) ?
						"Data plane rooted" :
						"Data plane non-rooted");
		}
		else
			AddTreeItem(hWndTree, 
						hParent2, 
						"Doesn't support multicast");

        ADDSF(XP1_QOS_SUPPORTED,
			"Supports quality of service",
			"Doesn't support quality of service");

        if (pInfo->dwServiceFlags1 & XP1_UNI_SEND)
			AddTreeItem(hWndTree, 
					hParent2, 
					"Unidirectional in the send direction");

        if (pInfo->dwServiceFlags1 & XP1_UNI_RECV)
			AddTreeItem(hWndTree, 
					hParent2, 
					"Unidirectional in the recv direction");
 
        if (!(pInfo->dwServiceFlags1 & XP1_UNI_SEND) &&
			!(pInfo->dwServiceFlags1 & XP1_UNI_RECV))
			 AddTreeItem(hWndTree, 
					hParent2, 
					"Bidirectional sending and receiving");

        if (pInfo->dwServiceFlags1 & XP1_IFS_HANDLES)
			AddTreeItem(hWndTree, 
					hParent2, 
					"Socket descriptors are IFS handles");

        ADDSF(XP1_PARTIAL_MESSAGE,
			"Supports MSG_PARTIAL",
			"Doesn't support MSG_PARTIAL");

		// Provider flags
		hParent2 = AddTreeItem(hWndTree, 
							   hParent, 
							   "Provider Flags");

		if (pInfo->dwProviderFlags & 
				PFL_MULTIPLE_PROTO_ENTRIES)
			AddTreeItem(hWndTree, 
						hParent2, 
						"This is one behavior of two or"
						" more for this protocol");

		if (pInfo->dwProviderFlags & 
				PFL_RECOMMENDED_PROTO_ENTRY)
			AddTreeItem(hWndTree, 
						hParent2, 
						"This is the recommended entry"
						" for this protocol.");

		if (pInfo->dwProviderFlags & PFL_HIDDEN)
			AddTreeItem(hWndTree, 
						hParent2, 
						"WS2 SPI ERROR."
						" Hidden catalog entry shown");

		if (pInfo->dwProviderFlags & 
				PFL_MATCHES_PROTOCOL_ZERO)
			AddTreeItem(hWndTree, 
						hParent2, 
						"Use zero as protocol parameter");

		// Provider ID
		AddTreeItem(hWndTree, 
					hParent, 
					"GUID: %s", 
					GUIDtoString((GUID *)&pInfo->ProviderId));

		// Catalog entry
		AddTreeItem(hWndTree, 
					hParent, 
					"Catalog entry: %ld", 
					pInfo->dwCatalogEntryId);

		// Protocol chain
		switch(pInfo->ProtocolChain.ChainLen)
		{
			case 0:
				AddTreeItem(hWndTree, 
							hParent, 
							"Layered protocol");
				break;
			case 1:
				AddTreeItem(hWndTree, 
							hParent, 
							"Base protocol");
				break;
			default:
				if (pInfo->ProtocolChain.ChainLen > 1)
					AddTreeItem(hWndTree, 
								hParent, 
								"Protocol chain");
				else
					AddTreeItem(hWndTree, 
								hParent, 
								"SPI ERROR:"
								" Invalid ChainLen");
		}

		// Version
		AddTreeItem(hWndTree, 
					hParent, 
					"Version: %d", 
					pInfo->iVersion);

		// Address family
		AddTreeItem(hWndTree, 
					hParent, 
					"Address family: %s",
					AFtoSTR(pInfo->iAddressFamily));

		// Min/Max SOCKADDR size
		AddTreeItem(hWndTree, 
					hParent, 
					"Min/Max Address length: %d/%d",
					pInfo->iMinSockAddr,
					pInfo->iMaxSockAddr);

		// Socket type
		switch(pInfo->iSocketType)
		{
			case SOCK_STREAM:
				AddTreeItem(hWndTree, 
							hParent, 
							"SOCK_STREAM");
				break;
			case SOCK_DGRAM:
				AddTreeItem(hWndTree, 
							hParent, 
							"SOCK_DGRAM");
				break;
			case SOCK_RAW:
				AddTreeItem(hWndTree, 
							hParent, 
							"SOCK_RAW");
				break;
			case SOCK_RDM:
				AddTreeItem(hWndTree, 
							hParent, 
							"SOCK_RDM");
				break;
			case SOCK_SEQPACKET:
				AddTreeItem(hWndTree, 
							hParent, 
							"SOCK_SEQPACKET");
				break;
			default:
				AddTreeItem(hWndTree, 
							hParent, 
							"Unknown");
		}

		// Protocol
		AddTreeItem(hWndTree, 
					hParent, 
					"Protocol: %s",
					PROTOtoSTR(pInfo->iProtocol));

		// Protocol max offset
		AddTreeItem(hWndTree, 
					hParent, 
					"Protocol Max Offset: %d", 
					pInfo->iProtocolMaxOffset);

		// Network byte order
		switch(pInfo->iNetworkByteOrder)
		{
			case BIGENDIAN:
				AddTreeItem(hWndTree, 
							hParent, 
							"Big Endian");
				break;
			case LITTLEENDIAN:
				AddTreeItem(hWndTree, 
							hParent, 
							"Little Endian");
				break;
			default:
				AddTreeItem(hWndTree, 
							hParent, 
							"Unknown");
		}

		// Security
		AddTreeItem(hWndTree, 
					hParent, 
					"Security scheme: %d",
					pInfo->iSecurityScheme);

		// Message size
		switch(pInfo->dwMessageSize)
		{
			case 0:
				AddTreeItem(hWndTree, 
							hParent, 
							"Max message size"
							" not applicable");
				break;
			case 1:
				AddTreeItem(hWndTree, 
							hParent, 
							"Max message size based on MTU");
				break;
			case 0xFFFFFFFF:
				AddTreeItem(hWndTree, 
							hParent, 
							"No limit on max message size");
				break;
			default:
				AddTreeItem(hWndTree, 
							hParent, 
							"Unknown max message size: %ld", 
							pInfo->dwMessageSize);
		}
		// Move pointer to next protocol
		pInfo++;
	}

	free(pBuf);
	return;
}

////////////////////////////////////////////////////////////

//
// AddTreeItem()
// Format a string and add it to a TreeView
//
HTREEITEM AddTreeItem(HWND hWndTree, 
					  HTREEITEM hParent, 
					  LPSTR lpszFormat, 
					  ...)
{
	va_list Marker;
	char szBuf[256];
	TV_ITEM tvi;
	TV_INSERTSTRUCT tvis;

	// Format the string
	va_start(Marker, lpszFormat);
	vsprintf(szBuf, lpszFormat, Marker);
	va_end(Marker);

	// Fill in the TV_ITEM structure
	tvi.mask	      = TVIF_TEXT;
	tvi.pszText	      = szBuf; 
	tvi.cchTextMax    = lstrlen(szBuf); 

	// Fill in the TV_INSERTSTRUCT
	tvis.item         = tvi;
	tvis.hInsertAfter = TVI_LAST;
	tvis.hParent       = hParent; 
	return (TreeView_InsertItem(hWndTree, &tvis));
}


// 
// About()
// About dialog box procedure
//
BOOL APIENTRY About(
   HWND hDlg,
	UINT message,
	UINT wParam,
	LONG lParam)
{
	switch (message)
	{
	   case WM_INITDIALOG:
		  return (TRUE);

	   case WM_COMMAND:              
		  if (LOWORD(wParam) == IDOK)
		 {
			  EndDialog(hDlg, TRUE);
			  return (TRUE);
		  }
		  break;
	}
	return (FALSE);   

}


void ShowWinsockError(int iError)
{
	char szMessage[256];

	if (LoadString(ghInst, 
				   iError, 
				   szMessage, 
				   sizeof(szMessage)))
	{
		MessageBox(NULL, szMessage,
						 gszAppName,
						 MB_OK|MB_ICONERROR);

	}
	else
	{
		MessageBox(NULL, "Unknown Winsock Error",
						 gszAppName,
						 MB_OK|MB_ICONERROR);

	}
	return;
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
波多野结衣一区二区三区| 欧美性猛交xxxx黑人交| 久久精品国产99| 日本系列欧美系列| 青青青伊人色综合久久| 麻豆国产精品官网| 激情小说欧美图片| 国产盗摄视频一区二区三区| 国产黄人亚洲片| 波多野结衣在线一区| 一本色道久久综合精品竹菊| 欧美丝袜自拍制服另类| 欧美一区二区三区的| 精品1区2区在线观看| 亚洲黄色小说网站| 亚洲18色成人| 欧美羞羞免费网站| 成人性生交大片免费看视频在线| 丰满亚洲少妇av| 91丨九色丨国产丨porny| 在线观看日韩精品| 欧美一区二区精品在线| 久久亚洲综合色| 日韩美女精品在线| 天天色天天操综合| 国产一区激情在线| 91原创在线视频| 91精品国产丝袜白色高跟鞋| 国产亚洲成aⅴ人片在线观看| 中文字幕亚洲一区二区av在线| 亚洲已满18点击进入久久| 青娱乐精品视频在线| 国产成人自拍高清视频在线免费播放| 99综合电影在线视频| 欧美日韩黄视频| 久久久久久久久久久久久夜| 亚洲另类一区二区| 九九久久精品视频| 91一区在线观看| 欧美一卡二卡在线| 一色屋精品亚洲香蕉网站| 日日骚欧美日韩| 成人免费视频一区| 欧美伦理视频网站| 成人午夜免费av| 中文字幕一区二区三区蜜月| 依依成人综合视频| 精品在线播放免费| 日韩欧美一二三区| 国产精品二三区| 日韩精品欧美成人高清一区二区| 日本午夜精品一区二区三区电影| 国产高清成人在线| 欧美精品一二三四| 亚洲视频一区在线| 狠狠色狠狠色综合系列| 欧美色综合网站| 欧美韩国日本不卡| 久久综合综合久久综合| 色美美综合视频| 中文字幕乱码日本亚洲一区二区 | 欧美成人三级电影在线| 亚洲欧美中日韩| 国产一区三区三区| 欧美一区二区视频在线观看2020| 亚洲人成网站精品片在线观看 | 在线观看亚洲a| 欧洲精品中文字幕| 欧美精品一二三区| 粉嫩av亚洲一区二区图片| 久久综合狠狠综合久久激情 | 日韩精品一区二区三区四区视频 | 蜜桃视频在线观看一区| 欧美日韩成人一区二区| 亚洲va国产va欧美va观看| 欧美日本精品一区二区三区| 肉肉av福利一精品导航| 久久综合色天天久久综合图片| 国产主播一区二区三区| 在线免费观看视频一区| 亚洲图片激情小说| 欧美日韩一区精品| 国产成a人亚洲精品| 亚洲一区影音先锋| 欧美性极品少妇| 免费高清视频精品| 中文字幕欧美一区| 91精品国产色综合久久不卡电影 | 美国一区二区三区在线播放| 久久免费美女视频| 欧美午夜精品一区二区蜜桃 | 国产suv一区二区三区88区| 亚洲一区日韩精品中文字幕| 色吧成人激情小说| 国产伦精品一区二区三区视频青涩 | 色婷婷综合五月| 久久97超碰国产精品超碰| 亚洲精品久久久蜜桃| 欧美va亚洲va| 国产高清成人在线| 经典三级一区二区| 美腿丝袜在线亚洲一区| 亚洲福利视频三区| 国产精品短视频| 中文子幕无线码一区tr| 亚洲精品在线观看视频| 99国产欧美久久久精品| 国产福利91精品一区二区三区| 国产精品国产三级国产普通话蜜臀 | 波多野结衣中文一区| 成人午夜av电影| 91搞黄在线观看| 欧美视频在线一区| 一本色道**综合亚洲精品蜜桃冫| 在线免费亚洲电影| 91精品国产aⅴ一区二区| 久久综合av免费| 日韩伦理电影网| 五月激情六月综合| 免费观看一级特黄欧美大片| 国产毛片精品视频| www.日韩大片| 欧美一区在线视频| 久久网站最新地址| 欧美大肚乱孕交hd孕妇| 久久综合狠狠综合久久激情| 国产精品超碰97尤物18| 舔着乳尖日韩一区| 精品一区二区免费看| 成人丝袜视频网| 91成人看片片| 精品国产一区二区三区四区四| 亚洲精品视频一区| 99久久精品国产毛片| 99国产一区二区三精品乱码| 欧美三级日韩三级国产三级| 精品欧美一区二区在线观看 | 成人的网站免费观看| 在线视频欧美精品| 国产三级一区二区| 亚洲成在线观看| 成人福利视频在线看| 欧美一级二级三级蜜桃| 亚洲激情图片一区| 国产成人在线观看| 欧美一区二区三区四区高清| 中文字幕一区二区三区视频| 日一区二区三区| 欧美亚洲一区二区在线| 国产精品理伦片| 国模少妇一区二区三区| 欧美性猛交xxxxxxxx| 欧美日韩久久久久久| 在线综合+亚洲+欧美中文字幕| 亚洲国产综合在线| 在线不卡欧美精品一区二区三区| 亚洲电影第三页| 欧美一区二区在线视频| 亚洲最大色网站| 蜜臀av一区二区| 5858s免费视频成人| 午夜视频在线观看一区二区| 欧美性猛交xxxx乱大交退制版| 一区二区三区在线不卡| 色综合中文综合网| 国产精品乡下勾搭老头1| 日韩一区二区电影| 日韩经典中文字幕一区| 91精品国产全国免费观看| 亚洲成人动漫精品| 日韩亚洲欧美综合| 成人小视频在线观看| 日韩欧美电影在线| 91丨九色丨黑人外教| 经典一区二区三区| 亚洲在线观看免费| 日本一区二区成人在线| 欧美日韩日日骚| 92国产精品观看| 国产美女在线精品| 日本vs亚洲vs韩国一区三区| 中文字幕在线一区二区三区| 欧美va亚洲va香蕉在线| 精品视频在线免费看| 91美女片黄在线观看91美女| 国产美女精品人人做人人爽 | 亚洲一级不卡视频| aaa欧美日韩| 精品一区二区三区久久| 国产精品久久久久久久久快鸭| 91国产丝袜在线播放| 国产一区91精品张津瑜| 一区二区三区精品| 欧美国产精品中文字幕| 日韩免费一区二区三区在线播放| 色婷婷av一区| 91美女蜜桃在线| 91香蕉视频黄| 91久久久免费一区二区| 亚洲自拍偷拍欧美|