青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

posts - 13,comments - 0,trackbacks - 0

在Windows Mobile 開發(fā)過程中,很多時候需要讀取短信收件夾及發(fā)件夾里的數(shù)據(jù),當然C#是很難實現(xiàn)這個的,因為微軟沒有對底層API進行封裝,此時,C++又出來了,通過C++封裝一個DLL,然后在C#中調(diào)用即可(沒辦法,C++)總是那么強。

具體的C++封裝我這里不詳細介紹,其實也不是我封裝的,是別人寫的,這里引用過來。

using System;
using System.Collections.Generic;
using System.Text;
using System.Runtime.InteropServices;

??? public class NetMAPI:IDisposable???????
??? {
??????? protected IntPtr pMAPI;
??????? public NetMAPI()
??????? {
??????????? pMAPI = IntPtr.Zero;
??????? }
??????? ~NetMAPI()
??????? {
??????????? Dispose(false);
??????? }
??????? public void Dispose()
??????? {
??????????? Dispose(true);
??????????? GC.SuppressFinalize(this);
??????? }
??????? protected virtual void Dispose(bool disposing)
??????? {
??????????? Logout();
??????? }
??????? public IntPtr MAPI
??????? {
??????????? get { return pMAPI; }
??????? }
??????? public bool Login()
??????? {
??????????? if (pMAPI == IntPtr.Zero) pMAPI = MAPILogin();
??????????? return (pMAPI != IntPtr.Zero);
??????? }
??????? public void Logout()
??????? {
??????????? if (pMAPI != IntPtr.Zero)
??????????? {
??????????????? MAPILogout(pMAPI);
??????????????? pMAPI = IntPtr.Zero;
??????????? }
??????? }
??????? public bool OpenMessageStore()
??????? {
??????????? return MAPIOpenMessageStore(pMAPI);
??????? }
??????? public bool GetNextMessage(out SmsMessage message, bool bUnreadOnly)
??????? {
??????????? IntPtr pMessage;
??????????? message = null;
??????????? if (MAPIGetNextMessage(pMAPI, out pMessage, bUnreadOnly))
??????????? {
??????????????? message = new SmsMessage(pMessage);
??????????? }
??????????? return (message != null);
??????? }
??????? public bool GetContents()
??????? {
??????????? return GetContents(IntPtr.Zero);
??????? }
??????? public bool OpenInbox()
??????? {
??????????? return MAPIOpenInbox(pMAPI);
??????? }
??????? /// <summary>
??????? /// Opens the Outbox folder
??????? /// </summary>
??????? /// <returns>true on success</returns>
??????? public bool OpenOutbox()
??????? {
??????????? return MAPIOpenOutbox(pMAPI);
??????? }

??????? /// <summary>
??????? /// Opens the Sent Items folder
??????? /// </summary>
??????? /// <returns>true on success</returns>
??????? public bool OpenSentItems()
??????? {
??????????? return MAPIOpenSentItems(pMAPI);
??????? }

??????? /// <summary>
??????? /// Opens the Deleted Items folder
??????? /// </summary>
??????? /// <returns>true on success</returns>
??????? public bool OpenDeletedItems()
??????? {
??????????? return MAPIOpenDeletedItems(pMAPI);
??????? }
??????? /// <summary>
??????? /// Opens the Drafts folder
??????? /// </summary>
??????? /// <returns>true on success</returns>
??????? public bool OpenDrafts()
??????? {
??????????? return MAPIOpenDrafts(pMAPI);
??????? }
??????? /// <summary>
??????? /// Opens the contents of a specific folder
??????? /// </summary>
??????? /// <param name="pFolder"></param>
??????? /// <returns>true on success</returns>
??????? public bool GetContents(IntPtr pFolder)
??????? {
??????????? return MAPIGetContents(pMAPI, pFolder);
??????? }
??????? public int GetRowCounts()
??????? {
??????????? return MAPIGetRowCount(pMAPI);
??????? }
??????? [DllImport("ReadSMS.dll")]
??????? public static extern bool MAPIInit();

??????? [DllImport("ReadSMS.dll", EntryPoint = "MAPITerm")]
??????? public static extern void Term();

??????? // Profiles, Message Store

??????? [DllImport("ReadSMS.dll")]
??????? protected static extern IntPtr MAPILogin();

??????? [DllImport("ReadSMS.dll")]
??????? protected static extern void MAPILogout(IntPtr pMAPI);

??????? [DllImport("ReadSMS.dll")]
??????? protected static extern bool MAPIOpenMessageStore(IntPtr pMAPI);

??????? [DllImport("ReadSMS.dll")]
??????? protected static extern bool MAPIGetContents(IntPtr pMAPI, IntPtr pFolder);

??????? [DllImport("ReadSMS.dll")]
??????? protected static extern int MAPIGetRowCount(IntPtr pMAPI);

??????? [DllImport("ReadSMS.dll")]
??????? protected static extern bool MAPIOpenInbox(IntPtr pMAPI);

??????? [DllImport("ReadSMS.dll")]
??????? protected static extern bool MAPIOpenOutbox(IntPtr pMAPI);

??????? [DllImport("ReadSMS.dll")]
??????? protected static extern bool MAPIOpenSentItems(IntPtr pMAPI);

??????? [DllImport("ReadSMS.dll")]
??????? protected static extern bool MAPIOpenDeletedItems(IntPtr pMAPI);

??????? [DllImport("ReadSMS.dll")]
??????? protected static extern bool MAPIOpenDrafts(IntPtr pMAPI);
??????? [DllImport("ReadSMS.dll")]
??????? protected static extern bool MAPIGetNextMessage(IntPtr pMAPI, out IntPtr pMessage, bool bUnreadOnly);
??? }
接下來封裝一個短信對象


??? public class SmsMessage:IDisposable
??? {
??????? public enum RecipientType { UNKNOWN, TO, CC, BCC };
??????? protected IntPtr pMessage;

??????? public SmsMessage()
??????? {
??????????? pMessage = IntPtr.Zero;
??????? }

??????? public SmsMessage(IntPtr pMessage)
??????? {
??????????? this.pMessage = pMessage;
??????? }

??????? ~SmsMessage()
??????? {
??????????? Dispose(false);
??????? }

??????? public void Dispose()
??????? {
??????????? Dispose(true);
??????????? GC.SuppressFinalize(this);
??????? }

??????? protected virtual void Dispose(bool disposing)
??????? {
??????????? if (pMessage != IntPtr.Zero)
??????????? {
??????????????? MessageClose(pMessage);
??????????????? pMessage = IntPtr.Zero;
??????????? }
??????? }

??????? public IntPtr MessagePointer { get { return pMessage; } }
??????? public void GetSenderName(StringBuilder strSenderName)
??????? {
??????????? MessageGetSenderName(pMessage, strSenderName, strSenderName.Capacity);
??????? }
??????? public void GetSenderEmail(StringBuilder strSenderEmail)
??????? {
??????????? MessageGetSenderEmail(pMessage, strSenderEmail, strSenderEmail.Capacity);
??????? }
??????? public void GetSubject(StringBuilder strSubject)
??????? {
??????????? MessageGetSubject(pMessage, strSubject, strSubject.Capacity);
??????? }
??????? /// <summary>
??????? /// Gets the received time
??????? /// </summary>
??????? /// <param name="dt">DateTime received</param>
??????? /// <returns>true on success</returns>
??????? public bool GetReceivedTime(out DateTime dt)
??????? {
??????????? int nYear, nMonth, nDay, nHour, nMinute, nSecond;
??????????? bool bResult = MessageGetReceivedTime(pMessage, out nYear, out nMonth, out nDay, out nHour, out nMinute, out nSecond);
??????????? dt = new DateTime(nYear, nMonth, nDay, nHour, nMinute, nSecond);
??????????? return bResult;
??????? }

??????? /// <summary>
??????? /// Gets the received time using the default format (MM/dd/yyyy hh:mm:ss tt)
??????? /// </summary>
??????? /// <param name="strReceivedTime">buffer to receive</param>
??????? /// <returns>true on success</returns>
??????? public bool GetReceivedTime(StringBuilder strReceivedTime)
??????? {
??????????? return MessageGetReceivedTimeString(pMessage, strReceivedTime, strReceivedTime.Capacity, "");
??????? }

??????? /// <summary>
??????? /// Gets the received time
??????? /// </summary>
??????? /// <param name="strReceivedTime">buffer to receive</param>
??????? /// <param name="strFormat">format string for date (empty for default)</param>
??????? /// <returns>true on success</returns>
??????? public bool GetReceivedTime(StringBuilder strReceivedTime, string strFormat)
??????? {
??????????? return MessageGetReceivedTimeString(pMessage, strReceivedTime, strReceivedTime.Capacity, strFormat);
??????? }

??????? /// <summary>
??????? /// Gets the submit time
??????? /// </summary>
??????? /// <param name="dt">DateTime submitted</param>
??????? /// <returns>true on success</returns>
??????? public bool GetSubmitTime(out DateTime dt)
??????? {
??????????? int nYear, nMonth, nDay, nHour, nMinute, nSecond;
??????????? bool bResult = MessageGetSubmitTime(pMessage, out nYear, out nMonth, out nDay, out nHour, out nMinute, out nSecond);
??????????? dt = new DateTime(nYear, nMonth, nDay, nHour, nMinute, nSecond);
??????????? return bResult;
??????? }

??????? /// <summary>
??????? /// Gets the submit time using the default format (MM/dd/yyyy hh:mm:ss tt)
??????? /// </summary>
??????? /// <param name="strSubmitTime">buffer to receive</param>
??????? /// <returns>true on success</returns>
??????? public bool GetSubmitTime(StringBuilder strSubmitTime)
??????? {
??????????? return MessageGetSubmitTimeString(pMessage, strSubmitTime, strSubmitTime.Capacity, "");
??????? }

??????? /// <summary>
??????? /// Gets the submit time
??????? /// </summary>
??????? /// <param name="strSubmitTime">buffer to receive</param>
??????? /// <param name="strFormat">format string for date (empty for default)</param>
??????? /// <returns>true on success</returns>
??????? public bool GetSubmitTime(StringBuilder strSubmitTime, string strFormat)
??????? {
??????????? return MessageGetSubmitTimeString(pMessage, strSubmitTime, strSubmitTime.Capacity, strFormat);
??????? }
??????? /// <summary>
??????? /// Get the recipients table, call this before calling GetNextRecipient
??????? /// </summary>
??????? /// <returns>true on success</returns>
??????? public bool GetRecipients()
??????? {
??????????? return MessageGetRecipients(pMessage);
??????? }

??????? /// <summary>
??????? /// Gets the next recipient
??????? /// </summary>
??????? /// <param name="strName">Name of recipient</param>
??????? /// <param name="strEmail">Email of recipient</param>
??????? /// <param name="nType">RecipientType (TO, CC, BCC)</param>
??????? /// <returns>true on success</returns>
??????? public bool GetNextRecipient(StringBuilder strName, StringBuilder strEmail, out RecipientType nType)
??????? {
??????????? int nRecipientType;
??????????? nType = RecipientType.UNKNOWN;
??????????? if (MessageGetNextRecipient(pMessage, strName, strName.Capacity, strEmail, strEmail.Capacity, out nRecipientType))
??????????? {
??????????????? nType = (RecipientType)nRecipientType;
??????????????? return true;
??????????? }
??????????? return false;
??????? }
??????? [DllImport("ReadSMS.dll")]
??????? protected static extern void MessageClose(IntPtr pMessage);
??????? [DllImport("ReadSMS.dll")]
??????? protected static extern void MessageGetSenderName(IntPtr pMessage, StringBuilder strSenderName, int nMaxLength);

??????? [DllImport("ReadSMS.dll")]
??????? protected static extern void MessageGetSenderEmail(IntPtr pMessage, StringBuilder strSenderEmail, int nMaxLength);

??????? [DllImport("ReadSMS.dll")]
??????? protected static extern void MessageGetSubject(IntPtr pMessage, StringBuilder strSubject, int nMaxLength);

??????? [DllImport("ReadSMS.dll")]
??????? protected static extern bool MessageGetReceivedTime(IntPtr pMessage, out int nYear, out int nMonth, out int nDay, out int nHour, out int nMinute, out int nSecond);

??????? [DllImport("ReadSMS.dll")]
??????? protected static extern bool MessageGetReceivedTimeString(IntPtr pMessage, StringBuilder strReceivedTime, int nMaxLength, string szFormat);

??????? [DllImport("ReadSMS.dll")]
??????? protected static extern bool MessageGetSubmitTime(IntPtr pMessage, out int nYear, out int nMonth, out int nDay, out int nHour, out int nMinute, out int nSecond);

??????? [DllImport("ReadSMS.dll")]
??????? protected static extern bool MessageGetSubmitTimeString(IntPtr pMessage, StringBuilder strSubmitTime, int nMaxLength, string szFormat);

??????? [DllImport("ReadSMS.dll")]
??????? protected static extern bool MessageGetRecipients(IntPtr pMessage);

??????? [DllImport("ReadSMS.dll")]
??????? protected static extern bool MessageGetNextRecipient(IntPtr pMessage, StringBuilder strName, int nMaxLenName, StringBuilder strEmail, int nMaxLenEmail, out int nType);

??? }

獲取收件夾數(shù)據(jù)

??????? /// <summary>
??????? /// 讀取收件夾用戶數(shù)據(jù)
??????? /// </summary>
??????? /// <param name="sender"></param>
??????? /// <param name="e"></param>
??????? private void buttonEX1_Click(object sender, EventArgs e)
??????? {
??????????? try
??????????? {
??????????????? Cursor.Current = Cursors.WaitCursor;
??????????????? this.listViewEX1.Columns[0].Text = "發(fā)件人";
??????????????? if (!NetMAPI.MAPIInit())
??????????????? {
??????????????????? MessageBox.Show("打開發(fā)件夾失敗", "系統(tǒng)提示", MessageBoxButtons.OK, MessageBoxIcon.Asterisk, MessageBoxDefaultButton.Button1);
??????????????? }
??????????????? else
??????????????? {
??????????????????? if (this.rDs == null)
??????????????????? {
??????????????????????? rDs = new DataSet();
??????????????????????? DataTable dt = new DataTable();
??????????????????????? dt.Columns.Add("Num");
??????????????????????? dt.Columns.Add("Content");
??????????????????????? rDs.Tables.Add(dt);
??????????????????????? NetMAPI tmapi = new NetMAPI();
??????????????????????? if (tmapi.Login())
??????????????????????? {
??????????????????????????? if ((tmapi.OpenMessageStore() && tmapi.OpenInbox()) && tmapi.GetContents())
??????????????????????????? {
??????????????????????????????? SmsMessage message;
??????????????????????????????? StringBuilder strSenderName = new StringBuilder(1024);
??????????????????????????????? int num = 0;


??????????????????????????????? while (tmapi.GetNextMessage(out message, false))
??????????????????????????????? {
??????????????????????????????????? DataRow dr = rDs.Tables[0].NewRow();

??????????????????????????????????? num++;
??????????????????????????????????? CF.Forms.ListViewItem it = new CF.Forms.ListViewItem();
??????????????????????????????????? message.GetSenderName(strSenderName);
??????????????????????????????????? dr["Num"] = strSenderName.ToString().Replace("+86", "");

??????????????????????????????????? message.GetSubject(strSenderName);
??????????????????????????????????? dr["Content"] = strSenderName.ToString();

??????????????????????????????????? message.Dispose();
??????????????????????????????????? this.rDs.Tables[0].Rows.Add(dr);
??????????????????????????????????? if (num > 0xed)
??????????????????????????????????? {
??????????????????????????????????????? break;
??????????????????????????????????? }
??????????????????????????????? }
??????????????????????????? }
??????????????????????????? tmapi.Logout();
??????????????????????? }
??????????????????? }
??????????????????? NetMAPI.Term();
??????????????????
??????????????? }
??????????????? //綁定數(shù)據(jù)集合
??????????????? this.listViewEX1.ListDataSet = rDs;
??????????????? this.listViewNavigateEX1.RowsTotalCount = rDs.Tables[0].Rows.Count; ;
??????????????? this.listViewNavigateEX1.ShowPageIndex();
??????????? }
??????????? catch (Exception ep)
??????????? {
#if DEBUG
??????????????? MessageBox.Show(ep.Message);
#endif
??????????????? MessageBox.Show("讀取收件夾短信數(shù)據(jù)時發(fā)生錯誤!", "系統(tǒng)提示", MessageBoxButtons.OK, MessageBoxIcon.Asterisk, MessageBoxDefaultButton.Button1);
??????????? }
??????????? finally
??????????? {
??????????????? Cursor.Current = Cursors.Default;
??????????? }
??????? }

獲取已發(fā)送短信數(shù)據(jù)

private void buttonEX2_Click(object sender, EventArgs e)
??????? {
??????????? try
??????????? {
??????????????? Cursor.Current = Cursors.WaitCursor;
??????????????? this.listViewEX1.Columns[0].Text = "收件人";

??????????????? if (this.sDs == null)
??????????????? {
??????????????????? sDs = new DataSet();
??????????????????? DataTable dt = new DataTable();
??????????????????? dt.Columns.Add("Num");
??????????????????? dt.Columns.Add("Content");
??????????????????? sDs.Tables.Add(dt);
??????????????????? if (NetMAPI.MAPIInit())
??????????????????? {
??????????????????????? NetMAPI tmapi = new NetMAPI();
??????????????????????? if (tmapi.Login())
??????????????????????? {
??????????????????????????? if ((tmapi.OpenMessageStore() && tmapi.OpenSentItems()) && tmapi.GetContents())
??????????????????????????? {
??????????????????????????????? SmsMessage message;
??????????????????????????????? StringBuilder strSubject = new StringBuilder(1024);
??????????????????????????????? StringBuilder strName = new StringBuilder(0x19);
??????????????????????????????? StringBuilder strEmail = new StringBuilder(0x19);
??????????????????????????????? int num = 0;
??????????????????????????????? while (tmapi.GetNextMessage(out message, false))
??????????????????????????????? {
??????????????????????????????????? DataRow dr = sDs.Tables[0].NewRow();
??????????????????????????????????? SmsMessage.RecipientType type;
??????????????????????????????????? num++;
??????????????????????????????????? CF.Forms.ListViewItem it = new CF.Forms.ListViewItem();
??????????????????????????????????? message.GetRecipients();
??????????????????????????????????? message.GetNextRecipient(strName, strEmail, out type);
???????????????????????????????????? dr["Num"] = strName.ToString().Replace("+86", "");
??????????????????????????????????? message.GetSubject(strSubject);
??????????????????????????????????? dr["Content"] = strSubject.ToString();
??????????????????????????????????? message.Dispose();
??????????????????????????????????? this.sDs.Tables[0].Rows.Add(dr);
??????????????????????????????? }
??????????????????????????? }
??????????????????????????? tmapi.Logout();
??????????????????????? }
??????????????????? }
??????????????????? else
??????????????????? {
??????????????????????? MessageBox.Show("讀取發(fā)件夾短息數(shù)據(jù)失敗!", "系統(tǒng)提示", MessageBoxButtons.OK, MessageBoxIcon.Asterisk, MessageBoxDefaultButton.Button1);
??????????????????? }
??????????????????? NetMAPI.Term();
??????????????? }
??????????????? //綁定數(shù)據(jù)
??????????????? this.listViewEX1.ListDataSet = sDs;
??????????????? this.listViewNavigateEX1.RowsTotalCount = sDs.Tables[0].Rows.Count; ;
??????????????? this.listViewNavigateEX1.ShowPageIndex();
??????????? }
??????????? catch (Exception ep)
??????????? {
#if DEBUG
??????????????? MessageBox.Show(ep.Message);
#endif
??????????????? MessageBox.Show("讀取發(fā)件夾短信數(shù)據(jù)時發(fā)生錯誤!", "系統(tǒng)提示", MessageBoxButtons.OK, MessageBoxIcon.Asterisk, MessageBoxDefaultButton.Button1);
??????????? }
??????????? finally
??????????? {
??????????????? Cursor.Current = Cursors.Default;
??????????? }
??????? }

OK,到此為止,一切都搞定。


轉自:http://hi.baidu.com/thepurpledream/blog/item/1148fe1846f79cb14aedbc81.html

posted on 2009-05-11 10:49 收藏也是種愛好 閱讀(532) 評論(0)  編輯 收藏 引用 所屬分類: Windows Mobile編程
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            国产精品高潮久久| 欧美午夜电影完整版| 伊伊综合在线| 男人的天堂成人在线| 久久婷婷亚洲| 亚洲精品久久久久久久久久久| 欧美激情在线免费观看| 欧美极品影院| 欧美一级黄色录像| 久久久成人网| 99天天综合性| 香蕉成人啪国产精品视频综合网| 国产一区视频在线观看免费| 欧美成人免费全部| 欧美日韩亚洲成人| 久久久99爱| 欧美大片一区二区| 亚洲免费视频观看| 久久xxxx精品视频| 亚洲美女av电影| 亚洲欧美网站| 亚洲精品国产无天堂网2021| 亚洲无线观看| 亚洲区国产区| 性欧美大战久久久久久久久| 亚洲国产天堂久久国产91| 一区二区三区国产在线| 精品动漫3d一区二区三区免费版| 亚洲人成网站999久久久综合 | 欧美电影免费观看大全| 欧美三级小说| 免费亚洲电影在线| 国产精品久久久久aaaa樱花| 亚洲高清在线观看一区| 国产婷婷色一区二区三区在线| 亚洲国产日韩一级| 伊人婷婷久久| 欧美在现视频| 午夜精品久久99蜜桃的功能介绍| 欧美大秀在线观看| 久久网站免费| 国产精品午夜av在线| 亚洲精品久久久久久久久久久久久| 国产亚洲一级高清| 亚洲视频网在线直播| 一本久道久久综合婷婷鲸鱼| 久久五月激情| 久久久另类综合| 国产亚洲精品久久飘花| 亚洲午夜羞羞片| av成人免费| 欧美精品一区三区| 亚洲国产高清自拍| 亚洲国产精品一区二区第一页| 欧美在线啊v| 欧美中文在线字幕| 国产精品午夜在线| 亚洲午夜精品一区二区| 亚洲欧美日韩在线综合| 国产精品va在线播放我和闺蜜| 亚洲精品一区二区三区不| 亚洲精品久久久久久一区二区| 久久免费视频观看| 欧美大片免费久久精品三p| 一区二区三区在线观看视频| 久久久777| 美女精品网站| 最新成人av网站| 欧美国产在线视频| 亚洲日本免费| 亚洲免费一区二区| 国产视频亚洲精品| 久久精品123| 欧美国产高潮xxxx1819| 夜夜嗨av一区二区三区中文字幕| 欧美日韩第一区日日骚| 一本色道婷婷久久欧美| 午夜精品久久99蜜桃的功能介绍| 国产精品网站一区| 欧美在线综合视频| 欧美国产第二页| 亚洲图片欧洲图片av| 国产精品日韩欧美一区二区| 久久成人精品电影| 亚洲国产精品久久久久秋霞不卡| 中文在线一区| 国产一区二区三区久久 | 欧美三级精品| 午夜精品视频在线观看一区二区 | 午夜伦欧美伦电影理论片| 国产综合色在线| 欧美日韩爆操| 欧美一级视频免费在线观看| 免费成人小视频| 中文亚洲免费| 尤物精品在线| 欧美亚洲动漫精品| 久久久欧美精品| 99在线视频精品| 蜜桃久久av一区| 亚洲自拍偷拍网址| 亚洲国产成人久久| 国产精品爱久久久久久久| 久久精品国产视频| 一区二区欧美在线观看| 久久久久国色av免费看影院| 一本色道久久综合狠狠躁篇怎么玩| 国产午夜精品一区二区三区欧美| 欧美国产精品劲爆| 久久成人一区| 亚洲一区精品视频| 亚洲黄色影院| 欧美jjzz| 久久精品国产一区二区三| 一区二区电影免费观看| 精品av久久707| 国产精品区一区二区三区| 欧美福利精品| 久久精品一二三| 亚洲免费在线精品一区| 亚洲日韩欧美视频| 欧美成人精品影院| 久久九九国产| 午夜国产一区| 亚洲一区二区三区中文字幕| 亚洲精品一区二区三| 亚洲电影观看| 一区二区在线观看av| 国产无遮挡一区二区三区毛片日本| 欧美视频一区在线| 欧美日韩一区二区免费在线观看 | 欧美日韩精品欧美日韩精品一| 老司机午夜精品| 久久久久久97三级| 久久久久国产精品人| 久久久九九九九| 欧美中文字幕在线观看| 欧美一区国产一区| 欧美一区二区三区在线看| 亚洲免费影视第一页| 亚洲欧美在线高清| 亚洲综合精品一区二区| 亚洲自拍高清| 欧美有码在线视频| 久久精品亚洲国产奇米99| 久久av红桃一区二区小说| 久久精品在线| 欧美mv日韩mv国产网站app| 美女精品网站| 欧美成年人视频| 欧美日本簧片| 国产精品色午夜在线观看| 国产精品毛片在线看| 国产日韩欧美成人| 黄色成人在线观看| 亚洲大片精品永久免费| 亚洲精品一区二区三区樱花| 亚洲视频高清| 久久成年人视频| 欧美成人a∨高清免费观看| 亚洲国产精品一区制服丝袜| 亚洲日本成人女熟在线观看| 在线亚洲欧美视频| 欧美一级艳片视频免费观看| 美女91精品| 欧美日韩亚洲一区三区| 国产日韩欧美一区二区| **性色生活片久久毛片| 一区二区三区四区五区视频| 午夜老司机精品| 欧美成年人视频网站| 999亚洲国产精| 久久精品国产第一区二区三区最新章节 | 亚洲一区3d动漫同人无遮挡| 久久精品国产精品亚洲精品| 欧美成人午夜激情视频| 国产精品成人一区二区三区吃奶 | 一本综合精品| 久久精品国产久精国产一老狼| 欧美成人蜜桃| 亚洲欧美日韩一区二区| 亚洲性线免费观看视频成熟| 久久久噜噜噜久久狠狠50岁| 亚洲日本成人| 久久精品最新地址| 欧美性色综合| 亚洲国产天堂久久综合| 先锋资源久久| 亚洲人永久免费| 久久久久久久性| 国产精品九色蝌蚪自拍| 亚洲日韩欧美视频一区| 久久精品成人一区二区三区| 99精品国产在热久久婷婷| 久久免费黄色| 国语自产精品视频在线看抢先版结局 | 久久嫩草精品久久久精品| 99精品国产热久久91蜜凸| 免费日韩av| 国内精品久久久久久久97牛牛|