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

萬星星@豌豆莢 歡迎加入我們
一個吃軟飯的男人!!!!!我只想寫程序####
微博:http://weibo.com/wanlianwen
posts - 172,  comments - 1253,  trackbacks - 0
自從去年年底一次棘手的界面,開始研究用web做界面到現(xiàn)在大約1年,這一年間不是局限在實現(xiàn)層面,也并非一直研究這一個問題,有很多問題其實不是問題,只是自己沒有想清楚或者思想沒放開。對于一個界面開發(fā)人員,想必拉的對話框不少于100個,膩味不必說,光是對話框大小改變導(dǎo)致控件跟著變化都需要一番功夫,加上界面美觀,界面的風(fēng)格統(tǒng)一,界面的靈活多變......,頭痛。在對話框里面加載位圖,加載gif,超鏈接......,啊,沒法控制了吧!在考慮遠(yuǎn)點,現(xiàn)在.net3.0技術(shù)已經(jīng)完全打破應(yīng)用和桌面的界限,我們的界面html資源完全可以放在一個web站點上,這樣界面是完全動態(tài)的。

其間寫過2篇這方面的文章,基于vc6實現(xiàn),繞彎很大。在vc7.1、vc8里面要簡單很多,主要是把幾個以前為公開的類公開了,最重要的是在CWnd里面加入了一個虛函數(shù)CreateControlSite使得有機(jī)會改變控件站點以修改控件行為。在mfc類層次上,CHTMLView和CDHtmlDialog為開發(fā)者提供了創(chuàng)建webgui的一系列基礎(chǔ)設(shè)施,包括事件機(jī)制、窗口行為、以及對html文檔操縱接口。我們在此基礎(chǔ)上實現(xiàn)webgui很簡單,然而仍然困惑我很久,經(jīng)理也催過我?guī)状挝乙恢蔽纯蠜Q定最終方案。在我腦袋里一直琢磨是要應(yīng)用程序完全操縱html文檔,還是html訪問應(yīng)用獲取信息,其實就是它們之間的通信模式。一直到昨天我才定下方案,應(yīng)用通過IWebBrowser2接口操縱html元素,html通過vbscript、javascript腳本響應(yīng)本身事件,訪問應(yīng)用。主要是考慮通信自然暢通,而以前我一味想通過應(yīng)用指令完全控制html元素,導(dǎo)致去解析html文檔,費力不討好。下面開始我的想法:

寫一個dll,封裝CDHtmlDialog,提供一個類似html容器的對話框,功能就是加載html網(wǎng)頁,以及創(chuàng)建與html呼應(yīng)的com組件。它本身不包含與應(yīng)用功能有關(guān)代碼,應(yīng)用有關(guān)的部分是html頁面和對于的com功能組件。這里需要對CDHtmlDialog進(jìn)行了適當(dāng)?shù)母脑煲赃m合自己的目標(biāo):

首先從CDHtmlDialog派生一個類CHTMLContainerDlg,默認(rèn)情況下會生成一個網(wǎng)頁資源,這個網(wǎng)頁是這個對話框創(chuàng)建時加載的,我們需要的其實是一個容器而不是一個具體的對話框,所以刪除網(wǎng)頁資源,修改對話框頭文件:
enum?{?IDD?=?IDD_HTMLCONTAINERDLG,?IDH?=?0?};
這里把IDH修改為0,因為我們刪除了網(wǎng)頁資源。然而在對話框創(chuàng)建后會加載該資源,在CDHtmlDialog的OnInitDialog函數(shù)里面我們可以看到:
if?(m_nHtmlResID)
????????LoadFromResource(m_nHtmlResID);
????else?if?(m_szHtmlResID)
????????LoadFromResource(m_szHtmlResID);
????else?if?(m_strCurrentUrl)
????????Navigate(m_strCurrentUrl);
結(jié)果就是對話框一出現(xiàn)就會出現(xiàn)加載一個無效地址的頁面,出現(xiàn)無法打開鏈接的頁面,為了避免這個問題,需要重載OnInitDialog函數(shù)。其實就是拷貝mfc代碼然后去掉上面那段代碼就ok,強(qiáng)制不加載頁面。那么為了加載指定頁面,需要一個函數(shù):
void?CHTMLContainerDlg::SetHtmlAndCom(CString?strURL,?CString?strProg)
{
????HRESULT????????hr????????=?NOERROR;
????m_strURL?=?strURL;
????hr?=?m_spComDisp.CoCreateInstance(strProg);
????if(FAILED(hr))
????{
????????TRACE(_T("Some?error?when?create?com?object\n"));
????}
????SetExternalDispatch(m_spComDisp);
}
指定html的url和對應(yīng)功能組件的progid,這樣在網(wǎng)頁里面可以通過腳本window.external訪問該com組件。
這樣就可以加載html網(wǎng)頁,但是html頁面里面的元素風(fēng)格卻是2k風(fēng)格(至少在ie7以下版本是如此),這個怕是沒起到一點美觀作用,為之我考慮了半天,問過做web的人是否有辦法,最終還是靈感光臨,誤撞上了。重載GetHostInfo函數(shù):
STDMETHODIMP?CHTMLContainerDlg::GetHostInfo(DOCHOSTUIINFO*?pInfo)
{
????pInfo->dwFlags?=?DOCHOSTUIFLAG_THEME;
????return?S_OK;
}
這個多得不說,^_^。
下面就可以演示了,在vs2005里面找個向?qū)韘how一下:
CHTMLContainerDlg????dlg;
????TCHAR????????????????szPath[MAX_PATH]?
=?{?0?};
????CString????????????????strPath;
????GetCurrentDirectory(MAX_PATH,?szPath);
????strPath?
=?szPath;
????strPath?
+=?_T("\\Default.htm");
????dlg.SetHtmlAndCom(strPath,?_T(
"TestWebCom.WebComCtrl"));
????dlg.DoModal();


對話框標(biāo)題其實可以通過解析html文檔獲取title標(biāo)題設(shè)置,目前還未處理。下面看看html與應(yīng)用交互的組件。
生成一個atl工程,TestWebCom,添加一個com組件WebComCtrl,添加方法處理上面那個帶...的按鈕(文件夾瀏覽按鈕):
STDMETHODIMP?CWebComCtrl::ShowFolderBrowser(void)
{
????AFX_MANAGE_STATE(AfxGetStaticModuleState());

????
//?TODO:?在此添加實現(xiàn)代碼
????AfxMessageBox(_T("In?Com,?you?can?show?folder?select?dialog"));
????
return?S_OK;
}

這里不作具體處理,只是象征性彈出一個對話框。好了,上面我們在對話框里面已經(jīng)設(shè)置了com組件的progid,這里可以把html和組件關(guān)聯(lián)上了,通過腳本可以訪問com組件方法:
<BUTTON?CLASS="buttonClass3Custom"?ID="BrowseBtn"?TYPE="BUTTON"?TITLE="瀏覽頭文件。"?onClick="OnBrowseHeaderFile();"></BUTTON>
腳本如下:
function?OnBrowseHeaderFile()
{
????window.external.ShowFolderBrowser();
}
下面運行試一試,按下選擇文件夾按鈕會出現(xiàn)如下詢問組件是否安全的對話框:

這個很惱人,用戶可沒有耐心忍受每次多彈出這個對話框詢問組件是否安全。我開始打算將組件實現(xiàn)安全接口解決掉此問題,不過不知道緣何,沒有成功,網(wǎng)上搜索一下好像說在ie7里面無效,沒辦法還是看mfc源碼來解決問題。
CDHtmlDialog類獲取external代碼如下:
STDMETHODIMP?CDHtmlDialog::GetExternal(IDispatch?**ppDispatch)
{
????
if(ppDispatch?==?NULL)
????????
return?E_POINTER;
????????
????
*ppDispatch?=?NULL;
????
if?(m_spExternalDisp.p?&&?CanAccessExternal())
????
{
????????m_spExternalDisp.p
->AddRef();
????????
*ppDispatch?=?m_spExternalDisp.p;
????????
return?S_OK;
????}

????
return?E_NOTIMPL;
}
看到CanAccessExternal函數(shù),肯定就是驗證安全性的代碼,找到函數(shù)聲明,幸好是虛函數(shù),重載直接返回TRUE:
BOOL?CHTMLContainerDlg::CanAccessExternal()
{
????
//?we?trust?all?com?object?(haha,?you?can?make?virus)
????return?TRUE;
}
有興趣的朋友可以看下內(nèi)部實現(xiàn)。
這下就好了,按下網(wǎng)頁選擇文件夾按鈕,彈出對話框:

一套流程完備,方案個人覺得不錯,各司其職,通信自然暢通,一個html配對一個com功能組件,功能組件化不僅使代碼封裝性好,而且可以用于多種語言。

由于此技術(shù)不用于公司開發(fā),今整理提供下載
posted on 2006-12-15 21:11 萬連文 閱讀(26073) 評論(40)  編輯 收藏 引用 所屬分類: MFC

FeedBack:
# re: 用MFC實現(xiàn)WebGUI--(CDHtmlDialog)
2006-12-19 22:40 | noname
的確不錯. 用 html 做界面在開發(fā)效率, 擴(kuò)展性等方面都很好. 正巧這兩天需要做一個程序. 界面要求比較靈活. 就試試萬兄的 idea 了.

用 WTL 做了一個 demo. 因為是第一次做這樣的應(yīng)用, 先不考慮代碼復(fù)用了. 所以沒有做成 DLL. 連頁面的 ExternalDispatch 都是在程序內(nèi)部實現(xiàn)的.
既然萬兄沒有給出源碼, 我把代碼放上來. 算是狗尾續(xù)貂把. :)

http://nicoster.googlepages.com/wtlhtml.rar

lieph $(at) 163 $(dot) com  回復(fù)  更多評論
  
# re: 用MFC實現(xiàn)WebGUI--(CDHtmlDialog)
2006-12-20 14:10 | cooelaf
看了萬兄的blog,很贊嘆萬兄在這方面的造詣。  回復(fù)  更多評論
  
# re: 用MFC實現(xiàn)WebGUI--(CDHtmlDialog)
2006-12-25 10:51 | shaolong
萬哥,可否把你說的這個例子代碼公開一下呢?我剛?cè)腴T做嵌入html的vc項目,也是CDHTMLDialog派生的類,但不知該如何實現(xiàn)函數(shù)接口的對應(yīng),時間很緊,郁悶的很,謝謝了!  回復(fù)  更多評論
  
# re: 用MFC實現(xiàn)WebGUI--(CDHtmlDialog)
2006-12-25 11:04 | 萬連文
郵件給我,我發(fā)你。
  回復(fù)  更多評論
  
# re: 用MFC實現(xiàn)WebGUI--(CDHtmlDialog)
2006-12-26 23:59 | xhl
我在VC6下曾做過WEBGUI,對你的想法很感興趣,想知道如何用com封裝功能,已經(jīng)在html中怎樣調(diào)用com組件。
能把你的示例代碼發(fā)一份給我嗎?
我的郵箱hongziyue@sina.com
多謝!  回復(fù)  更多評論
  
# re: 用MFC實現(xiàn)WebGUI--(CDHtmlDialog)
2006-12-27 00:01 | xhl
我在VC6下曾做過WEBGUI,對你的想法很感興趣,想知道如何用com封裝功能,以及在html中怎樣調(diào)用com組件。
能把你的示例代碼發(fā)一份給我嗎?
我的郵箱hongziyue@sina.com
多謝!  回復(fù)  更多評論
  
# re: 用MFC實現(xiàn)WebGUI--(CDHtmlDialog)
2007-01-28 14:04 | xie
我是個初學(xué)者也想要一份多謝了  回復(fù)  更多評論
  
# re: 用MFC實現(xiàn)WebGUI--(CDHtmlDialog)
2007-02-25 17:55 | kukustream
很感興趣,可否將示例的源碼發(fā)給我一份,謝謝! kukuStream@hotmail.com  回復(fù)  更多評論
  
# re: 用MFC實現(xiàn)WebGUI--(CDHtmlDialog)
2007-03-05 17:24 | xq
萬前輩,我早就想想學(xué)學(xué)這種技術(shù),苦于資料難找,今得遇高人。
給我一份,萬分感謝。waterdo@gmail.com  回復(fù)  更多評論
  
# re: 用MFC實現(xiàn)WebGUI--(CDHtmlDialog)
2007-03-05 22:47 | 萬連文
看有如此多人索要代碼,實感意外。由于當(dāng)時調(diào)試代碼比較凌亂外加當(dāng)初是為公司開發(fā),代碼沒有公開。現(xiàn)在看來公司不會采用了,可能思考方式不同。最近在搞畢業(yè)開題,過1周后我將整理代碼并公布于本頁下載。  回復(fù)  更多評論
  
# re: 用MFC實現(xiàn)WebGUI--(CDHtmlDialog)
2007-03-10 13:08 | 萬連文
下載文件已經(jīng)提供,vs2005環(huán)境,關(guān)于其他環(huán)境本人不打算移植。  回復(fù)  更多評論
  
# re: 用MFC實現(xiàn)WebGUI--(CDHtmlDialog)
2007-08-15 18:44 | lanse
我想要一份
lanse8482@sina.com.cn
  回復(fù)  更多評論
  
# re: 用MFC實現(xiàn)WebGUI--(CDHtmlDialog)
2007-09-05 11:35 | 我也想要一份,拜托啦
我也想要一份,拜托啦
haiminger@163.com  回復(fù)  更多評論
  
# re: 用MFC實現(xiàn)WebGUI--(CDHtmlDialog)
2007-09-05 14:10 | 萬連文
唉,真不知該如何說了,下載就在下面,不過字有些小罷了。  回復(fù)  更多評論
  
# re: 用MFC實現(xiàn)WebGUI--(CDHtmlDialog)
2007-10-13 08:52 | yefeng
我也想要一份,拜托啦 !
yefeng654321@126.com
  回復(fù)  更多評論
  
# re: 用MFC實現(xiàn)WebGUI--(CDHtmlDialog)
2007-12-03 16:12 | Ason Jia
最近我也在弄這個,但是我有遇見一個問題,因為中間的html大?。ú皇俏募笮。莌tml的寬度和高度)是會變的,所以我有想動態(tài)從html獲取大小,具體做法是,html中有一個變量來保存html大小,當(dāng)html被加載的時候,就由js動態(tài)算出大小,然后我們的dialog去獲取這個大小(使用IWebBrowser2直接去查詢html中此值),然后動態(tài)調(diào)整dialog的大小以適應(yīng)html的大小,但是問題也就出在這兒:html在加載的時候,經(jīng)常會因為一些原因使得DOM中這個element沒有創(chuàng)建出來,或者此element有創(chuàng)建出來,但是大小卻沒有計算出來(也就是此節(jié)點有,但是value是“0”),汗~~~~~這個問題我想了很久都解決不了
不知道作者可否提供一些幫助,再次非常感謝~~~  回復(fù)  更多評論
  
# re: 用MFC實現(xiàn)WebGUI--(CDHtmlDialog)
2007-12-04 10:10 | 萬連文
我的想法:
html被加載的時候,最好不要去使用html的東西,這個時候dom文檔還沒有加載完全。你需要在OnDocumentCompleted事件的時候去調(diào)用腳本,然后去修改對話框大小。  回復(fù)  更多評論
  
# re: 用MFC實現(xiàn)WebGUI--(CDHtmlDialog)
2007-12-04 15:04 | Ason Jia
我也想過OnDocumentCompleted消息被觸發(fā)的時候去獲取,但是測試的時候發(fā)現(xiàn),這個消息函數(shù)被觸發(fā)了,但是html還是沒有準(zhǔn)確的計算出大小。
那你提到的在這個函數(shù)里面調(diào)用JS的方法算出大小,這個我沒去試過,其實我是不知道,汗~~~對COM不太熟悉。
但是這樣看來,好像是可行的。  回復(fù)  更多評論
  
# re: 用MFC實現(xiàn)WebGUI--(CDHtmlDialog)
2007-12-04 15:14 | 萬連文
我想你可能錯誤的認(rèn)識了這個東西。html是沒有辦法計算大小的,它的layout依賴于web控件的大小。采取這種方法做界面,最好針對一類html頁面大小固定的功能使用一個對話框類,這樣設(shè)置對話框固定大小即可以,且對于一類對話框,功能處理也比較類似。  回復(fù)  更多評論
  
# re: 用MFC實現(xiàn)WebGUI--(CDHtmlDialog)
2007-12-05 17:38 | Ason Jia
目前我也是比較傾向這種思路,無奈老板說,俺們的產(chǎn)品要做n國語言,因為語言的不同,還是你提到的控件的不同,直接造成html大小的變化,暈~~~
不過在C中調(diào)用js方法,我已經(jīng)弄出來了,無奈只能在這個方向先做一番苦功先了
汗~~
實在不行,那我就只能寫死了~
謝謝老萬同學(xué)的幫忙和指點,呵呵。。。。再次感謝~
  回復(fù)  更多評論
  
# re: 用MFC實現(xiàn)WebGUI--(CDHtmlDialog)
2008-06-19 06:39 | arthurlee
一開始以為需要自己實現(xiàn)active scriping的接口,看了這篇文章才知道方法如此簡單。
十分感謝!  回復(fù)  更多評論
  
# re: 用MFC實現(xiàn)WebGUI--(CDHtmlDialog)
2008-10-13 17:58 | 阿里
實際上這并未提供active scriping的接口,而僅僅是對WebBrowser控件的額外控制,如果不用MFC可能需要用到接口IDocHostUIHandler,IDocHostUIHandler2和IDocHostShowUI。

實現(xiàn)自己的Active Scripting,需要用IActiveScriptSite  回復(fù)  更多評論
  
# re: 用MFC實現(xiàn)WebGUI--(CDHtmlDialog)[未登錄]
2008-11-06 12:01 | yy
您好 我也想要一份代碼看看,謝謝!
yangyong_v@163.com  回復(fù)  更多評論
  
# re: 用MFC實現(xiàn)WebGUI--(CDHtmlDialog)
2008-11-10 10:28 | 萬連文
來自原子時代--您的email有問題???
很抱歉這么晚回復(fù)你,因為最近病了。首先,我對一個女孩子從事C++開發(fā)表達(dá)敬佩。說到界面開發(fā),絕對不會是一個簡單的任務(wù),甚至連一本真正的好的技術(shù)書籍都沒有。CDHtmlDialog是vs2003以后的sdk添加進(jìn)去的,不過這個用的人也不多,但是簡單很多。我一般使用的是atl里面提供的一個窗口類ATLAXWIN_CLASS來實現(xiàn)的,這個在vc6里面也有。根據(jù)我的經(jīng)驗,能使用html+css+JS來實現(xiàn)界面編程的人技術(shù)都不一般,至少對com有一些了解。對于您目前的情況,如果使用vc6開發(fā)可以考慮ATLAXWIN_CLASS這個類進(jìn)行編程,依賴atl庫,跟mfc無關(guān)。具體的例子我手頭沒有,可以查閱www.codeproject.com
www.codeguru.com等技術(shù)網(wǎng)站。如果你自己嘗試之后還是無法得到結(jié)果,請與我聯(lián)系,我會做一個demo。因為這段時間確實病的不輕,本想順手做一個給你,但是一看電腦腦袋暈。不好意思。

總是發(fā)不出去,再試試.  回復(fù)  更多評論
  
# re: 用MFC實現(xiàn)WebGUI--(CDHtmlDialog)[未登錄]
2009-02-23 16:34 | 小四
lz你好,我是謝老師同門師兄,最近也用類似的界面解決方案。
有空加我msn聊聊 cugdj@hotmail.com  回復(fù)  更多評論
  
# re: 用MFC實現(xiàn)WebGUI--(CDHtmlDialog)
2009-10-27 18:07 |
你好,我想學(xué)習(xí)一下html內(nèi)嵌到vc中使用,能給我發(fā)份代碼嗎?zxx8224@163.com 非常感謝  回復(fù)  更多評論
  
# re: 用MFC實現(xiàn)WebGUI--(CDHtmlDialog)
2009-10-28 09:02 | WXX
下載就在最后面2個字,不明白為什么那么多人看不見。  回復(fù)  更多評論
  
# re: 用MFC實現(xiàn)WebGUI--(CDHtmlDialog)
2009-12-30 09:45 | Eleanor
你好,我最近才開始弄html嵌入mfc對話框,我想問一下我只想得到網(wǎng)頁的某些按鈕的鏈接地址,調(diào)用我的程序去ping它,返回一個ping通時間給網(wǎng)頁。我查了下網(wǎng)上說用IHTMLElement里的put_onclick,可是這些接口我不熟,我發(fā)現(xiàn)vc2005里的mshtml.h中定義了好幾個IHTMLDocument和IHTMLElement接口方便的話加下我msn:lizzywater@hotmail.com指導(dǎo)一下,謝謝  回復(fù)  更多評論
  
# re: 用MFC實現(xiàn)WebGUI--(CDHtmlDialog)
2010-04-18 14:08 | jjqcat
很感興趣,可否將示例的源碼發(fā)給我一份,謝謝!
jjqcat@gmail.com  回復(fù)  更多評論
  
# re: 用MFC實現(xiàn)WebGUI--(CDHtmlDialog)
2010-08-26 10:19 | yyk
很好。你的想法不錯。take a look!!  回復(fù)  更多評論
  
# re: 用MFC實現(xiàn)WebGUI--(CDHtmlDialog)
2011-01-28 12:07 | 無未
最近也在考慮這個東西 不過令我很為難的是在vc6.0下 加之對com不是很了解…… 努力 關(guān)注……  回復(fù)  更多評論
  
# re: 用MFC實現(xiàn)WebGUI--(CDHtmlDialog)
2011-07-25 19:14 | tammy
我的怎么在DEBUG文件夾下打不開應(yīng)用程序呢.  回復(fù)  更多評論
  
# re: 用MFC實現(xiàn)WebGUI--(CDHtmlDialog)
2011-07-26 10:19 | tammy
急....  回復(fù)  更多評論
  
# re: 用MFC實現(xiàn)WebGUI--(CDHtmlDialog)
2011-07-26 10:19 | tammy
程序運行起來了.但點擊瀏覽按鈕時..報錯說當(dāng)前頁的腳本運行錯誤  回復(fù)  更多評論
  
# re: 用MFC實現(xiàn)WebGUI--(CDHtmlDialog)
2011-07-26 10:23 | 萬連文
@tammy
應(yīng)該是沒有注冊com組件。  回復(fù)  更多評論
  
# re: 用MFC實現(xiàn)WebGUI--(CDHtmlDialog)
2012-09-22 15:25 | 蘆葦
前輩 我是剛開始學(xué)習(xí)這方面內(nèi)容的新手,您有木有這方面的資料、書籍推薦呢,跪求拜謝。聯(lián)系方式:1071932819@qq.com  回復(fù)  更多評論
  
# re: 用MFC實現(xiàn)WebGUI--(CDHtmlDialog)
2013-01-30 18:02 | 云憐秀年
下載不到,打不開@noname
  回復(fù)  更多評論
  
# re: 用MFC實現(xiàn)WebGUI--(CDHtmlDialog)
2013-01-30 18:03 | 云憐秀年
我想要一份源碼
O(∩_∩)O謝謝
wywangyun1124@163.com  回復(fù)  更多評論
  
# re: 用MFC實現(xiàn)WebGUI--(CDHtmlDialog)
2015-03-11 10:53 | 冷風(fēng)X
820225092@qq.com ,求一源碼學(xué)習(xí)一下。。  回復(fù)  更多評論
  
# re: 用MFC實現(xiàn)WebGUI--(CDHtmlDialog)
2016-07-18 15:37 | 王同林
前輩好,代碼下載之后怎么用???我生成的exe打開是空白的頁面,菜單新建不知道建的啥,打開一個html頁面也沒有反應(yīng),我的環(huán)境是vs2010  回復(fù)  更多評論
  
簡歷下載
聯(lián)系我

<2008年3月>
2425262728291
2345678
9101112131415
16171819202122
23242526272829
303112345

常用鏈接

留言簿(66)

隨筆分類

隨筆檔案

相冊

搜索

  •  

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            国产麻豆成人精品| 久久久夜精品| 欧美一级电影久久| 亚洲一区二区动漫| 欧美一区1区三区3区公司| 亚洲资源av| 久久久精品网| 欧美插天视频在线播放| 亚洲成色999久久网站| 国产精品久久久久久久久久三级| 欧美日本一区| 欧美日本韩国一区二区三区| 欧美激情中文不卡| 国产精品久久久久久av福利软件| 国产伦精品一区二区三区四区免费 | 一本色道久久综合亚洲精品小说| 国产精品99久久久久久有的能看| 欧美在线观看一区| 欧美日本三级| 国模一区二区三区| 中文国产成人精品| 久久久久久穴| 一区二区三区视频在线观看| 久久久中精品2020中文| 国产精品国产三级国产专播品爱网 | 亚洲欧美国产另类| 欧美成人一区二区在线| 亚洲综合丁香| 欧美日韩国产麻豆| 亚洲国产免费看| 久久精品国产77777蜜臀| 亚洲精品在线免费观看视频| 久久先锋影音| 国产亚洲精品aa午夜观看| 日韩视频一区二区三区在线播放| 久久精品五月| 亚洲免费在线视频| 欧美日韩一区二区高清| 亚洲国产精品视频| 久久综合久久久久88| 亚洲女女女同性video| 欧美另类视频在线| 亚洲精品久久在线| 欧美成人影音| 久久伊人免费视频| 影音先锋日韩精品| 久久免费视频网| 欧美一区二区在线免费播放| 国产精品久久中文| 中文成人激情娱乐网| 欧美激情精品久久久久久黑人 | 久久频这里精品99香蕉| 亚洲网站视频福利| 欧美亚洲不卡| 亚洲欧美日本视频在线观看| 久久国产精品一区二区三区四区| 亚洲高清在线| 久久综合伊人77777蜜臀| 国内精品免费午夜毛片| 久久国产黑丝| 欧美影院成人| 亚洲第一网站免费视频| 欧美高清影院| 欧美精品123区| 一区二区不卡在线视频 午夜欧美不卡在 | 久久www成人_看片免费不卡| 国产色产综合产在线视频| 午夜影院日韩| 欧美一区二区免费| 黄色成人av| 欧美激情a∨在线视频播放| 欧美jizz19性欧美| 一区二区不卡在线视频 午夜欧美不卡在 | 久久综合国产精品台湾中文娱乐网| 久久精品91久久久久久再现| 一区二区三区在线观看国产| 欧美成人免费全部| 欧美人体xx| 欧美在线在线| 免费成人高清在线视频| 一本一本久久a久久精品牛牛影视| 夜夜夜精品看看| 国产亚洲欧美另类中文| 欧美粗暴jizz性欧美20| 欧美日韩国产在线观看| 欧美中文在线免费| 女人色偷偷aa久久天堂| 亚洲男人的天堂在线| 久久国产精品久久久久久| 亚洲精品一区二区三区樱花| 亚洲一级免费视频| 在线观看国产成人av片| 亚洲精华国产欧美| 国产丝袜一区二区三区| 亚洲国产精品久久久久秋霞影院| 国产精品狠色婷| 欧美国产欧美亚洲国产日韩mv天天看完整 | 免费亚洲电影在线| 欧美日韩国产专区| 另类天堂视频在线观看| 欧美视频精品在线观看| 久久国产精品一区二区三区四区 | 久久久久久久久蜜桃| 亚洲三级影片| 午夜一区二区三视频在线观看 | 男女激情久久| 国产精品美女午夜av| 亚洲国产精品va| 国产综合视频在线观看| 亚洲视频免费| 一区二区欧美在线观看| 麻豆精品传媒视频| 久久人人爽人人爽爽久久| 国产精品都在这里| 亚洲另类春色国产| 亚洲人成人一区二区在线观看| 欧美一区免费视频| 欧美在线啊v| 国产精品xvideos88| 亚洲靠逼com| 一区二区三区|亚洲午夜| 免费中文字幕日韩欧美| 欧美a级在线| 亚洲国产精品激情在线观看| 久久久精品久久久久| 久久精品一区二区三区中文字幕 | 亚洲色图制服丝袜| 一区二区三区高清| 欧美精品一区二区三区一线天视频| 久久综合亚州| 永久555www成人免费| 久久国产综合精品| 久久亚洲精品一区二区| 国内偷自视频区视频综合| 午夜精品福利电影| 久久久久久高潮国产精品视| 国产亚洲一区在线| 久久精品国产清自在天天线 | 亚洲视频中文| 国产精品高潮视频| 午夜精品福利一区二区三区av| 欧美一区二区三区在线观看视频| 国产精品手机视频| 欧美在线不卡视频| 免费中文日韩| 一区二区三区**美女毛片| 国产精品福利在线观看网址| 一区二区激情视频| 欧美在线免费观看亚洲| 国产在线精品二区| 六月婷婷一区| 夜色激情一区二区| 久久国产精品久久久| 极品少妇一区二区| 欧美黄色视屏| 亚洲欧美国产日韩天堂区| 久久亚洲不卡| 日韩一区二区精品葵司在线| 欧美午夜精品久久久久久孕妇| 亚洲综合第一页| 欧美黑人在线播放| 亚洲视频免费观看| 国产在线麻豆精品观看| 国产中文一区二区| 亚洲免费大片| 欧美中文字幕精品| 亚洲国产日韩一级| 欧美日韩一二三区| 久久黄金**| 亚洲精品国产精品乱码不99 | 亚洲国产精品一区二区www在线| 99国产麻豆精品| 国产精品一级久久久| 米奇777超碰欧美日韩亚洲| 99国产一区| 欧美成人午夜剧场免费观看| 亚洲欧美欧美一区二区三区| 在线看日韩欧美| 国产精品国产三级国产aⅴ入口 | 国产欧美日韩高清| 欧美激情第9页| 欧美主播一区二区三区| 99亚洲一区二区| 欧美大胆成人| 欧美一区视频在线| a91a精品视频在线观看| 狠狠色狠狠色综合日日五| 欧美日韩在线视频一区二区| 久久综合伊人77777蜜臀| 亚洲欧美久久久久一区二区三区| 亚洲国产欧洲综合997久久| 久久精品一区二区三区四区| 亚洲欧美日韩成人| 一区二区欧美日韩视频| 亚洲欧洲一区二区天堂久久| 一区二区三区在线看| 国产一区二区精品在线观看| 欧美午夜精品| 欧美午夜激情视频| 欧美色另类天堂2015|