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

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

?? 8dlg.cpp

?? 文件夾統計程序 統計磁盤文件的信息 可以對想操作WINDOWS文件的朋友一些幫助
?? CPP
字號:
// 8Dlg.cpp : implementation file
//

#include "stdafx.h"
#include "8.h"
#include "8Dlg.h"

#include <math.h>

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CAboutDlg dialog used for App About

bool flag=true;
bool compare=true;
bool insert=true;

class CAboutDlg : public CDialog
{
public:
	CAboutDlg();
	
	// Dialog Data
	//{{AFX_DATA(CAboutDlg)
	enum { IDD = IDD_ABOUTBOX };
	//}}AFX_DATA
	
	// ClassWizard generated virtual function overrides
	//{{AFX_VIRTUAL(CAboutDlg)
protected:
	virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
	//}}AFX_VIRTUAL
	
	// Implementation
protected:
	//{{AFX_MSG(CAboutDlg)
	//}}AFX_MSG
	DECLARE_MESSAGE_MAP()
};

CAboutDlg::CAboutDlg() : CDialog(CAboutDlg::IDD)
{
	//{{AFX_DATA_INIT(CAboutDlg)
	//}}AFX_DATA_INIT
}

void CAboutDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CAboutDlg)
	//}}AFX_DATA_MAP
}

BEGIN_MESSAGE_MAP(CAboutDlg, CDialog)
//{{AFX_MSG_MAP(CAboutDlg)
// No message handlers
//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CMy8Dlg dialog

CMy8Dlg::CMy8Dlg(CWnd* pParent /*=NULL*/)
: CDialog(CMy8Dlg::IDD, pParent)
{
	//{{AFX_DATA_INIT(CMy8Dlg)
	//}}AFX_DATA_INIT
	// Note that LoadIcon does not require a subsequent DestroyIcon in Win32
	m_hIcon = AfxGetApp()->LoadIcon(IDI_ICON1);
	byte=0;
	total_amount=0;
    sPath="";
}

void CMy8Dlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CMy8Dlg)
	DDX_Control(pDX, IDC_STATIC_4, m_4);
	DDX_Control(pDX, IDC_STATIC_3, m_3);
	DDX_Control(pDX, IDC_STATIC_2, m_2);
	DDX_Control(pDX, IDC_STATIC_1, m_1);
	DDX_Control(pDX, IDC_TREE1, m_tree);
	DDX_Control(pDX, IDC_LIST2, m_caller_list);
	//}}AFX_DATA_MAP
}

BEGIN_MESSAGE_MAP(CMy8Dlg, CDialog)
//{{AFX_MSG_MAP(CMy8Dlg)
ON_WM_SYSCOMMAND()
ON_WM_PAINT()
ON_WM_QUERYDRAGICON()
ON_BN_CLICKED(IDC_ADD, OnAdd)
ON_NOTIFY(TVN_SELCHANGED, IDC_TREE1, OnSelchangedTree1)
ON_BN_CLICKED(IDC_CLEAR, OnClear)
ON_WM_ERASEBKGND()
	ON_NOTIFY(LVN_COLUMNCLICK, IDC_LIST2, OnColumnclickList2)
	ON_NOTIFY(NM_DBLCLK, IDC_LIST2, OnDblclkList2)
	ON_NOTIFY(TVN_ITEMEXPANDED, IDC_TREE1, OnItemexpandedTree1)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CMy8Dlg message handlers

int nSubItem;

BOOL CMy8Dlg::OnInitDialog()
{
	CDialog::OnInitDialog();
	
	// Add "About..." menu item to system menu.
	
	// IDM_ABOUTBOX must be in the system command range.
	ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);
	ASSERT(IDM_ABOUTBOX < 0xF000);
	
	CMenu* pSysMenu = GetSystemMenu(FALSE);
	if (pSysMenu != NULL)
	{
		CString strAboutMenu;
		strAboutMenu.LoadString(IDS_ABOUTBOX);
		if (!strAboutMenu.IsEmpty())
		{
			pSysMenu->AppendMenu(MF_SEPARATOR);
			pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);
		}
	}
	
	// Set the icon for this dialog.  The framework does this automatically
	//  when the application's main window is not a dialog
	SetIcon(m_hIcon, TRUE);			// Set big icon
	SetIcon(m_hIcon, TRUE);		// Set small icon
	
	// TODO: Add extra initialization here
	ModifyStyle(0,WS_MINIMIZEBOX);
	
	char *szColumn[]={"路徑","大小"};
	int widths[]={250,98,50};
	LV_COLUMN lvc;
	lvc.mask=LVCF_FMT|LVCF_WIDTH|LVCF_TEXT|LVCF_SUBITEM;
	lvc.fmt=LVCFMT_LEFT;
	for(int i=0;i<2;i++) 
	{//插入各列
		lvc.pszText=szColumn[i];
		lvc.cx=widths[i];
		lvc.iSubItem=i;
		m_caller_list.InsertColumn(i,&lvc);
	}
	m_caller_list.SetExtendedStyle(m_caller_list.GetExtendedStyle()|LVS_EX_GRIDLINES|
		LVS_EX_FULLROWSELECT); 
	
	DWORD dwStyle = GetWindowLong(m_tree.m_hWnd,GWL_STYLE);
	dwStyle |= TVS_HASBUTTONS | TVS_HASLINES | TVS_LINESATROOT;
	SetWindowLong(m_tree.m_hWnd,GWL_STYLE,dwStyle);
    m_hRoot = m_tree.InsertItem("我的電腦");
	GetLogicalDrives(m_hRoot);
	GetDriveDir(m_hRoot);
	//m_tree.Expand(m_hRoot,TVE_EXPAND);

	CFont *font=new CFont;
	//font->CreatePointFont(5,"宋體"); 
	font->CreateFont(16,0,0,0,FW_DONTCARE,FALSE,FALSE,0,ANSI_CHARSET,OUT_DEFAULT_PRECIS,
		CLIP_DEFAULT_PRECIS,DEFAULT_QUALITY,DEFAULT_PITCH|FF_SWISS,"楷體");

	m_1.SetFont(font);
	m_2.SetFont(font);
	m_3.SetFont(font);
	m_4.SetFont(font);


  m_myToolTip.Create(this);   
  m_myToolTip.Activate(TRUE);    
  m_myToolTip.AddTool(GetDlgItem(IDC_LIST2),"雙擊路徑詳細查看文件夾");   
  m_myToolTip.AddTool(GetDlgItem(IDC_TREE1),"選擇待統計文件夾");



	
	return TRUE;  // return TRUE  unless you set the focus to a control
	
}

void CMy8Dlg::OnSysCommand(UINT nID, LPARAM lParam)
{
	if ((nID & 0xFFF0) == IDM_ABOUTBOX)
	{
		CAboutDlg dlgAbout;
		dlgAbout.DoModal();
	}
	else
	{
		CDialog::OnSysCommand(nID, lParam);
	}
}

// If you add a minimize button to your dialog, you will need the code below
//  to draw the icon.  For MFC applications using the document/view model,
//  this is automatically done for you by the framework.

void CMy8Dlg::OnPaint() 
{
	if (IsIconic())
	{
		CPaintDC dc(this); // device context for painting
		
		SendMessage(WM_ICONERASEBKGND, (WPARAM) dc.GetSafeHdc(), 0);
		
		// Center icon in client rectangle
		int cxIcon = GetSystemMetrics(SM_CXICON);
		int cyIcon = GetSystemMetrics(SM_CYICON);
		CRect rect;
		GetClientRect(&rect);
		int x = (rect.Width() - cxIcon + 1) / 2;
		int y = (rect.Height() - cyIcon + 1) / 2;
		
		// Draw the icon
		dc.DrawIcon(x, y, m_hIcon);
	}
	else
	{
		CDialog::OnPaint();
	}
}

// The system calls this to obtain the cursor to display while the user drags
//  the minimized window.
HCURSOR CMy8Dlg::OnQueryDragIcon()
{
	return (HCURSOR) m_hIcon;
}

void CMy8Dlg::OnAdd() 
{
	// TODO: Add your control notification handler code here
	double none_file=0;
	double total_file=0;
    static int index=0;
	CString str_total_space;
	CString str_free_space;
	CString str_used_space;
	CFileFind  ff;
	BOOL  bFound; 

	if(sPath=="")
		return;
	bFound=ff.FindFile(sPath+"\\*.*"); 
	while(bFound)  
	{  
		bFound=ff.FindNextFile();  
		CString sFilePath=ff.GetFilePath();  
		
		if(ff.IsDirectory())  
		{  
			if(!ff.IsDots())  
			{
				m_caller_list.InsertItem(0,sFilePath);
				ListFolder(sFilePath);
				total_file+=byte;
	
				WeightCount(byte);
				
				byte=0;
			}
		}
		else
			none_file+=ff.GetLength();
	}  
	
	total_file+=none_file;
	m_caller_list.SetItemText(0,0,"非目錄文件");

	WeightCount(none_file);
				

	insert=false;

	GetDlgItem(IDC_EDIT1)->SetWindowText(sPath.Left(3));
	
	GetDiskFreeSpaceEx(sPath.Left(3),&uliUserFree,&uliTotal,&uliRealFree);
	
	str_free_space=WeightCount((double)(LONGLONG)uliUserFree.QuadPart);
	GetDlgItem(IDC_EDIT2)->SetWindowText(str_free_space);
	
	str_total_space=WeightCount((double)(LONGLONG)uliTotal.QuadPart);
	GetDlgItem(IDC_EDIT3)->SetWindowText(str_total_space);

	str_used_space=WeightCount((double)(LONGLONG)uliTotal.QuadPart-
		(double)(LONGLONG)uliUserFree.QuadPart);
	GetDlgItem(IDC_EDIT4)->SetWindowText(str_used_space);

	ff.Close();
}


void CMy8Dlg::ListFolder(CString sPath)
{
	CFileFind  ff;  
	BOOL  bFound;  
	bFound=ff.FindFile(sPath+"\\*.*");  
	while(bFound)  
	{  
		bFound=ff.FindNextFile();  
		CString sFilePath=ff.GetFilePath();  
		
		if(ff.IsDirectory())  
		{  
			if(!ff.IsDots())  
				ListFolder(sFilePath); 
		}  
		else  
		{  
			CString str;
			char temp[300];
			byte+=ff.GetLength();
			_gcvt(byte,10,temp);
			str=temp;

			WeightCount(byte);
			
			m_caller_list.UpdateWindow();
		}  
	}  
	ff.Close();
}



CString CMy8Dlg::WeightCount(double dtemp)
{
	CString str;
	char temp[300];
	_gcvt(dtemp,10,temp);
	str=temp;
	
	if(dtemp==0)
		str+="0B";
	else
		if(0<dtemp&&dtemp<=1024*0.8)
			str+="B";
		else
			if(1024*0.8<dtemp&&dtemp<=(1024*1024*0.8))
			{
				_gcvt((int((dtemp/1024*100.0+0.05))/100.0),10,temp);
				str=temp;
				str+="KB";
			}
			else
				if((1024*1024*0.8)<dtemp&&dtemp<=(1024*1024*1024*0.8))
				{
					_gcvt((int((dtemp/(1024*1024)*100.0+0.05))/100.0),10,temp);
					str=temp;
					str+="MB";
				}
				else
				{
					_gcvt((int((dtemp/(1024*1024*1024)*100.0+0.05))/100.0),10,temp);
					str=temp;
					str+="GB";
				}	

	if(insert)
		m_caller_list.SetItemText(0,1,str);

	return str;
}

void CMy8Dlg::GetLogicalDrives(HTREEITEM hParent)
{
	int szAllDriveStrings = GetLogicalDriveStrings(0,NULL);
	char *pDriveStrings = new char[szAllDriveStrings];//MSDN
	GetLogicalDriveStrings(szAllDriveStrings,pDriveStrings);//MSDN
	int szDriveString = strlen(pDriveStrings);
	while(szDriveString > 0)
	{
		m_tree.InsertItem(pDriveStrings,hParent);
		pDriveStrings += szDriveString + 1;
		szDriveString = strlen(pDriveStrings);
	}
}

void CMy8Dlg::GetDriveDir(HTREEITEM hParent)
{	
	HTREEITEM hChild = m_tree.GetChildItem(hParent);
	while(hChild)
	{
        CString strText = m_tree.GetItemText(hChild);
		if(strText.Right(1) != "\\")
			strText += _T("\\");
		strText += "*.*";
		CFileFind file;
		BOOL bContinue = file.FindFile(strText);
		while(bContinue)
		{
            bContinue = file.FindNextFile();
			if(file.IsDirectory() && !file.IsDots())
				m_tree.InsertItem(file.GetFileName(),hChild);
		}
		GetDriveDir(hChild);
		hChild = m_tree.GetNextItem(hChild,TVGN_NEXT);
	}
}

void CMy8Dlg::OnSelchangedTree1(NMHDR* pNMHDR, LRESULT* pResult) 
{
	NM_TREEVIEW* pNMTreeView = (NM_TREEVIEW*)pNMHDR;
	// TODO: Add your control notification handler code here
	TVITEM item = pNMTreeView->itemNew;
	if(item.hItem == m_hRoot)
		return;
	else
		sPath= GetFullPath(item.hItem);
}

CString CMy8Dlg::GetFullPath(HTREEITEM hCurrent)
{
	CString strTemp;
	CString strReturn = "";
	while(hCurrent != m_hRoot)
	{
		strTemp = m_tree.GetItemText(hCurrent);
		if(strTemp.Right(1) != "\\")
			strTemp += "\\";
		strReturn = strTemp  + strReturn;
		hCurrent = m_tree.GetParentItem(hCurrent);
	}
	return strReturn;
}

void CMy8Dlg::OnClear() 
{
	// TODO: Add your control notification handler code here
	byte=0;
	total_amount=0;
    sPath="";
	m_caller_list.DeleteAllItems();
	insert=true;

	
	GetDlgItem(IDC_EDIT1)->SetWindowText("");

	GetDlgItem(IDC_EDIT2)->SetWindowText("");

	GetDlgItem(IDC_EDIT3)->SetWindowText("");

	GetDlgItem(IDC_EDIT4)->SetWindowText("");
	
}

BOOL CMy8Dlg::OnEraseBkgnd(CDC* pDC) 
{
	// TODO: Add your message handler code here and/or call default
	CRect rect;
    GetClientRect(&rect);//得到窗體的大小
    CDC dcMem;
    dcMem.CreateCompatibleDC(pDC);
    CBitmap bmpBackground;
    bmpBackground.LoadBitmap(IDB_BITMAP1);//加載背景圖片
    BITMAP bitMap;
    bmpBackground.GetBitmap(&bitMap);
    CBitmap *pbmpOld=dcMem.SelectObject(&bmpBackground);
    pDC->StretchBlt(0,0,rect.Width(),rect.Height(),&dcMem,0,0,
		bitMap.bmWidth, bitMap.bmHeight,SRCCOPY);//該函數給對話框貼上位圖
	
	return true;
	
	//return CDialog::OnEraseBkgnd(pDC);
}

int MyMax(double i,double j)
{
	if(i<j)
		return -1;
	else
		if(i==j)
			return 0;
		else
			return 1;
}


int MyMin(double i,double j)
{
	if(i>j)
		return -1;
	else
		if(i==j)
			return 0;
		else
			return 1;
}

void ResetStr(CString str,double &temp)
{
	int index=0;
	if(str.Right(2)=="KB")
		index=0;
	else 
		if(str.Right(2)=="MB")
			index=1;
		else
			if(str.Right(2)=="GB")
				index=2;
			else
				index=-1;
    temp=atof(str.Left(str.GetLength()-2));
	temp*=pow(1024,index);
	
}

static int CALLBACK ListCompare(LPARAM lParam1, LPARAM lParam2, LPARAM lParamSort)
{
    double temp1;
	double temp2;

	CListCtrl* pListCtrl=(CListCtrl*)lParamSort;   

    CString strItem1=pListCtrl->GetItemText(lParam1,1);   
    CString strItem2=pListCtrl->GetItemText(lParam2,1);  

    ResetStr(strItem1,temp1);
	ResetStr(strItem2,temp2);

	if(compare)
		return  MyMax(temp1,temp2);  
	else
		return  MyMin(temp1,temp2); 
}

void CMy8Dlg::OnColumnclickList2(NMHDR* pNMHDR, LRESULT* pResult) 
{
	NM_LISTVIEW* pNMListView = (NM_LISTVIEW*)pNMHDR;
	// TODO: Add your control notification handler code here
	int  i=m_caller_list.GetItemCount();   
    while(i--)
		m_caller_list.SetItemData(i,i);     
	
	//LPNMITEMACTIVATE temp=(LPNMITEMACTIVATE)pNMHDR; /////////??????

	if(!flag)
	{
		SetHeaderBitmap(1,IDB_BITMAP3,NULL);
		flag=true;
		compare=false;
		m_caller_list.SortItems(ListCompare,(DWORD)&m_caller_list);
	}
	else
	{
		SetHeaderBitmap(1,IDB_BITMAP2,NULL);
		flag=false;
		compare=true;
		m_caller_list.SortItems(ListCompare,(DWORD)&m_caller_list);
	}

	*pResult = 0;
}

void CMy8Dlg::SetHeaderBitmap(int nCol, int nBitmap, DWORD dwRemove)
{
	CHeaderCtrl*  pHeader=(CHeaderCtrl*)m_caller_list.GetDlgItem(0);   
	if(pHeader==NULL)  
		return   ;   
	HD_ITEM  hdi;   
	hdi.mask=HDI_FORMAT;   
	pHeader->GetItem(nCol,&hdi);   
	hdi.mask=HDI_BITMAP|HDI_FORMAT;   
	hdi.fmt|=HDF_BITMAP;   
	hdi.hbm =(HBITMAP)::LoadImage(AfxGetInstanceHandle(),MAKEINTRESOURCE(nBitmap),
		IMAGE_BITMAP,0,0,LR_LOADMAP3DCOLORS);  
	if(dwRemove)   
		hdi.fmt&= ~dwRemove;   
	
	pHeader->SetItem(nCol,&hdi);   
}

void CMy8Dlg::OnDblclkList2(NMHDR* pNMHDR, LRESULT* pResult) 
{
	// TODO: Add your control notification handler code here
	CString path="";
	int row=0;
	LPNMITEMACTIVATE temp=(LPNMITEMACTIVATE)pNMHDR;  
	row=temp->iItem;
    
	path=m_caller_list.GetItemText(row,0);
	if(path!="")
		ShellExecute(m_hWnd, NULL, path, NULL, NULL, SW_SHOWNORMAL);
	
	*pResult = 0;
}

BOOL CMy8Dlg::PreTranslateMessage(MSG* pMsg) 
{
	// TODO: Add your specialized code here and/or call the base class
	m_myToolTip.RelayEvent(pMsg);

	return CDialog::PreTranslateMessage(pMsg);
}

void CMy8Dlg::OnItemexpandedTree1(NMHDR* pNMHDR, LRESULT* pResult) 
{
	NM_TREEVIEW* pNMTreeView = (NM_TREEVIEW*)pNMHDR;
	// TODO: Add your control notification handler code here
	TVITEM item = pNMTreeView->itemNew;
	if(item.hItem == m_hRoot)
		return;
    HTREEITEM hChild = m_tree.GetChildItem(item.hItem);
	while(hChild)
	{
		AddSubDir(hChild);
		hChild = m_tree.GetNextItem(hChild,TVGN_NEXT);
	}
	
	*pResult = 0;
}

void CMy8Dlg::AddSubDir(HTREEITEM hParent)
{
	CString strPath = GetFullPath(hParent);
	if(strPath.Right(1) != "\\")
		strPath += "\\";
	strPath += "*.*";
	CFileFind file;
	BOOL bContinue = file.FindFile(strPath);
	while(bContinue)
	{
		bContinue = file.FindNextFile();
		if(file.IsDirectory() && !file.IsDots())
		    m_tree.InsertItem(file.GetFileName(),hParent);
	}
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91麻豆蜜桃一区二区三区| 风间由美中文字幕在线看视频国产欧美| 亚洲电影中文字幕在线观看| 亚洲va欧美va天堂v国产综合| 欧美成人午夜电影| 亚洲精品视频一区二区| 九一九一国产精品| 色婷婷国产精品综合在线观看| 欧美一区二区三区在线看| 国产精品国产精品国产专区不蜜| 亚洲国产乱码最新视频| 日本不卡在线视频| av一区二区不卡| 精品国产91久久久久久久妲己 | 国产成人免费视| 欧美撒尿777hd撒尿| 国产欧美一区二区精品性色超碰 | 日本精品视频一区二区| 国产丝袜欧美中文另类| 亚洲午夜国产一区99re久久| 国产曰批免费观看久久久| 欧美日韩免费观看一区二区三区| 久久精品男人的天堂| 天堂成人免费av电影一区| 波多野结衣亚洲一区| 精品日韩一区二区三区| 日本色综合中文字幕| 在线视频一区二区免费| 亚洲视频一区在线| 国产福利精品导航| 欧美一区二区久久| 日本不卡高清视频| 色综合一个色综合亚洲| 亚洲女性喷水在线观看一区| 成人高清视频在线| 国产精品国产自产拍在线| 成人精品视频一区二区三区尤物| 精品粉嫩超白一线天av| 精品一区二区三区免费视频| 国产午夜亚洲精品不卡| 国产高清亚洲一区| 久久免费精品国产久精品久久久久| 国模娜娜一区二区三区| 久久综合色之久久综合| 国产一区二区三区四| 欧美国产在线观看| 成人免费电影视频| 亚洲视频在线一区二区| 欧美久久久久久久久| 午夜欧美在线一二页| 欧美日韩精品一区二区在线播放| 一区二区三区在线观看国产| 欧美亚洲国产一区在线观看网站| 亚洲精品自拍动漫在线| 色婷婷国产精品综合在线观看| 伊人色综合久久天天人手人婷| 91国偷自产一区二区三区观看 | www.欧美日韩国产在线| 欧美日本国产一区| 九色综合狠狠综合久久| 久久人人爽爽爽人久久久| 色婷婷综合久色| 亚洲成在人线在线播放| 91精品国产品国语在线不卡| 成人永久免费视频| 一区av在线播放| 日韩欧美精品在线| 91亚洲精品久久久蜜桃| 一区二区三区四区激情| 91.成人天堂一区| 激情久久五月天| 国产精品久久久久永久免费观看| 黄一区二区三区| 国产精品久久国产精麻豆99网站| 91国产免费看| 久久97超碰色| 中文字幕亚洲欧美在线不卡| 欧美日本国产一区| 不卡av电影在线播放| 亚洲一区二区在线播放相泽| 欧美色网站导航| 国产成人av电影在线播放| 亚洲综合色视频| 国产午夜精品久久久久久久 | 久久免费看少妇高潮| 色久综合一二码| 国产一区二区精品久久99| 亚洲狠狠爱一区二区三区| 久久久精品一品道一区| 日本韩国欧美三级| 国产一区二区三区精品视频| 亚洲综合久久av| 国产视频一区在线播放| 欧美日韩成人综合| av在线不卡电影| 一区二区三区在线影院| 国产清纯美女被跳蛋高潮一区二区久久w| 在线观看日韩电影| 国产精品99久| 开心九九激情九九欧美日韩精美视频电影| 国产精品女上位| 精品91自产拍在线观看一区| 欧美欧美欧美欧美| 99久久伊人精品| 国产精品亚洲成人| 另类小说图片综合网| 国产精品高潮久久久久无| 欧美一级久久久久久久大片| 欧美艳星brazzers| www.视频一区| 国产精品18久久久久久久久久久久| 亚洲一区二区精品3399| 亚洲欧美偷拍另类a∨色屁股| 成人免费毛片高清视频| 蜜桃av一区二区| 日韩国产成人精品| 蜜乳av一区二区| 日本在线不卡视频| 轻轻草成人在线| 日本不卡免费在线视频| 蜜桃av一区二区| 国产在线不卡一区| 国产凹凸在线观看一区二区| 成人久久18免费网站麻豆| 99在线精品视频| 欧美性大战久久久久久久| 3d成人动漫网站| 日韩精品一区二区三区swag| 欧美r级电影在线观看| 国产亚洲欧美一区在线观看| 国产喂奶挤奶一区二区三区| 亚洲色图19p| 日日噜噜夜夜狠狠视频欧美人| 日本视频一区二区| 成人一区二区在线观看| 99re热视频精品| 欧美性猛交xxxx黑人交| 欧美电影免费观看高清完整版在| 久久久蜜桃精品| 亚洲色图视频网| 麻豆精品蜜桃视频网站| 国产99久久久国产精品免费看| 一本久道中文字幕精品亚洲嫩| 欧美日韩一区二区在线观看视频 | 欧美第一区第二区| 国产视频一区二区在线观看| 亚洲激情第一区| 久久99精品久久只有精品| 国产成人精品影视| 欧美日韩视频在线观看一区二区三区| 欧美成人video| 亚洲黄色免费电影| 国产一区二区伦理片| 91福利视频久久久久| 精品美女被调教视频大全网站| 国产精品高清亚洲| 久久精品国产网站| 91黄视频在线| 国产欧美一区二区精品忘忧草| 亚洲一区在线视频| 国产99久久久久| 91精品黄色片免费大全| 国产精品嫩草久久久久| 美女一区二区三区在线观看| 不卡视频在线观看| 日韩欧美一二区| 亚洲三级在线免费观看| 国产一区二区三区| 欧美一级搡bbbb搡bbbb| 亚洲免费三区一区二区| 国产精品一区二区黑丝| 日韩三级视频中文字幕| 亚洲精品菠萝久久久久久久| 国产乱码精品一区二区三 | 久久精品国产网站| 欧美日韩欧美一区二区| 国产精品国产三级国产有无不卡| 男人的天堂久久精品| 在线不卡免费欧美| 一区二区三区电影在线播| 成人v精品蜜桃久久一区| 久久亚洲免费视频| 美女看a上一区| 91精品国产欧美一区二区| 亚洲国产综合在线| 欧美亚一区二区| 亚洲一区自拍偷拍| 日本精品一级二级| 亚洲日本在线天堂| 91亚洲国产成人精品一区二三| 中文字幕av在线一区二区三区| 极品美女销魂一区二区三区| 欧美嫩在线观看| 日本va欧美va瓶| 日韩一区二区三区视频在线| 日产国产高清一区二区三区| 日韩一区二区免费在线观看| 青青草国产精品97视觉盛宴 | 亚洲精品视频免费看| 高清国产午夜精品久久久久久|