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

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

?? peeperlib.cpp

?? 這是個soket的代碼不是太實用但是對出學者還是有些幫助的 有需要的可以
?? CPP
?? 第 1 頁 / 共 3 頁
字號:
int WINAPI PL_PaletteSize(LPBYTE lpbi)
{
   if(IS_WIN30_DIB(lpbi))
	  return (WORD)(::PL_ColorsNum(lpbi)*sizeof(RGBQUAD));
   else
	  return (WORD)(::PL_ColorsNum(lpbi)*sizeof(RGBTRIPLE));
}

HDIB WINAPI PL_BmpToDIB(HBITMAP hBitmap, HPALETTE hPal, int nBits)
{
    BITMAP              bm;
    BITMAPINFOHEADER    bi;
    LPBITMAPINFOHEADER  lpbi;
    DWORD               dwLen;
    HANDLE              hDIB, h;
    HDC                 hDC;
    WORD                biBits;

    if(!hBitmap)
        return NULL;

    if(!GetObject(hBitmap, sizeof(bm), (LPSTR)&bm))
        return NULL;
    if (hPal == NULL)
        hPal = (HPALETTE) GetStockObject(DEFAULT_PALETTE);
    biBits = bm.bmPlanes * bm.bmBitsPixel;
    if (biBits <= 1)
        biBits = 1;
    else if (biBits <= 4)
        biBits = 4;
    else if (biBits <= 8)
        biBits = 8;
    else
        biBits = 24;
	if(nBits != -1)
	{
		if(nBits == 1 || nBits == 4 || nBits == 8 || nBits == 24)
		{
			biBits = nBits;
		}
	}
    bi.biSize = sizeof(BITMAPINFOHEADER);
    bi.biWidth = bm.bmWidth;
    bi.biHeight = bm.bmHeight;
    bi.biPlanes = 1;
    bi.biBitCount = biBits;
    bi.biCompression = BI_RGB;
    bi.biSizeImage = 0;
    bi.biXPelsPerMeter = 0;
    bi.biYPelsPerMeter = 0;
    bi.biClrUsed = 0;
    bi.biClrImportant = 0;
    dwLen = bi.biSize + PL_PaletteSize((LPBYTE)&bi);

    hDC = GetDC(NULL);
    hPal = SelectPalette(hDC, hPal, FALSE);
    RealizePalette(hDC);
    hDIB = GlobalAlloc(GHND, dwLen);
    if (!hDIB)
    {
      SelectPalette(hDC, hPal, TRUE);
      RealizePalette(hDC);
      ReleaseDC(NULL, hDC);
      return NULL;
    }
    lpbi = (LPBITMAPINFOHEADER)GlobalLock(hDIB);
    *lpbi = bi;
    GetDIBits(hDC, hBitmap, 0, (UINT)bi.biHeight, NULL, (LPBITMAPINFO)lpbi,
        DIB_RGB_COLORS);
    bi = *lpbi;
    GlobalUnlock(hDIB);

    if (bi.biSizeImage == 0)
        bi.biSizeImage = WIDTHBYTES((DWORD)bm.bmWidth * biBits) * bm.bmHeight;
    dwLen = bi.biSize + PL_PaletteSize((LPBYTE)&bi) + bi.biSizeImage;

    if (h = GlobalReAlloc(hDIB, dwLen, 0))
        hDIB = h;
    else
    {
        GlobalFree(hDIB);
        hDIB = NULL;
        SelectPalette(hDC, hPal, TRUE);
        RealizePalette(hDC);
        ReleaseDC(NULL, hDC);
        return NULL;
    }
    lpbi = (LPBITMAPINFOHEADER)GlobalLock(hDIB);
    if (GetDIBits(hDC, hBitmap, 0, (UINT)bi.biHeight, (LPSTR)lpbi +
            (WORD)lpbi->biSize + PL_PaletteSize((LPBYTE)lpbi), (LPBITMAPINFO)lpbi,
            DIB_RGB_COLORS) == 0)
    {
        GlobalUnlock(hDIB);
        hDIB = NULL;
        SelectPalette(hDC, hPal, TRUE);
        RealizePalette(hDC);
        ReleaseDC(NULL, hDC);
        return NULL;
    }

    bi = *lpbi;
    GlobalUnlock(hDIB);
    SelectPalette(hDC, hPal, TRUE);
    RealizePalette(hDC);
    ReleaseDC(NULL, hDC);

    return (HDIB) hDIB;
}

BOOL WINAPI PL_CreateDIBPalette(HDIB hDIB, CPalette* pPal)
{
	LPLOGPALETTE lpPal = NULL;
	HANDLE hLogPal = NULL;
	HPALETTE hPal = NULL;
	int i;                   // loop index
	WORD wNumColors;         // number of colors in color table
	LPSTR lpbi;              // pointer to packed-DIB
	LPBITMAPINFO lpbmi;      // pointer to BITMAPINFO structure (Win3.0)
	LPBITMAPCOREINFO lpbmc;  // pointer to BITMAPCOREINFO structure (old)
	BOOL bWinStyleDIB;       // flag which signifies whether this is a Win3.0 DIB
	BOOL bResult = FALSE;
	
	if (hDIB == NULL)
		return FALSE;
	
	lpbi = (LPSTR) ::GlobalLock((HGLOBAL) hDIB);
	
	lpbmi = (LPBITMAPINFO)lpbi;
	
	lpbmc = (LPBITMAPCOREINFO)lpbi;
	
	wNumColors = ::PL_ColorsNum((LPBYTE)lpbi);
	
	if (wNumColors != 0)
	{
		hLogPal = ::GlobalAlloc(GHND, sizeof(LOGPALETTE)
			+ sizeof(PALETTEENTRY) * wNumColors);
		
		if (hLogPal == 0)
		{
			::GlobalUnlock((HGLOBAL) hDIB);
			return FALSE;
		}
		
		lpPal = (LPLOGPALETTE) ::GlobalLock((HGLOBAL) hLogPal);
		
		lpPal->palVersion = PALVERSION;
		lpPal->palNumEntries = (WORD)wNumColors;
		
		bWinStyleDIB = IS_WIN30_DIB(lpbi);
		for (i = 0; i < (int)wNumColors; i++)
		{
			if (bWinStyleDIB)
			{
				lpPal->palPalEntry[i].peRed = lpbmi->bmiColors[i].rgbRed;
				lpPal->palPalEntry[i].peGreen = lpbmi->bmiColors[i].rgbGreen;
				lpPal->palPalEntry[i].peBlue = lpbmi->bmiColors[i].rgbBlue;
				lpPal->palPalEntry[i].peFlags = 0;
			}
			else
			{
				lpPal->palPalEntry[i].peRed = lpbmc->bmciColors[i].rgbtRed;
				lpPal->palPalEntry[i].peGreen = lpbmc->bmciColors[i].rgbtGreen;
				lpPal->palPalEntry[i].peBlue = lpbmc->bmciColors[i].rgbtBlue;
				lpPal->palPalEntry[i].peFlags = 0;
			}
		}
		
		bResult = pPal->CreatePalette(lpPal);
		::GlobalUnlock((HGLOBAL) hLogPal);
		::GlobalFree((HGLOBAL) hLogPal);
	}
	
	::GlobalUnlock((HGLOBAL) hDIB);
	
	return bResult;
}

LPBYTE WINAPI PL_DIBBits(LPBYTE lpbi)
{
	return (lpbi + *(LPDWORD)lpbi + ::PL_PaletteSize(lpbi));
}

BOOL WINAPI PL_DrawDIB(HDC hDC, LPRECT lpDCRect, HDIB hDIB, 
					   LPRECT lpDIBRect, CPalette* pPal)
{
	LPSTR    lpDIBHdr;
	LPSTR    lpDIBBits;
	BOOL     bSuccess = FALSE;
	HPALETTE hPal = NULL;
	HPALETTE hOldPal = NULL;
	
	if(hDIB == NULL)
		return -1;
	lpDIBHdr  = (LPSTR)::GlobalLock((HGLOBAL) hDIB);
	lpDIBBits = (LPSTR)::PL_DIBBits((LPBYTE)lpDIBHdr);
	
	if(pPal != NULL)
	{
		hPal = (HPALETTE) pPal->m_hObject;
		hOldPal = ::SelectPalette(hDC, hPal, TRUE);
	}

	if(lpDIBRect == NULL)
	{
		if(lpDCRect != NULL)
		{
			::SetStretchBltMode(hDC, COLORONCOLOR);
			
			bSuccess = ::StretchDIBits(hDC, lpDCRect->left, lpDCRect->top,
				RECTWIDTH(lpDCRect), RECTHEIGHT(lpDCRect), 0, 0, 
				PL_DIBWidth((LPBYTE)lpDIBHdr), PL_DIBHeight((LPBYTE)lpDIBHdr),
				lpDIBBits, (LPBITMAPINFO)lpDIBHdr, DIB_RGB_COLORS, SRCCOPY);
		}
		else
		{
			bSuccess = ::SetDIBitsToDevice(hDC, 0, 0,
				PL_DIBWidth((LPBYTE)lpDIBHdr), PL_DIBHeight((LPBYTE)lpDIBHdr),
				0, 0, 0, PL_DIBHeight((LPBYTE)lpDIBHdr),
				lpDIBBits, (LPBITMAPINFO)lpDIBHdr, DIB_RGB_COLORS);
		}
	}
	else
	{
		if(lpDCRect != NULL)
		{
			::SetStretchBltMode(hDC, COLORONCOLOR);
	
			bSuccess = ::StretchDIBits(hDC, lpDCRect->left, lpDCRect->top,
				RECTWIDTH(lpDCRect), RECTHEIGHT(lpDCRect),
				lpDIBRect->left, lpDIBRect->top, 
				RECTWIDTH(lpDIBRect), RECTHEIGHT(lpDIBRect),
				lpDIBBits, (LPBITMAPINFO)lpDIBHdr, DIB_RGB_COLORS, SRCCOPY);

		}
		else
		{
			bSuccess = ::SetDIBitsToDevice(hDC, 0, 0,
				RECTWIDTH(lpDIBRect), RECTHEIGHT(lpDIBRect),
				0, 0, 0, RECTHEIGHT(lpDIBRect),
				lpDIBBits, (LPBITMAPINFO)lpDIBHdr, DIB_RGB_COLORS);

		}
	}

	::GlobalUnlock((HGLOBAL)hDIB);
	if (hOldPal != NULL)
	{
		::SelectPalette(hDC, hOldPal, TRUE);
	}
	
	return bSuccess;
}

SIZE WINAPI PL_GetScreenSize()
{
	SIZE sz;
	sz.cx = ::GetSystemMetrics(SM_CXSCREEN);
	sz.cy = ::GetSystemMetrics(SM_CYSCREEN);
	return sz;
}

void WINAPI PL_MouseMove(POINT point)
{
	::SetCursorPos(point.x, point.y);
}

void WINAPI PL_MouseLButtonDown(POINT point, BOOL bMove)
{
	if(bMove)
	{
		::PL_MouseMove(point);
	}
	::mouse_event(MOUSEEVENTF_LEFTDOWN, point.x, point.y, 0, 0);
}

void WINAPI PL_MouseLButtonUp(POINT point, BOOL bMove)
{
	if(bMove)
	{
		::PL_MouseMove(point);
	}
	::mouse_event(MOUSEEVENTF_LEFTUP, point.x, point.y, 0, 0);
}

void WINAPI PL_MouseRButtonDown(POINT point, BOOL bMove)
{
	if(bMove)
	{
		::PL_MouseMove(point);
	}
	::mouse_event(MOUSEEVENTF_RIGHTDOWN, point.x, point.y, 0, 0);
}

void WINAPI PL_MouseRButtonUp(POINT point, BOOL bMove)
{
	if(bMove)
	{
		::PL_MouseMove(point);
	}
	::mouse_event(MOUSEEVENTF_RIGHTUP, point.x, point.y, 0, 0);
}

void WINAPI PL_MouseLButtonDblClk(POINT point, BOOL bMove)
{
	if(bMove)
	{
		::PL_MouseMove(point);
	}
	::PL_MouseLButtonDown(point);
	::PL_MouseLButtonUp(point);
	::PL_MouseLButtonDown(point);
	::PL_MouseLButtonUp(point);
}

void WINAPI PL_MouseRButtonDblClk(POINT point, BOOL bMove)
{
	if(bMove)
	{
		::PL_MouseMove(point);
	}
	::PL_MouseRButtonDown(point);
	::PL_MouseRButtonUp(point);
	::PL_MouseRButtonDown(point);
	::PL_MouseRButtonUp(point);
}

void WINAPI PL_KeyDown(UINT uChar, UINT uFlag)
{
	::keybd_event((BYTE)uChar, (BYTE)uChar, 0, 0);
}

void WINAPI PL_KeyUp(UINT uChar, UINT uFlag)
{
	::keybd_event((BYTE)uChar, (BYTE)uChar, KEYEVENTF_KEYUP, 0);
}

BOOL WINAPI PL_GetHostName(char *chIP, char *chName)
{
	BOOL bRet = FALSE;
	char chTemp[256];
	hostent* pEnt = NULL;
	ZeroMemory(chTemp, 256);
	int nRet = ::gethostname(chTemp, 256);
	if(nRet == 0)
	{
		if(AfxIsValidAddress(chName, strlen(chTemp)))
		{
			strcpy(chName, chTemp);
			bRet = TRUE;
		}
		if(AfxIsValidAddress(chIP, 16))
		{
			pEnt = ::gethostbyname(chTemp);
			if(pEnt)
			{
				sprintf(chIP, "%d.%d.%d.%d", 
					BYTE(pEnt->h_addr_list[0][0]), BYTE(pEnt->h_addr_list[0][1]),
					BYTE(pEnt->h_addr_list[0][2]), BYTE(pEnt->h_addr_list[0][3]));
				bRet = TRUE;
			}
			else
			{
				bRet = FALSE;
			}
		}
	}
	return bRet;
}

int WINAPI PL_ExecuteCommand(char *chCommandLine)
{
	return ::WinExec(chCommandLine, SW_NORMAL);
}

void WINAPI PL_LockDesktop(BOOL bLock)
{
	::ShowCursor(!bLock);
	::SystemParametersInfo(SPI_SETFASTTASKSWITCH, (int)(!bLock), NULL, 0);
	::SystemParametersInfo(SPI_SCREENSAVERRUNNING, (int)bLock, NULL, 0);
	::EnableWindow(::GetDesktopWindow(), !bLock);
}

BOOL WINAPI PL_ExitWindow(UINT uFlag)
{
	HANDLE hToken = NULL;
	TOKEN_PRIVILEGES tkp;
	BOOL fResult = FALSE;
	if(OpenProcessToken(GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, &hToken))
	{
		if(LookupPrivilegeValue(NULL, SE_SHUTDOWN_NAME, &tkp.Privileges[0].Luid))
		{
			tkp.PrivilegeCount = 1;
			tkp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED; 
			if(AdjustTokenPrivileges(hToken, FALSE, &tkp, 0, (PTOKEN_PRIVILEGES) NULL, 0))
			{
				return ::ExitWindowsEx(uFlag, 0);
			}
		}
	}
	
	return ::ExitWindowsEx(uFlag, 0);
}

void WINAPI PL_Send_CtrlAltDel()
{
	::PL_KeyDown(VK_CONTROL, 0);
	::PL_KeyDown(VK_MENU, 0);
	::PL_KeyDown(VK_DELETE, 0);
	::Sleep(2000);
	::PL_KeyUp(VK_CONTROL, 0);
	::PL_KeyUp(VK_MENU, 0);
	::PL_KeyUp(VK_DELETE, 0);
}

BOOL WINAPI PL_CopyFileClient(CString strIP, UINT uPort, char *chSrc, 
							  BOOL bSend, HWND hNotifyWnd)
{
	BOOL bRet = FALSE;
	CSocket sckClient;
	CFile file;
	do
	{
		if(bSend)
		{
			bRet = file.Open(chSrc, CFile::modeRead);
		}
		else
		{
			bRet = file.Open(chSrc, CFile::modeCreate | CFile::modeWrite);
		}
		if(!bRet)
		{
			break ;
		}
		bRet = sckClient.Create();
		if(!bRet)
		{
			break ;
		}
		bRet = sckClient.Connect(strIP, uPort);
		if(!bRet)
		{
			break ;
		}
		BYTE *chFileData = new BYTE[PL_SOCKET_MAXBYTES+1];
		char chData[10];
		int nSize = 0;
		if(bSend)
		{
			nSize = file.GetLength();
			int nRead = nSize;
			ZeroMemory(chData, 10);
			memcpy(chData, &nSize, sizeof(int));
			int nRet = sckClient.Send(chData, sizeof(int));
			if(nRet <= 0)
			{
				bRet = FALSE;
				break ;
			}
			while(nRead > 0)
			{
				int n1 = min(nRead, PL_SOCKET_MAXBYTES);
				int n2 = file.Read(chFileData, n1);
				nRead -= n2;
				nRet = sckClient.Send(chFileData, n2);
				if(nRet <= 0)
				{
					bRet = FALSE;
					break ;
				}
				if(hNotifyWnd != NULL)
				{
					int nProgress = (int)(((float)(nSize - nRead))*100.0f/((float)nSize));
					::PostMessage(hNotifyWnd, PL_PEEPER_NOTIFY_COPYFILE, 
						(WPARAM)nProgress, NULL);
				}
				bRet = TRUE;
			}
		}
		else
		{
			char chData[10];
			ZeroMemory(chData, 10);
			nSize = 0;
			int nRet = sckClient.Receive(chData, 10);//讀文件大小
			if(nRet <= 0)
			{
				bRet = FALSE;
				break ;
			}
			nSize = *((int*)(chData));
			if(nSize <= 0)
			{
				bRet = FALSE;
				break ;
			}
			BYTE *chFileData = new BYTE[PL_SOCKET_MAXBYTES+1];
			int nWrite = 0;
			while(nWrite < nSize)
			{
				nRet = sckClient.Receive(chFileData, PL_SOCKET_MAXBYTES);
				if(nRet <= 0)
				{
					bRet = FALSE;
					break ;
				}
				file.Write(chFileData, nRet);
				nWrite += nRet;
				if(hNotifyWnd != NULL)
				{
					int nProgress = (int)(((float)nWrite)*100.0f/((float)nSize));
					::PostMessage(hNotifyWnd, PL_PEEPER_NOTIFY_COPYFILE, 
						(WPARAM)nProgress, NULL);
				}
				bRet = TRUE;
			}
		}
		delete []chFileData;
		if(!bRet) // 送文件數據出錯.
		{
			break ;
		}
	}while(0);
	if(sckClient.m_hSocket !=	INVALID_SOCKET)
	{
		sckClient.Close();
	}
	if(file.m_hFile != CFile::hFileNull)
	{
		file.Close();
	}

	return bRet;
}

BOOL WINAPI PL_CopyFileServer(UINT uPort, char *chDes, BOOL bSend, HWND hNotifyWnd)
{
	BOOL bRet = FALSE;
	CFile file;
	CSocket sckServer;
	CSocket sckClient;
	do
	{
		if(!bSend)
		{
			bRet = file.Open(chDes, CFile::modeCreate | CFile::modeWrite);
		}
		else
		{
			bRet = file.Open(chDes, CFile::modeRead);
		}
		if(!bRet)
		{
			break ;
		}
		bRet = sckServer.Create(uPort);
		if(!bRet)
		{
			break ;
		}
		bRet = sckServer.Listen();
		if(!bRet)
		{
			break ;
		}
		bRet = sckServer.Accept(sckClient);
		if(!bRet)
		{
			break ;
		}
		char chData[10];
		BYTE *chFileData = new BYTE[PL_SOCKET_MAXBYTES+1];
		int nSize = 0;
		if(!bSend)
		{
			ZeroMemory(chData, 10);
			int nRet = sckClient.Receive(chData, 10);//讀文件大小

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
免费观看91视频大全| 蜜桃av噜噜一区| 日韩一级在线观看| 懂色av一区二区夜夜嗨| 亚洲第一综合色| 中文字幕国产一区| 制服视频三区第一页精品| 成人午夜av影视| 久久国产麻豆精品| 亚洲成av人影院| 亚洲女与黑人做爰| 久久久久久久久久久久久久久99| 欧美怡红院视频| 99r国产精品| 国产美女一区二区三区| 偷拍亚洲欧洲综合| 亚洲综合色噜噜狠狠| 国产亚洲1区2区3区| 日韩欧美第一区| 欧美人牲a欧美精品| 在线免费观看视频一区| av亚洲产国偷v产偷v自拍| 极品尤物av久久免费看| 免费在线观看精品| 视频一区欧美精品| 亚洲成人av一区二区三区| 中文字幕一区二区在线观看| 26uuu亚洲综合色欧美| 欧美一区二区黄| 5858s免费视频成人| 精品视频一区三区九区| 91蜜桃视频在线| 97se狠狠狠综合亚洲狠狠| 成人国产在线观看| 国产成人av自拍| 高清日韩电视剧大全免费| 国产美女主播视频一区| 国产成人精品亚洲777人妖| 精品在线观看免费| 狠狠久久亚洲欧美| 国产精品乡下勾搭老头1| 国产精品中文字幕欧美| 国产精品一区一区三区| 粉嫩久久99精品久久久久久夜| 国产老女人精品毛片久久| 韩国视频一区二区| 国产成人av影院| 成人黄色在线视频| 色狠狠一区二区三区香蕉| 欧美综合一区二区| 5858s免费视频成人| 精品成人一区二区三区四区| 2024国产精品| 中文字幕在线一区| 亚洲黄色小视频| 日本不卡一二三| 国产精品18久久久久久久网站| 国产精品一区在线观看你懂的| 99在线精品视频| 欧美亚洲国产bt| 日韩精品一区二区三区在线| 久久夜色精品国产噜噜av| 中文字幕五月欧美| 亚洲成人av中文| 久久av资源网| 99热99精品| 在线播放日韩导航| 国产欧美视频一区二区三区| 成人免费视频在线观看| 亚洲va欧美va国产va天堂影院| 美女被吸乳得到大胸91| hitomi一区二区三区精品| 欧美色综合影院| 久久午夜免费电影| 亚洲精品久久嫩草网站秘色| 午夜日韩在线电影| 国产a精品视频| 精品视频色一区| 国产片一区二区| 亚洲一区免费观看| 国产一区二区h| 91丝袜国产在线播放| 日韩欧美一级在线播放| 综合欧美一区二区三区| 美女视频网站黄色亚洲| 色综合天天狠狠| 久久你懂得1024| 亚洲午夜电影在线| 成人免费福利片| 欧美mv和日韩mv国产网站| 亚洲私人影院在线观看| 精品一区二区三区免费毛片爱 | 日韩精品一区二区三区swag| 欧美国产一区在线| 青青草原综合久久大伊人精品| av爱爱亚洲一区| 欧美大黄免费观看| 亚欧色一区w666天堂| k8久久久一区二区三区| 精品国产一区二区三区四区四| 亚洲狠狠丁香婷婷综合久久久| 国产福利一区二区三区视频| 日韩一卡二卡三卡国产欧美| 夜夜嗨av一区二区三区| 韩国三级中文字幕hd久久精品| 在线中文字幕一区二区| 国产精品国产三级国产aⅴ原创 | 久久精品免视看| 日韩二区在线观看| 色婷婷国产精品| 国产精品久久久久影院亚瑟| 韩国v欧美v亚洲v日本v| 欧美一区二区免费| 午夜不卡av在线| 欧美性生活大片视频| 亚洲人吸女人奶水| 成人黄色电影在线| 国产精品理伦片| 国产一区欧美二区| 精品美女在线观看| 日韩黄色小视频| 欧美四级电影在线观看| 亚洲人被黑人高潮完整版| 成人美女视频在线观看| 国产欧美日韩在线观看| 国产麻豆成人传媒免费观看| 日韩情涩欧美日韩视频| 美女视频网站黄色亚洲| 日韩精品中午字幕| 久久 天天综合| 精品国产1区二区| 激情综合五月婷婷| 久久久青草青青国产亚洲免观| 国产一区视频网站| 欧美激情中文字幕一区二区| 国产ts人妖一区二区| 国产精品人妖ts系列视频| 国产iv一区二区三区| 国产精品福利在线播放| 成人的网站免费观看| 成人免费小视频| 欧美性受极品xxxx喷水| 午夜精品123| 欧美一区二视频| 国产在线国偷精品免费看| 欧美极品另类videosde| 91丝袜高跟美女视频| 亚洲国产中文字幕在线视频综合| 欧美美女bb生活片| 久久99精品久久久久久| 国产偷国产偷亚洲高清人白洁| 成人永久看片免费视频天堂| 国产精品国产三级国产aⅴ入口| 一本色道久久加勒比精品| 亚洲成人av在线电影| 欧美成人r级一区二区三区| 国产盗摄视频一区二区三区| 亚洲欧美综合色| 欧美日韩一区二区在线观看| 日韩av在线免费观看不卡| 久久免费视频色| 色吊一区二区三区| 青青草精品视频| 国产精品久久久久久亚洲毛片| 在线观看视频一区二区欧美日韩| 男人的j进女人的j一区| 久久精品人人做人人爽人人| 色婷婷久久一区二区三区麻豆| 丝袜诱惑亚洲看片 | 亚洲激情成人在线| 欧美一级日韩一级| 国产福利一区在线| 亚洲午夜av在线| 国产亚洲精品aa午夜观看| 欧美婷婷六月丁香综合色| 黑人精品欧美一区二区蜜桃| 亚洲视频免费在线| 日韩欧美的一区| 日本乱人伦一区| 精品影视av免费| 伊人婷婷欧美激情| 精品国产一区二区三区久久影院| 色综合天天做天天爱| 美女网站在线免费欧美精品| 综合久久给合久久狠狠狠97色| 日韩一区二区三| 91视频在线看| 国产成人av自拍| 久久精品国产免费看久久精品| 亚洲天堂2016| 国产亚洲欧美一级| 欧美一区二区观看视频| 色呦呦日韩精品| 国产精品 欧美精品| 五月婷婷激情综合网| 亚洲丝袜精品丝袜在线| 久久日韩粉嫩一区二区三区| 欧美人与z0zoxxxx视频| 色综合久久综合网97色综合| 国产高清视频一区|