久久精品在这里_成人99免费视频_国产激情视频一区二区在线观看_国产伦精品一区二区三区免费 _亚洲午夜免费福利视频_色狠狠色狠狠综合_av在线综合网_91毛片在线观看_欧美视频一区二区在线观看_极品美女销魂一区二区三区免费_国产亚洲欧美激情_在线免费观看不卡av_日韩不卡一区二区三区_91精品国产麻豆国产自产在线_亚洲国产精品一区二区久久恐怖片_a4yy欧美一区二区三区

Rss & SiteMap

曙海教育集團(tuán)論壇 http://www.bjzhda.cn

曙海教育集團(tuán)論壇
共1 條記錄, 每頁(yè)顯示 10 條, 頁(yè)簽: [1]
[瀏覽完整版]

標(biāo)題:增強(qiáng)Visual C++開發(fā)環(huán)境_VC技術(shù)_C語(yǔ)言教程

1樓
wangxinxin 發(fā)表于:2010-12-10 15:05:00

       程序和軟件都是使用它來開發(fā)出來的。VC的開發(fā)環(huán)境提供了強(qiáng)大的功能,為開發(fā)人員方便、快速、高效地開發(fā)應(yīng)用給予了強(qiáng)有力的支持。但是由于程序員各有各的特點(diǎn)和習(xí)慣,所以還可能會(huì)有很多對(duì)編程開發(fā)環(huán)境不同的需要。VC的IDE集成開發(fā)環(huán)境充分考慮到了這一點(diǎn),專門提供了對(duì)開發(fā)環(huán)境進(jìn)行擴(kuò)展的功能,使得開發(fā)員可以根據(jù)需要,通過一些編程開發(fā)來增強(qiáng)VC開發(fā)環(huán)境本身的功能。

Visual C++的自動(dòng)化機(jī)制
  在使用VC來進(jìn)行開發(fā)的時(shí)候,在VC的集成開發(fā)環(huán)境里可以手工進(jìn)行很多操作,例如:使用菜單命令來打開一個(gè)項(xiàng)目、修改源文件、保存文件,然后編譯連接得到可執(zhí)行的文件等等。這些操作大部分都是例行的、重復(fù)多次進(jìn)行的。

  VC提供了一種Automation自動(dòng)化(來自以前的OLE自動(dòng)化)的擴(kuò)展機(jī)制。VC的開發(fā)者可以通過開發(fā)VBScript宏或者插件,讓IDE來自動(dòng)執(zhí)行一些操作。好處是顯然的:可以大大縮短這些操作的時(shí)間,而且還可以避免在手工操作可能出現(xiàn)的一些錯(cuò)誤,如遺漏、鍵入錯(cuò)誤等等。VBScript宏是使用VBScript語(yǔ)言寫的一些程序,而插件則是使用VC或者Visual Basic開發(fā)的COM構(gòu)件。

  我們還可以使用VBScript宏和插件來對(duì)VC本身的界面進(jìn)行美化、改造,例如為VC的窗口加上頁(yè)簽(與Delphi的界面類似)等等。

  在宏或者插件里,VC的集成開發(fā)環(huán)境本身以及它的各個(gè)部件都可以作為對(duì)象來進(jìn)行操作。例如,通過操作與項(xiàng)目的文件對(duì)應(yīng)的對(duì)象,可以對(duì)某個(gè)文件進(jìn)行打開、編輯和關(guān)閉等操作。類似的,操作與IDE中的窗口對(duì)應(yīng)的對(duì)象,可以激活一個(gè)窗口、改變窗口的大小等等。

  一個(gè)對(duì)象可以是集成開發(fā)環(huán)境的一個(gè)部件,或者一組相關(guān)的部件。例如,一個(gè)Document文件對(duì)象表示一個(gè)打開的文件,而Documents對(duì)象則表示所有打開的文件。類似,一個(gè)Window窗口對(duì)象表示一個(gè)打開的窗口,而Windows對(duì)象表示所有打開的窗口。Documents和Windows對(duì)象稱為集合對(duì)象,它們包含了相關(guān)的一組對(duì)象。

  每一個(gè)IDE環(huán)境的對(duì)象都實(shí)現(xiàn)了一個(gè)雙向的接口,提供了大量的方法、屬性和事件,在開發(fā)VBScript宏和插件的時(shí)候需要使用這些方法、屬性和事件來操作這些對(duì)象。同時(shí),每一個(gè)對(duì)象為Automation機(jī)制實(shí)現(xiàn)了一個(gè)IDispatch接口和一個(gè)COM接口,來支持對(duì)對(duì)象成員(屬性、方法和事件)的訪問。

  為了更好地操作集成開發(fā)環(huán)境的對(duì)象,必須知道這些對(duì)象之間的關(guān)系。對(duì)象之間有一個(gè)層次包含的關(guān)系。Application對(duì)象是最頂層的,其它的對(duì)象都是從屬于它的。有了這個(gè)關(guān)系,就可以使用Application對(duì)象的屬性和方法來直接訪問它的所有下屬對(duì)象啦!VC集成開發(fā)環(huán)境的對(duì)象以及它們之間的包含關(guān)系如下:
Application
Application(Application也可以包含自己)
Projects
Project
Configurations
Configuration
Configurations(循環(huán))
Documents
Document
Window(一般窗口)
TextDocument
TextSelection
TextWindow
Window(文本窗口)
TextEditor
Windows
Debugger
Breakpoints
Breakpoint

  例如,Breakpoints對(duì)象有一個(gè)Breakpoint對(duì)象作為它的屬性之一,也就是說Breakpoints對(duì)象包含了一個(gè)或者多個(gè)Breakpoint對(duì)象。這樣就可以通過一個(gè)對(duì)象的屬性來訪問它包含的所有下屬對(duì)象。反過來,也可以通過一個(gè)對(duì)象的Parent屬性來訪問它所屬的對(duì)象。

  VC這種環(huán)境的對(duì)象封裝機(jī)制為我們開發(fā)VBScript宏和插件來擴(kuò)展VC集成開發(fā)環(huán)境的功能提供了極大的方便。下面就讓我們具體看看怎樣來開發(fā)VBScript宏和插件,利用VC的Automation機(jī)制,增強(qiáng)VC開發(fā)環(huán)境的功能,以方便自己日常的開發(fā)工作。

VBScript宏
VBScript宏是使用VBScript語(yǔ)言寫的不帶參數(shù)的過程。VBScript宏不單單可以用在VC里,在微軟的Office工具里也可以使用。我們可以使用宏來極大地簡(jiǎn)化VC里的一些工作,例如組合一些命令、進(jìn)行一些快速編輯或者自動(dòng)進(jìn)行一些復(fù)雜的處理等等。VBScript宏以Sub語(yǔ)句開始,然后是執(zhí)行一些操作的VBScript語(yǔ)句,以End Sub語(yǔ)句結(jié)束。

我們先來看一個(gè)具體的宏。下面是快速創(chuàng)建一個(gè)C/C++文件的VBScript宏。
Sub CreateCPPFile
Set CPPDoc = Document.Add("Text")
CPPDoc.Language = dsCPP
End Sub

從這個(gè)簡(jiǎn)單的宏,我們可以看到:
* Sub語(yǔ)句開始一個(gè)宏的定義,這個(gè)宏的名字是CreateCPPFile。宏的名字是任意的,可以選擇易于記憶的名字。
* 宏的第一行使用Documents對(duì)象的Add方法,往Documents對(duì)象里增加了一個(gè)Document對(duì)象,從而創(chuàng)建了一個(gè)新文件。
* 宏的第二行通過設(shè)置Document對(duì)象的Language屬性為常量dsCPP(代表C/C++),指定該文件的類型是C/C++文件。
* End Sub語(yǔ)句結(jié)束這個(gè)宏。
得到一個(gè)VBScript宏有兩個(gè)途徑:記錄或者手工書寫。最簡(jiǎn)單、最容易的方法當(dāng)然是記錄啦!在你記錄一個(gè)宏的時(shí)候,宏記錄器跟蹤你的動(dòng)作,把這些動(dòng)作轉(zhuǎn)換成VBScript語(yǔ)句,然后把這些語(yǔ)句插入到宏里面。

  VC提供了兩種宏記錄的方法:正常宏記錄和快速宏記錄。
快速宏記錄則可以快速記錄你的一些動(dòng)作,而不需要命名、描述或者編輯這個(gè)宏,但是只可以保存一個(gè),重新記錄將刪掉原來的快速宏。記錄快速宏的簡(jiǎn)單過程如下:(1)選擇Tools菜單里的Record Quick Macro命令;(2)執(zhí)行需要記錄的動(dòng)作,在執(zhí)行動(dòng)作的過程中可以使用宏記錄器工具條上的Pause暫停按鈕來臨時(shí)中斷記錄或者繼續(xù)記錄;(3)完成所有動(dòng)作后,點(diǎn)擊宏記錄器工具條上的Stop按鈕即可。需要使用這個(gè)快速宏,選擇Tools菜單的Play Quick Macro命令即可。

  如果你想要記錄一個(gè)復(fù)雜的宏,而且要進(jìn)行一些編輯,那就要使用正常的宏記錄了。錄制正常宏的過程如下:(1)選擇Tools菜單的Macro命令打開宏管理器,如圖1所示;(2)如果需要把宏加到一個(gè)新的宏文件里,點(diǎn)擊Options按鈕,點(diǎn)擊New File按鈕,然后在Macro File框里填入文件名字;如果需要把宏加到一個(gè)已有的文件里,則從Macro File的下拉框里選擇文件;(3)在Macro Name框里寫入宏的名字;(4)點(diǎn)擊Record按鈕;(5)在Add Macro對(duì)話框里寫入宏的描述,點(diǎn)擊OK按鈕;(5)執(zhí)行需要記錄的動(dòng)作,中間可以點(diǎn)擊Pause按鈕暫停或者繼續(xù);(6)點(diǎn)擊Stop按鈕完成錄制,這時(shí)候VC將打開宏文件,并且把光標(biāo)停在宏的起始點(diǎn),你可以對(duì)宏進(jìn)行檢查或者編輯。

圖1
  也可以往一個(gè)新的或者已有的宏文件里添加代碼,直接手工寫一個(gè)宏。步驟如下:(1)選擇Tools菜單的Macro命令打開宏管理器;(2)選擇宏文件或者新建宏文件;(3) 在Macro Name框里寫入宏的名字;(4)點(diǎn)擊Edit按鈕;(5)在Add Macro對(duì)話框里寫入宏的描述,點(diǎn)擊OK按鈕,VC將打開宏文件,在文件的尾部為新的宏創(chuàng)建一個(gè)架子-Sub塊,如下所示(假設(shè)宏的名字為MyMacro):
Sub MyMacro()
'Description: The macro description goes here
'TODO: Insert the macro code here.
//這一段是自己編寫的,為選中的文本加C語(yǔ)言的注釋符號(hào)
ActiveDocument.Selection = "/*" + ActiveDocument.Selection + "*/"
End Sub
你就可以往這個(gè)架子里填寫入具體操作了。

  在記錄或者編寫好宏以后,宏將被保存在一個(gè)文本文件-宏文件里。在你開始記錄或者編寫新的宏的時(shí)候,需要選擇宏文件。宏文件的擴(kuò)展名為.DSM,包含了一個(gè)或者多個(gè)VBScript宏,數(shù)量看需要而定。宏文件的一般格式是:開始是對(duì)這個(gè)文件的一些描述,然后就是每個(gè)宏的具體定義。

  在VC里使用宏文件需要先安裝。一旦安裝了以后,每次啟動(dòng)VC的時(shí)候都會(huì)自動(dòng)裝載這些宏,可以在所有的項(xiàng)目里使用,不依賴于項(xiàng)目。安裝宏文件的方法如下:(1)選擇Tools菜單的Customize命令;(2)選擇Add-ins and Macro Files頁(yè)簽,如圖2所示,如果宏文件的名字沒有出現(xiàn)在窗口里,則點(diǎn)擊Browse按鈕去定位。(3)在窗口里打勾選上需要安裝的宏文件即可;如果取消選擇某個(gè)宏文件,則會(huì)卸載這個(gè)宏文件。

圖2
  有了VBScript宏,只要運(yùn)行它即可以自動(dòng)幫你完成所需要的操作啦!如果需要經(jīng)常運(yùn)行某個(gè)宏,那么可以為這個(gè)宏分配一個(gè)工具條按鈕或者熱鍵,這樣就可以通過點(diǎn)擊按鈕或者按熱鍵方便地運(yùn)行這個(gè)宏了。分配按鈕的具體設(shè)置是:(1)選擇Tools按鈕的Customize命令;(2)選擇Commands頁(yè)簽;(3)在Category框里選擇Macros;(4)在Commands框里,把要分配工具條按鈕的宏直接拖放到工具條上;(5)這時(shí)會(huì)彈出一個(gè)Button Appearance對(duì)話框,如圖3所示,為這個(gè)按鈕選擇一個(gè)合適的位圖,點(diǎn)擊OK即可,VC將在工具條上添加上這個(gè)宏的一個(gè)按鈕。分配熱鍵的方法是:(1)選擇Tools按鈕的Customize命令;(2)選擇Keyboard頁(yè)簽;(3)在Category框里選擇Macros;(4)在Commands框里,選擇要分配熱鍵的宏;(5)點(diǎn)擊Press new shortcut key框,按下熱鍵,然后點(diǎn)擊Assign按鈕就可以了。

圖3

VC插件 
  前面提到,VBScript宏和VC插件都可以用來擴(kuò)展VC集成開發(fā)環(huán)境的功能,美觀、改造VC的界面,但是它們是有區(qū)別的。主要的區(qū)別當(dāng)然在于:VBScript宏是使用VBScript語(yǔ)言寫的過程,而VC插件則是使用VC或者Visual Basic開發(fā)的COM構(gòu)件。
開發(fā)VBScript宏比開發(fā)插件容易多了。生成一個(gè)VBScript宏只需要記錄宏、增加一些代碼(需要的話),然后運(yùn)行就可以了。而生成一個(gè)插件需要VC來編寫代碼,編譯成DLL,然后與VC的集成開發(fā)環(huán)境連接(安裝插件),才能使用它提供的功能。
VBScript宏在功能上弱于插件。在宏里面,只能夠使用VBScript語(yǔ)言,只能訪問VC集成開發(fā)環(huán)境的對(duì)象;而插件則可以使用更多的語(yǔ)言(VC、VB),不僅能使用VC集成開發(fā)環(huán)境的對(duì)象,還可以使用整個(gè)計(jì)算機(jī)系統(tǒng)的資源。例如,宏里面與用戶交互只能使用VBScript提供的兩個(gè)對(duì)話框InputBox和MsgBox,而插件則可以使用任何形式的對(duì)話框。

  從VBScript宏與插件的這些區(qū)別可以知道:如果使用VBScript宏可以完成的任務(wù),建議盡量使用VBScript宏,因?yàn)殚_發(fā)一個(gè)VBScript宏比開發(fā)一個(gè)插件要簡(jiǎn)單得多、快得多。VC插件更適合于用來提供復(fù)雜的功能,例如:全局查找替換、保存所有的文件并編譯、把VC的窗口變成頁(yè)簽式界面(如圖4所示)等等。

圖4

開發(fā)插件的基本步驟如下:
  首先,需要設(shè)計(jì)插件。要確定:插件的功能、是否可以采用VBScript宏來實(shí)現(xiàn)(如果可以,就不開發(fā)這個(gè)插件而選擇宏)、插件提供哪些功能、需要使用哪些集成開發(fā)環(huán)境的對(duì)象、需要使用哪些屬性和方法、需要幾個(gè)插件、是否需要使用對(duì)話框、使用什么對(duì)話框、是否需要使用別的插件、是否需要使用別的應(yīng)用等等。

  其次,需要確定使用什么語(yǔ)言來開發(fā)插件。現(xiàn)在Visual C++、Visual Basic的4.0以上的版本都支持VC插件的開發(fā)。VC專門為插件開發(fā)提供了一個(gè)向?qū)В梢詭湍阃瓿纱蟛糠值墓ぷ鳌H绻褂肰isual Basic的話,則需要使用一些類型庫(kù)來訪問VC集成開發(fā)環(huán)境的對(duì)象。因此,建議你使用VC來開發(fā)比較方便。

  接著,需要?jiǎng)?chuàng)建一個(gè)插件的項(xiàng)目。使用VC的插件向?qū)В驅(qū)⒆詣?dòng)創(chuàng)建一個(gè)項(xiàng)目。如果使用VB來開發(fā)插件,最好以一個(gè)例子為基礎(chǔ)。

  項(xiàng)目創(chuàng)建了以后,就需要編寫代碼了。如果使用了VC的插件向?qū)Щ蛘咭訴B的一個(gè)例子為基礎(chǔ)的話,那么大部分代碼已經(jīng)有了,你只需要加入具體處理的一些代碼即可。

  然后,把項(xiàng)目編譯連接成DLL,可以把多個(gè)插件合并在一個(gè)DLL里。最后,在VC里安裝這個(gè)插件就可以使用了。運(yùn)行命令行命令、點(diǎn)擊插件提供的工具條按鈕或者按插件提供的熱鍵就可以使用插件了。

  VC 5.0以上的版本專門為插件的開發(fā)提供了一個(gè)插件向?qū)А?梢允褂眠@個(gè)向?qū)лp松、快速地生成插件的基本代碼,然后根據(jù)自己的需要進(jìn)行修改。使用VC的插件向?qū)нM(jìn)行插件開發(fā)的步驟如下:
首先,設(shè)計(jì)插件。接著,使用插件向?qū)尚碌牟寮?xiàng)目:(1)選擇File菜單的New命令;(2)在New對(duì)話框里,選擇Projects頁(yè)簽;(3)在窗口里選擇Developer Studio Add-in Wizard,在Project Name框里填入項(xiàng)目的名字,然后點(diǎn)擊OK;(4)這時(shí)進(jìn)入插件向?qū)?見圖5),為插件填寫名字和描述;如果插件需要工具條按鈕,則選上Provides a toolbar選項(xiàng);如果插件需要處理VC集成開發(fā)環(huán)境對(duì)象的事件,則選上Responds to Developer Studio events選項(xiàng),向?qū)槊總(gè)事件添加一個(gè)代碼框架,你必須為需要的事件提供具體的處理;點(diǎn)擊OK;(5)在彈出的New Project Information對(duì)話框里檢查向?qū)Ъ磳⑸傻奈募绊?xiàng)目目錄,確認(rèn)正確后點(diǎn)擊OK就生成插件項(xiàng)目了。

圖5
然后,定制插件的功能或者增加新的功能。插件向?qū)ё詣?dòng)生成了添加一個(gè)功能到VC集成開發(fā)環(huán)境的代碼,但是如果你需要定制或者添加更多的功能的話,則要修改代碼,這個(gè)與普通應(yīng)用開發(fā)是一樣的。修改需要使用到Application對(duì)象的三個(gè)方法:使用AddCommand方法添加一個(gè)功能;使用AddCommandBarButton方法添加一個(gè)工具條按鈕;使用AddKeyBinding方法來添加一個(gè)熱鍵。具體的做法請(qǐng)參照VC插件開發(fā)的幫助。

  這里需要簡(jiǎn)單說明一下VC集成開發(fā)環(huán)境與插件之間的關(guān)系,如圖6所示。每一個(gè)插件都向外提供了兩個(gè)對(duì)象DSAddIn和Commands。VC的集成開發(fā)環(huán)境使用DSAddIn對(duì)象來裝載或者卸載一個(gè)插件,使用Commands對(duì)象來執(zhí)行插件提供的功能。具體來說,VC是調(diào)用插件的DSAddIn對(duì)象的OnConnection方法來裝載插件的,這個(gè)方法還發(fā)布了插件向外提供的功能接口,如果插件包含了事件的處理,還把連接到VC集成環(huán)境的事件上。VC調(diào)用DSAddIn對(duì)象的OnDisconnection方法來卸載插件。Commands對(duì)象則包含了AddCommand所加入的每一個(gè)功能接口,編寫插件的時(shí)候必須為每一個(gè)功能接口編寫代碼。

圖6

  最后,把插件編譯連接成DLL。安裝插件的方法是:(1)選擇Tools菜單的Customize命令;(2)選擇Add-ins and Macro Files頁(yè)簽,如果插件的名字沒有出現(xiàn)在窗口里,則點(diǎn)擊Browse按鈕去定位。(3)在窗口里打勾選上需要安裝的插件即可;如果取消選擇某個(gè)插件,則會(huì)卸載這個(gè)插件。插件安裝了以后,VC每次啟動(dòng)都會(huì)自動(dòng)裝載這個(gè)插件,你就可以使用這個(gè)插件提供的功能來為自己的應(yīng)用開發(fā)服務(wù)了。

共1 條記錄, 每頁(yè)顯示 10 條, 頁(yè)簽: [1]

Copyright © 2000 - 2009 曙海教育集團(tuán)
Powered By 曙海教育集團(tuán) Version 2.2
Processed in .03125 s, 2 queries.
久久精品在这里_成人99免费视频_国产激情视频一区二区在线观看_国产伦精品一区二区三区免费 _亚洲午夜免费福利视频_色狠狠色狠狠综合_av在线综合网_91毛片在线观看_欧美视频一区二区在线观看_极品美女销魂一区二区三区免费_国产亚洲欧美激情_在线免费观看不卡av_日韩不卡一区二区三区_91精品国产麻豆国产自产在线_亚洲国产精品一区二区久久恐怖片_a4yy欧美一区二区三区
亚洲美女网站18| 国产xxx精品视频大全| 欧美一级高清片在线观看| 亚洲人成网站在线播放2019| av网站免费线看精品| 国产一区激情在线| 国产一区二区在线免费观看| 一区二区三区四区视频精品免费 | 亚洲成人在线观看视频| 亚洲欧美另类小说| 亚洲精品视频一区二区| 亚洲美女淫视频| 一级中文字幕一区二区| 一区二区三区精密机械公司| 亚洲二区在线观看| 亚洲综合男人的天堂| 亚洲国产精品自拍| 日欧美一区二区| 久久精品国产亚洲高清剧情介绍 | 激情五月综合色婷婷一区二区| 亚洲国产日韩a在线播放| 亚洲高清免费观看 | 久久99久久99小草精品免视看| 久草热8精品视频在线观看| 国产一区二区免费在线| av资源网一区| 精品国产乱码久久久久久88av| 日本一区二区久久精品| 色菇凉天天综合网| 欧美一区二区三区四区五区| 久久色.com| 亚洲欧美激情视频在线观看一区二区三区 | 国产精品视频一二三区| 亚洲私人黄色宅男| 亚洲欧美色综合| 日韩中文字幕麻豆| 奇米综合一区二区三区精品视频| 国产一区二区三区在线观看免费视频| 高清在线不卡av| 99re国产在线播放| 日韩精品欧美一区二区三区| 欧美系列在线观看| 久久久久久久精| 亚洲国产cao| 国产成人综合在线播放| 国产视频在线观看一区| 久久亚洲影视婷婷| 91精品国产欧美一区二区成人| 亚洲日本在线天堂| 粉嫩蜜臀av国产精品网站| 视频一区二区三区在线观看| 精品国产精品一区二区夜夜嗨 | 国产99久久久国产精品潘金| 日韩资源av在线| 国产色产综合产在线视频| 韩国在线一区二区| 一本一生久久a久久精品综合蜜| 国产欧美一区二区精品性色超碰| 国内精品写真在线观看| 一区二区日本| 一区二区三区四区中文字幕| 91捆绑美女网站| 91精品婷婷国产综合久久竹菊| 午夜欧美大尺度福利影院在线看| 国产一区免费| 久久久久97国产精华液好用吗| 国模大尺度一区二区三区| 亚洲欧洲精品一区二区| 国产精品免费视频网站| 93久久精品日日躁夜夜躁欧美| 欧美精品一级二级三级| 麻豆精品一区二区三区| 亚洲一一在线| 性做久久久久久| 日韩免费电影一区二区| 亚洲男人电影天堂| 精品一区二区不卡| 国产精品福利一区| 国产高清一区视频| 中文字幕成人网| 91美女在线看| 久久久亚洲精品一区二区三区| 国产成人免费9x9x人网站视频| 91福利在线播放| 老司机午夜精品99久久| 欧美性猛交xxxx黑人交| 人人精品人人爱| 日本精品视频一区二区| 蜜臀精品久久久久久蜜臀| 色综合久久综合网97色综合| 午夜精品aaa| 在线精品视频免费播放| 美女网站一区二区| 欧美日韩大陆一区二区| 狠狠色狠狠色综合系列| 欧美精品在欧美一区二区少妇| 国产精品一区在线| 日韩精品自拍偷拍| 99久久国产免费免费| 国产亚洲欧美中文| 国产一区二区不卡视频在线观看| 国产精品九色蝌蚪自拍| 欧美日韩国产精品一卡| 亚洲第一av色| 亚洲国产日日夜夜| 日韩欧美亚洲在线| 日韩成人免费看| 欧美电影影音先锋| 91在线国产福利| 日韩理论片网站| 亚洲欧洲精品在线| 韩国成人在线视频| 亚洲精品在线网站| 精品午夜一区二区三区| 午夜精品aaa| 欧美电影在哪看比较好| 97久久精品人人爽人人爽蜜臀| 国产精品久久久久一区二区三区| 欧美一区二区影视| 久久精品久久综合| 久久天天做天天爱综合色| 精选一区二区三区四区五区| 亚洲国产精品久久久久秋霞影院| 欧美视频在线观看一区| 成人激情小说网站| 亚洲日本韩国一区| 欧美综合天天夜夜久久| 1区1区3区4区产品乱码芒果精品| 亚洲毛片av在线| 欧美人牲a欧美精品| 97在线电影| 三级亚洲高清视频| 欧美精品一区二区三区久久久| 久久久国产精品一区二区三区| 日韩电影一区二区三区| 久久久一区二区三区捆绑**| 色乱码一区二区三在线看| 国产福利精品一区二区| 最新国产成人在线观看| 欧美日韩一区二区三区不卡| 成人欧美一区二区三区视频xxx| 亚洲国产精品一区二区www在线| 日韩欧美自拍偷拍| 色噜噜狠狠色综合网| 不卡电影一区二区三区| 亚洲国产一区视频| 久久综合九色综合久久久精品综合 | 成人午夜视频福利| 亚洲精品免费在线| 91精品国产一区二区三区| 精品乱码一区| 国产酒店精品激情| 亚洲精品国产精品乱码不99 | 一区二区成人国产精品 | 欧美日韩国产免费一区二区三区| 麻豆精品久久久| 亚洲天堂网中文字| 日韩西西人体444www| 日产精品一线二线三线芒果| www.av亚洲| 日本色综合中文字幕| 国产精品美女久久福利网站| 欧美精品第1页| 亚洲成色www久久网站| 97久草视频| 精品一二线国产| 亚洲自拍与偷拍| 欧美激情一区在线| 日韩精品一区二区三区在线播放| 亚洲精品一区二区三区av| 国产精品久久久久久久久久久久午夜片 | 99re成人在线| 极品美女销魂一区二区三区免费| 亚洲一区在线观看视频| 国产精品网站在线播放| 精品电影一区二区| 欧美日韩黄视频| 色噜噜久久综合| 亚洲春色在线| 欧美亚洲另类久久综合| yy111111少妇影院日韩夜片| 成人激情动漫在线观看| 国产精品一区二区男女羞羞无遮挡| 亚洲国产日产av| 一区二区三区四区亚洲| 亚洲三级在线播放| 国产精品二三区| 国产精品日韩成人| 久久久久久免费网| 精品国产乱码久久久久久1区2区| 欧美久久久久中文字幕| 精品视频1区2区3区| 色久综合一二码| 亚洲欧美电影在线观看| 婷婷久久青草热一区二区| 日韩亚洲视频| 亚洲国产精品www| 夜夜爽99久久国产综合精品女不卡 | 91精品一区二区三区久久久久久 | 日韩毛片在线免费观看|