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

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

?? udp.txt

?? 模擬網絡通訊中的UDP通訊
?? TXT
字號:
#include <iostream>
#include <WinSock2.h>
#include <stdio.h>
#include <IPHlpApi.h>


#pragma comment(lib,"ws2_32.lib")
#pragma comment(lib, "Iphlpapi.lib")

using namespace std;

int error=0;


u_char g_ucLocalMac[6];   //本地MAC地址

DWORD  g_dwGetwayIP;      //網關地址

DWORD g_dwLocalIP;        //本機地址

DWORD g_dwMask;           //子網掩碼



void GetLocalNetInfo()

{	
	PIP_ADAPTER_INFO pAdapterInfo = NULL;//該結構只針對IPV4 替代結構體為PIP_ADAPTER_ADDRESSES
	ULONG ulLen = 0;

	// 為適配器結構申請內存
	::GetAdaptersInfo(pAdapterInfo,&ulLen);

	cout<<ulLen<<":"<<sizeof(IP_ADAPTER_INFO)<<endl;
	//pAdapterInfo = (PIP_ADAPTER_INFO)::GlobalAlloc(GPTR, ulLen);

	pAdapterInfo=(PIP_ADAPTER_INFO)malloc(sizeof(IP_ADAPTER_INFO));
	// 取得本地適配器結構信息
	if(::GetAdaptersInfo(pAdapterInfo,&ulLen) ==  ERROR_SUCCESS)
	{
		if(pAdapterInfo != NULL)
		{
			memcpy(g_ucLocalMac, pAdapterInfo->Address, 6);
			g_dwGetwayIP = ::inet_addr(pAdapterInfo->GatewayList.IpAddress.String);
			g_dwLocalIP = ::inet_addr(pAdapterInfo->IpAddressList.IpAddress.String);
			g_dwMask = ::inet_addr(pAdapterInfo->IpAddressList.IpMask.String);
		}
	}

	free(pAdapterInfo);

	printf(" \n -------------------- 本地主機信息 -----------------------\n\n");
	in_addr in;
	in.S_un.S_addr = g_dwLocalIP;
	printf("      IP Address : %s \n", ::inet_ntoa(in));

	in.S_un.S_addr = g_dwMask;
	printf("     Subnet Mask : %s \n", ::inet_ntoa(in));

	in.S_un.S_addr = g_dwGetwayIP;
	printf(" Default Gateway : %s \n", ::inet_ntoa(in));

	u_char *p = g_ucLocalMac;
	printf("     MAC Address : %02X-%02X-%02X-%02X-%02X-%02X \n", p[0], p[1], p[2], p[3], p[4], p[5]);

	printf(" \n \n ");
	//PIP_ADAPTER_ADDRESSES pAddresses;
	//ULONG outBufLen = 0;
	//DWORD dwRetVal = 0;

	////為適配器申請內存

	//// 為適配器結構申請內存
	//pAddresses=(PIP_ADAPTER_ADDRESSES)malloc(sizeof(IP_ADAPTER_ADDRESSES));
	//if (::GetAdaptersAddresses(AF_INET, 0, NULL, pAddresses, &outBufLen) 
	//	== ERROR_BUFFER_OVERFLOW) {
	//		free(pAddresses);
	//		pAddresses = (IP_ADAPTER_ADDRESSES*) malloc(outBufLen);
	//}

	//if ((dwRetVal = ::GetAdaptersAddresses(AF_INET, 
	//	0, 
	//	NULL, 
	//	pAddresses, 
	//	&outBufLen)) == NO_ERROR) {
	//		// If successful, output some information from the data we received
	//		PIP_ADAPTER_ADDRESSES pCurrAddresses = pAddresses;
	//		while (pCurrAddresses) {
	//			printf("\tFriendly name: %S\n", pCurrAddresses->FriendlyName);
	//			printf("\tDescription: %S\n", pCurrAddresses->Description);
	//			pCurrAddresses = pCurrAddresses->Next;
	//		}
	//}
	//else { 
	//	printf("Call to GetAdaptersAddresses failed.\n");
	//	LPVOID lpMsgBuf;
	//	if (FormatMessage( 
	//		FORMAT_MESSAGE_ALLOCATE_BUFFER | 
	//		FORMAT_MESSAGE_FROM_SYSTEM | 
	//		FORMAT_MESSAGE_IGNORE_INSERTS,
	//		NULL,
	//		dwRetVal,
	//		MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), // Default language
	//		(LPTSTR) &lpMsgBuf,
	//		0,
	//		NULL )) {
	//			printf("\tError: %s", lpMsgBuf);
	//	}
	//	LocalFree( lpMsgBuf );
	//}


 //   free(pAddresses);


}


void GetDNSInfo()

{
	FIXED_INFO * FixedInfo;
	ULONG    ulOutBufLen;
	DWORD    dwRetVal;
	IP_ADDR_STRING * pIPAddr;

	FixedInfo = (FIXED_INFO *) malloc(sizeof( FIXED_INFO ));
	ulOutBufLen = sizeof( FIXED_INFO );

	if( ERROR_BUFFER_OVERFLOW == GetNetworkParams( FixedInfo, &ulOutBufLen ) ) 
	{
		free( FixedInfo );
	}

	if ( dwRetVal = GetNetworkParams( FixedInfo, &ulOutBufLen ) ) {
		printf( "GetNetworkParams failed with error: %08x\n", dwRetVal );
	}
	else {
		printf( "Host Name: %s\n", FixedInfo -> HostName );
		printf( "Domain Name: %s\n", FixedInfo -> DomainName );

		printf( "DNS Servers:\n" );
		printf( "\t%s\n", FixedInfo -> DnsServerList.IpAddress.String );
		pIPAddr = FixedInfo -> DnsServerList.Next;
		while ( pIPAddr ) {
			printf( "\t%s\n", pIPAddr ->IpAddress.String );
			pIPAddr = pIPAddr ->Next;
		}
	}

}

HANDLE  threadHandle;     //工作線程的句柄

DWORD WINAPI WorkThread(LPVOID parame);
sockaddr_in  serverAddr;

CRITICAL_SECTION criticalSection;

void main()

{
	WSAData wsaData;

	error=WSAStartup(MAKEWORD(10,2),&wsaData);

	::InitializeCriticalSection(&criticalSection);

	if (error!=0)
	{
		cout<<"加載網絡庫失敗!"<<error<<endl;
	}

	//得到本機的所有網絡信息
	GetLocalNetInfo();
    

	GetDNSInfo();

	serverAddr.sin_addr.S_un.S_addr=g_dwLocalIP;
	serverAddr.sin_family=AF_INET;
    serverAddr.sin_port=htons(6060);
    
	SOCKET s=socket(AF_INET,SOCK_DGRAM,0);

	bind(s,(sockaddr*)&serverAddr,sizeof(sockaddr_in));
  
	DWORD threadID=0;

	threadHandle=CreateThread(0,0,WorkThread,(LPVOID)&s,NULL,&threadID);

	char sendBuff[10]="";

	char recvBuff[10]="";


	
	while (true)
	{
		EnterCriticalSection(&criticalSection);

		cout<<"請輸入信息"<<endl;
		cin>>sendBuff;

		int sendLen= sendto(s,sendBuff,strlen(sendBuff)+1,0,(sockaddr*)&serverAddr,sizeof(sockaddr));

		if (sendLen!=-1)
		{
			cout<<"發送成功,發送字節數為:"<<sendLen<<endl;

			cout<<"發送內容為:"<<sendBuff<<endl;

			LeaveCriticalSection(&criticalSection);
		}

		else

		{
			cout<<"發送失敗!"<<endl;

		}

	}	
	
}

DWORD WINAPI WorkThread(LPVOID parame)

{
	char recvBuff[10]="";

	int  recvLen=sizeof(SOCKADDR);

	SOCKET s=*(SOCKET*)parame;

	

	int Len=0;
	while (true)
	{
		EnterCriticalSection(&criticalSection);

		recvfrom(s,recvBuff,sizeof(recvBuff),0,(sockaddr*)&serverAddr,&recvLen);//若發送方數據過大要接收多次

		cout<<"----------------------------------------------------------"<<endl;
		cout<<"收到網絡信息"<<endl;

		cout<<"打印網絡信息"<<Len<<endl;

		cout<<"收到的信息是:"<<recvBuff<<endl;

		LeaveCriticalSection(&criticalSection);


	}
	return 0;

}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
韩国精品免费视频| 蜜臀a∨国产成人精品| 久久先锋资源网| 91精品福利在线一区二区三区 | 免费成人美女在线观看.| 一区二区三区在线免费播放| 一区二区三区四区中文字幕| 亚洲综合久久av| 日韩中文欧美在线| 日本不卡一区二区三区高清视频| 免费在线观看视频一区| 久久精品国产精品亚洲精品| 成人午夜免费视频| 日本精品一区二区三区高清| 欧美日韩国产一级| 日韩一区二区免费高清| 久久久久久久av麻豆果冻| 亚洲国产精品传媒在线观看| 亚洲视频一二三区| 亚洲第一av色| 国产精品99久久久久| 色噜噜狠狠成人网p站| 91精品国产91久久久久久最新毛片 | 日日夜夜一区二区| 久久99久久久久| 成人免费视频一区二区| 日本韩国精品在线| 日韩精品一区二区三区视频| 国产精品伦一区| 三级久久三级久久久| 国产.精品.日韩.另类.中文.在线.播放| 国产.精品.日韩.另类.中文.在线.播放| 91视频免费观看| 日韩欧美资源站| 亚洲欧洲制服丝袜| 狠狠色丁香婷婷综合| 91国产视频在线观看| 久久久精品黄色| 亚洲大片免费看| 成人性生交大片免费看中文 | 国产成人精品影视| 欧美精品tushy高清| 中文字幕制服丝袜成人av| 日韩中文字幕区一区有砖一区| 国产成人一区在线| 欧美精品国产精品| 亚洲精品日韩综合观看成人91| 国产一区二区三区日韩| 欧美午夜片在线看| 国产精品大尺度| 国产精品亚洲成人| ww亚洲ww在线观看国产| 天天影视网天天综合色在线播放| 成人久久18免费网站麻豆 | 国产精品福利av| 国产精品一区二区黑丝| 日韩精品中午字幕| 性做久久久久久免费观看欧美| 成人免费毛片高清视频| 久久免费视频色| 国产一区二区剧情av在线| 欧美一级二级三级乱码| 日韩中文字幕1| 欧美精品自拍偷拍动漫精品| 亚洲一区二区三区小说| 91丨porny丨国产| 亚洲视频免费观看| 97精品国产97久久久久久久久久久久| 久久久久久久久久美女| 国产麻豆精品95视频| 久久综合999| 国产成人精品1024| 久久精品一区蜜桃臀影院| 国产精品一卡二卡在线观看| 久久丝袜美腿综合| 国产一区二区三区在线观看免费| 精品99一区二区| 国产v日产∨综合v精品视频| 国产精品免费丝袜| 99精品视频一区二区| 一区二区三区四区在线播放| 在线一区二区三区四区| 亚洲成人av中文| 91精品国产综合久久国产大片| 毛片一区二区三区| 欧美成人aa大片| 成人一区二区视频| 一区二区成人在线观看| 69久久夜色精品国产69蝌蚪网| 日韩精彩视频在线观看| 2021中文字幕一区亚洲| 99久久国产免费看| 亚洲第一激情av| 精品国产一区二区三区四区四| 国产精品66部| 亚洲伦在线观看| 日韩欧美在线影院| 9色porny自拍视频一区二区| 亚洲电影欧美电影有声小说| 久久婷婷色综合| 91捆绑美女网站| 麻豆国产精品一区二区三区 | 欧美一区二区三区免费大片| 韩日精品视频一区| 亚洲黄网站在线观看| 5566中文字幕一区二区电影| 国产不卡高清在线观看视频| 亚洲精品高清在线| 久久毛片高清国产| 欧美熟乱第一页| 高清不卡一区二区| 五月激情综合色| 国产精品热久久久久夜色精品三区| 欧美性三三影院| 国产精品77777| 亚洲午夜精品久久久久久久久| 欧美精品一区二区高清在线观看 | 69久久夜色精品国产69蝌蚪网| 粉嫩欧美一区二区三区高清影视| 性欧美大战久久久久久久久| 欧美极品xxx| 精品久久一区二区三区| 欧美在线视频日韩| 福利一区福利二区| 极品尤物av久久免费看| 性感美女极品91精品| 日韩美女视频19| 国产亚洲精品超碰| 日韩精品一区二区三区中文精品 | 精品国产区一区| 6080日韩午夜伦伦午夜伦| 色综合久久综合| 成人h版在线观看| 国产一区二区成人久久免费影院 | 欧美高清性hdvideosex| 色综合天天综合网国产成人综合天 | 欧美一区二区三区的| 欧洲视频一区二区| 91美女视频网站| 99在线精品观看| av一二三不卡影片| 成人av电影在线网| 成人免费视频免费观看| 成人免费高清视频在线观看| 国产精品一区二区久久精品爱涩| 麻豆精品一区二区综合av| 日韩av二区在线播放| 日本特黄久久久高潮| 麻豆精品一区二区av白丝在线| 日韩经典中文字幕一区| 日韩1区2区3区| 久久精品国产色蜜蜜麻豆| 久久爱www久久做| 国产乱人伦偷精品视频免下载| 九九九精品视频| 国产最新精品免费| 国产精品一色哟哟哟| av一区二区久久| 在线观看av一区| 欧美精品在线观看播放| 91精品久久久久久蜜臀| 欧美r级在线观看| 亚洲国产高清aⅴ视频| 中文字幕在线不卡一区二区三区| 亚洲人精品午夜| 亚洲国产成人tv| 精品在线播放免费| 国产成人免费av在线| 99这里只有精品| 欧美视频一区二区| 日韩欧美中文字幕制服| 国产欧美日韩精品a在线观看| 亚洲激情男女视频| 日韩av成人高清| 国产aⅴ精品一区二区三区色成熟| 99re成人精品视频| 欧美另类z0zxhd电影| 久久精品一级爱片| 亚洲欧美激情小说另类| 日韩高清国产一区在线| 国产传媒日韩欧美成人| 91国偷自产一区二区三区成为亚洲经典| 欧美日韩一区二区电影| 久久久综合视频| 亚洲精品国产无套在线观 | 久久精品亚洲一区二区三区浴池 | 国产精品99久久久久久久女警 | 日韩欧美久久一区| 国产精品素人一区二区| 亚洲va中文字幕| 国产成人亚洲综合a∨婷婷| 欧美这里有精品| 2024国产精品| 亚洲国产成人精品视频| 成人av网站在线观看| 欧美欧美欧美欧美首页| 国产精品国产精品国产专区不蜜| 美洲天堂一区二卡三卡四卡视频| 成人18视频在线播放| 欧美sm美女调教|