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

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>
            亚洲天堂免费在线观看视频| 亚洲一区二区三区视频| 亚洲国产三级| 欧美激情第3页| 欧美~级网站不卡| 久久男女视频| 亚洲免费成人av| 欧美成人免费小视频| 久久精品视频亚洲| 久久久久久高潮国产精品视| 久久午夜视频| 亚洲国产精品久久人人爱蜜臀| 久久久精品国产一区二区三区| 欧美在线播放一区| 老司机午夜精品视频| 亚洲人成亚洲人成在线观看图片 | 亚洲国产天堂网精品网站| 一区二区三区自拍| 亚洲国产成人不卡| 一区二区三区日韩精品视频| 久久国产乱子精品免费女| 亚洲美女视频在线观看| 亚洲欧美日韩在线不卡| 免费看av成人| 国产亚洲精品成人av久久ww| 亚洲欧洲中文日韩久久av乱码| 一区二区三区产品免费精品久久75| 久久精品色图| 久久午夜电影网| 亚洲午夜久久久久久久久电影院 | 免费亚洲一区| 国产精品一区视频| 久久激情一区| 欧美一级成年大片在线观看| 国产精品自拍小视频| 久久久久久一区| 欧美成人免费小视频| 亚洲乱码视频| 亚洲一区二区三区中文字幕| 欧美日韩理论| 久久人人超碰| 欧美激情成人在线视频| 亚洲视频免费在线观看| 久久一区中文字幕| 国产一区二区三区日韩| 亚洲精品国精品久久99热| 一区二区精品在线| 亚洲视频在线观看免费| 亚洲精品一区在线| 午夜在线不卡| 亚洲午夜一区| 国产精品护士白丝一区av| 99pao成人国产永久免费视频| 亚洲激情影视| 欧美日韩精品在线视频| 亚洲精品国产精品乱码不99| 亚洲激情自拍| 欧美日本视频在线| 久久国产精品网站| 亚洲第一精品福利| 最新国产精品拍自在线播放| 久久九九精品99国产精品| 欧美不卡在线| 蜜桃视频一区| 黄色另类av| 久久精品视频免费| 久久久精品久久久久| 国产精品嫩草影院av蜜臀| 欧美日韩一区二区精品| 欧美一区二区免费观在线| 久久人人爽国产| 一区二区三区久久| 久久国产精品久久久久久电车| 国产精品久久久久久久久婷婷 | 久久精品成人| 欧美成人高清| 蜜臀a∨国产成人精品 | 日韩一级免费| 99伊人成综合| 国产精品视频免费观看| 欧美在线播放视频| 久久国产手机看片| 伊人久久婷婷| 亚洲中字在线| 国产精品久久久久久久午夜 | 亚洲第一在线综合网站| 久久久精品一区二区三区| 免费成人av资源网| 在线视频一区二区| 国产日韩欧美在线视频观看| 久久欧美肥婆一二区| 一区二区三区日韩欧美| 免费在线观看日韩欧美| 亚洲素人一区二区| 在线欧美一区| 国产精品一区二区三区免费观看| 久久久久欧美| 亚洲欧美日韩中文播放| 欧美激情1区2区3区| 久久久久欧美精品| 亚洲视频在线一区| 亚洲福利av| 尹人成人综合网| 国产字幕视频一区二区| 国产乱理伦片在线观看夜一区| 欧美电影在线观看完整版| 欧美影院在线播放| 欧美一区二区三区喷汁尤物| 亚洲午夜视频在线| 日韩视频久久| 亚洲在线网站| 亚洲男女自偷自拍| 久久九九全国免费精品观看| 久久久久久久久岛国免费| 久久精品在线观看| 久久亚洲春色中文字幕久久久| 久久久久国产一区二区| 欧美成人精品1314www| 欧美激情一区二区三区全黄| 欧美激情综合五月色丁香小说| 欧美在线影院| 午夜精品免费| 欧美一区二区女人| 老司机精品视频网站| 久久综合久色欧美综合狠狠| 欧美激情在线观看| 国内一区二区三区在线视频| 亚洲欧洲在线免费| 欧美一区二区女人| 欧美激情在线观看| 亚洲欧美日韩综合aⅴ视频| 久久久国产一区二区| 欧美黄色日本| 老司机免费视频一区二区三区| 欧美激情综合在线| 国产精品麻豆va在线播放| 在线电影一区| 性欧美精品高清| 一本综合精品| 美女在线一区二区| 激情视频一区二区| 亚洲欧美欧美一区二区三区| 欧美大片一区| 久久精品一区二区三区中文字幕 | 9国产精品视频| 久久久久国产精品人| 国产丝袜一区二区| 久久免费高清| 欧美在线综合视频| 国产综合亚洲精品一区二| 久久福利资源站| 亚洲国产精品悠悠久久琪琪| 麻豆av一区二区三区| 欧美二区在线播放| 一区二区三区黄色| 亚洲自拍都市欧美小说| 国产麻豆精品久久一二三| 久久精品视频在线免费观看| 欧美在线www| 国内精品伊人久久久久av一坑| 亚洲在线播放| 亚洲欧美文学| 日韩视频在线观看| 国产日韩欧美成人| 欧美 日韩 国产在线| 欧美激情1区2区3区| 亚洲欧美精品中文字幕在线| 久久av资源网站| 在线视频免费在线观看一区二区| 国产精品视频自拍| 亚洲精品在线看| 国产日韩欧美一区| 91久久久在线| 一区二区三区在线看| 99国产精品久久久| 极品尤物久久久av免费看| 亚洲综合欧美日韩| 亚洲视频免费| 欧美三级视频在线| 可以免费看不卡的av网站| 国产精品丝袜xxxxxxx| 欧美二区视频| 91久久久亚洲精品| 久久精品亚洲一区二区三区浴池| 欧美一区二区三区免费大片| 欧美日韩在线不卡一区| 亚洲人成人一区二区三区| 亚洲精品一区二区三| 欧美电影专区| 久久亚洲综合网| 免费在线成人av| 美日韩精品免费| 在线观看欧美亚洲| 久久激情视频久久| 免费视频一区| 亚洲国产精品一区在线观看不卡 | 欧美一区二区日韩一区二区| 国产精品免费看| 午夜在线a亚洲v天堂网2018| 久久综合色一综合色88|