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

franksunny的個人技術(shù)空間
獲得人生中的成功需要的專注與堅持不懈多過天才與機(jī)會。 ——C.W. Wendte

 

如何在CarBidesymbian 3rd版本下調(diào)試控制臺程序

 

本人搭建的環(huán)境為ActivePerl-5.8.8.822 + jdk1.6.0_04 + Carbide.C++ V1.2 + S60-SDK-200634-3.1(FP1),至今環(huán)境沒有發(fā)現(xiàn)什么大問題,搭建完調(diào)試控制臺程序時發(fā)現(xiàn)問題——程序編譯能通過,但是一旦運行(Run)和調(diào)試(Debug)就沒有任何反應(yīng),后來上網(wǎng)查找解決方法:

 

第一種方法

X:\Symbian\9.1\S60_3rd_MR\Epoc32\Data下的epoc文件第一行加入textshell語句,保存后再運行simulator就會出現(xiàn)控制臺界面。

在控制臺界面下敲入:cd private 進(jìn)入private文件夾,再輸入要運行的程序的文件名(例如:engine),用console類輸出的語句就會能顯示出來。

如果要切換回GUI界面,在textshell前加上#就表示被注釋掉了,再次運行simulator就是GUI界面羅:)

注:該方法出現(xiàn)的控制臺界面與Dos環(huán)境一樣,但是本人沒有調(diào)試運行成功,因為編譯之后的路徑壓根就不在“\Epoc32\winscw”而在“\Epoc32\release\winscw\udeb”從Dos的角度看,這種情況下只有外部將*.Exe文件拷貝過去才可以用,但是拷貝之后類似Dos下執(zhí)行說是未發(fā)現(xiàn)文件。至此該方法被我中斷。

 

第二種方法:

(1)編譯控制臺(Console)程序程序。控制臺(Console)程序例子的路徑: D:\Symbian\9.2\S60_3rd_FP1\Examples\Basics\HelloWorld,在cmd命令提示符中進(jìn)入對應(yīng)的路徑,輸入bldmake bldfiles1~2秒后,該命令完成,無任何輸出。

輸出以下命令進(jìn)行編譯和鏈接:abld build winscw udeb

編譯后生成的exe文件在D:\Symbian\9.2\S60_3rd_FP1\Epoc32\release\winscw\udeb下。

 

(2)cmd命令提示符中進(jìn)入D:\Symbian\9.2\S60_3rd_FP1\Epoc32\release\winscw\udeb,輸出以下命令運行對應(yīng)的程序

HelloWorld.exe

仿真器出現(xiàn),自動運行這個控制臺(Console)程序HelloWorld

 

注:該方法是可以執(zhí)行,但是如果沒有像第一種方法那樣在“epoc.ini”文件中設(shè)置“textshell”那么出現(xiàn)的控制臺在12秒之后就退出了進(jìn)入GUI環(huán)境,另就算按第一種方法修改了“epoc.ini”文件,程序只有執(zhí)行功能沒有調(diào)試功能。

 

第三種方法:

1、為Console程序添加一個Registration RSS文件。比如: MyConsoleApp_reg.rss,其內(nèi)容如下:

#include <appinfo.rh>

UID2 KUidAppRegistrationResourceFile

UID3 0xA20001EB        // 修改這個,改為與mmp文件相匹配的UID3

 

RESOURCE APP_REGISTRATION_INFO

    {

    app_file="MyConsoleApp";        // 修改應(yīng)用程序名稱

    embeddability=KAppNotEmbeddable;

    }

 

2、修改mmp文件,添加下述內(nèi)容:

START RESOURCE MyConsoleApp_reg.rss //該文件名就是上面1修改的注冊資源文件

#ifdef WINSCW

TARGETPATH \private\10003a3f\apps      //如果只是調(diào)試只有這個路徑就可以了

#else

TARGETPATH \private\10003a3f\import\apps

#endif

END //RESOURCE

 

3、編譯,運行。

 

注:該方法既能運行也能調(diào)試,而且不用修改“epoc.ini”文件,主要是產(chǎn)生如上效果相對繁瑣點。

 

另外在這里由于有很多別人編輯的程序,可能沒有bld.inf文件只有*.mmp文件,這時在Carbide C++ v1.2下導(dǎo)入時,必須自己編寫一個bld.inf文件。至于如何編寫bld.inf文件,下面給出兩篇文檔,可以作為基礎(chǔ)知識點。

 

 

bld.inf.mmp.pkg文件淺析

http://blog.csdn.net/btooth/archive/2006/06/24/829333.aspx

時間: 2006-07-30  來自:風(fēng)生水起  

 

對于每一個項目,都必須有一個工程引導(dǎo)文件bld.inf和一個項目定義文件.mmpbld.inf文件可能引用一個或多個.mmp文件,每個.mmp文件對應(yīng)一個將要生成的組件

一、工程引導(dǎo)文件bld.inf

其實是一個腳本,它告訴build環(huán)境在做build之前需要準(zhǔn)備或知道一些什么東西,最普通的寫法是:

PRJ_MMPFILES

HelloWorld.mmp

這是告訴build環(huán)境,你馬上要處理的工程文件名字叫HelloWorld.mmp

如果做比較復(fù)雜的程序可能需要同時build所有的庫,那么就在這里把你所有需要build的工程都列出來:

PRJ_MMPFILES

Project.mmp

Project_lib1.mmp

Project_lib2.mmp

另外一個常用的標(biāo)記是PRJ_PLATFORMS。它告訴編譯環(huán)境,以下的這些平臺(Targets)是需要編譯的。

PRJ_PLATFORMS

WINS ARMI WINSCW

或者直接使用:

PRJ_PLATFORMS

DEFAULT

注意:如果在bld.inf中不做PRJ_PLATFORMS標(biāo)記,其效果相當(dāng)于PRJ_PLATFORMS DEFAULT,也就是說這個標(biāo)記不是必須的

第三個常用標(biāo)記是PRJ_EXPORTS它告訴編譯器在編譯之前需要把哪些文件先拷貝到指定位置。舉個例子,如果你的工程里面需要include一個第三方的*.inl文件,那么如果編譯之前這個文件不存在就會編譯不過,那么可以這樣寫:

PRJ_EXPORTS

.\nk_set.inl \epoc32\include

那么,編譯時,一個perl腳本會首先把你工程目錄下的nk_set.inl文件拷貝到\epoc32\include目錄下,然后再編譯。

大多數(shù)的bld.inf文家需要這三個標(biāo)記就夠了,還有一點小技巧,就是可以在其中使用#if   else等東西,比如:

#if defined(WINS)

…….//注意沒有{ }

else

…….

#endif

 

二、項目定義文件.mmp

這個文件的內(nèi)容要比bld.inf文件復(fù)雜的多。

先看一下HelloWorldbasic.mmp文件的內(nèi)容:

TARGET            HelloWorldBasic.app

TARGETTYPE        app

UID               0x100039CE 0x10005B91

TARGETPATH        \system\apps\helloworldbasic

SOURCEPATH        ..\src

SOURCE            HelloWorldBasic.cpp

SOURCE            HelloWorldBasicApplication.cpp

SOURCE            HelloWorldBasicAppView.cpp

SOURCE            HelloWorldBasicAppUi.cpp

SOURCE            HelloWorldBasicDocument.cpp

SOURCEPATH        ..\group

RESOURCE          HelloWorldBasic.rss

USERINCLUDE       ..\inc

SYSTEMINCLUDE     \epoc32\include

LIBRARY           euser.lib

LIBRARY           apparc.lib

LIBRARY           cone.lib

LIBRARY           eikcore.lib 

LIBRARY           avkon.lib 

.mmp文件以平臺無關(guān)和編譯器無關(guān)的方法指定項目組件的屬性。

1TARGET:應(yīng)用程序的名稱,該名稱必須具有正確的文件擴(kuò)展名:.exe.app.dll

2TARGETTYPE:定義為app(該選項確定UID1的值),意味著這是一個GUI應(yīng)用程序,還存在許多其他類型,包括dllexetsycsyldd

3UID:指定GUI應(yīng)用程序的唯一系統(tǒng)標(biāo)志符。

4TARGETPATH:最終生成的應(yīng)用程序及其組件所在的位置,總是位于\system\apps\下面,該目錄相對于設(shè)備驅(qū)動器、模擬驅(qū)動盤(例如C:)或模擬ROMZ:)驅(qū)動盤的根目錄

5SOURCEPATH:項目源文件的位置路徑。

6LANG:若應(yīng)用程序支持不同語言,則使用該語句。每種支持的語句具有兩位數(shù)字的代碼,例如01表示英語,02表示法語,03表示德語。

7SOURCE:指定項目源文件的名稱。可以多次使用該語句,并且在每條語句上可以有多個文件名。

8RESOURCE:指定資源文件。

9USERINCLUDESYSTEMINCLUDE:指定應(yīng)用程序特有的頭文件的位置。

10LIBRARY:列出需要鏈接的應(yīng)用程序框架和圖形庫――這些是對應(yīng)于共享庫DLL.lib文件,將在運行時調(diào)用這些DLL函數(shù)。

11AIF:指定應(yīng)用程序信息文件(.aif),該文件包含應(yīng)用程序資源文件中定義的圖標(biāo)和其他應(yīng)用程序?qū)傩浴?/span>

針對于項目定義文件,我們看一下其中部分關(guān)鍵詞的詳細(xì)解釋:

1 UID:全球唯一性標(biāo)志符,由32位二進(jìn)制數(shù)字構(gòu)成。在symbian os中,通過UID類型標(biāo)志對象,UID類型具有3個組件UIDUID1UID2UID3

UID1:確定文件是文檔還是可執(zhí)行碼,應(yīng)將它看作一個系統(tǒng)級的標(biāo)志符,用于區(qū)分可執(zhí)行文件、DLL等文件。.mmp文件中的TARGETTYPE語句確定UID1

UID2:對于文檔文件,UID2確定文檔類型(應(yīng)用程序數(shù)據(jù)文件或.aif文件)。對于可執(zhí)行代碼文件,UID2確定可執(zhí)行文件的類型(.app.dll.tsy)。對于可執(zhí)行文件,在.mmp文件中的UID行上指定UID2UID3。(UID不是很重要,可以考慮別從的類似文件拷一個過來,也可以隨便寫一個,目前我還沒有因為這個產(chǎn)生過錯誤,所以不用深究

UID3:是一個應(yīng)用程序級的標(biāo)志符,應(yīng)用程序的UID3必須不同于其他所有應(yīng)用程序。只有symbian才可以發(fā)布這些值。通過電子郵件到symbian獲取,開發(fā)實驗時,可以使用0x01000000~0x0FFFFFFF,但發(fā)布時不能再使用。

Symbian os使用UID將文檔(數(shù)據(jù)文件)和.aif文件與它們各自的應(yīng)用程序關(guān)聯(lián)起來;UID3包含在每個數(shù)據(jù)文件、可執(zhí)行文件或.aif文件的頭部。然而,可執(zhí)行文件和它們的組件仍然需要具有正確的文件擴(kuò)展名,否則它們將無法正確運行。

當(dāng)應(yīng)用程序創(chuàng)建文檔文件時,應(yīng)用程序框架將所有的3UID32位的檢查總數(shù)自動合并到頭文件的前16個字節(jié)。

2AIF文件

在運行時使用.aif文件,并且存儲關(guān)于應(yīng)用程序的數(shù)據(jù)。包括:

a、兩種大小的圖標(biāo)

b、各種功能,例如文檔嵌入、新文件的建立、是否隱藏應(yīng)用程序以及MIME類型支持的優(yōu)先級。

c、可選地使用支持語言的應(yīng)用程序標(biāo)題(名稱)。

如果沒有.aif文件,應(yīng)用程序?qū)⑹褂媚J(rèn)的圖標(biāo)、以應(yīng)用程序名稱(省略擴(kuò)展名)作為標(biāo)題。

圖標(biāo):

網(wǎng)格和列表視圖使用42×29象素的圖標(biāo),然而狀態(tài)面板的上下文面板(當(dāng)應(yīng)用程序具有焦點時顯示在屏幕的頂部)使用44×44的圖標(biāo)。

提供不同的圖標(biāo)大小有助于確保系統(tǒng)可以使用最合適的大小。如果只提供一種大小,那么顯示時就會縮放,損壞圖標(biāo)質(zhì)量。

這種位圖文件格式稱為多重位圖文件格式(.mbm),有相應(yīng)的工具Aifbuilder來設(shè)計這種位圖

AIF文件本地化:

如果應(yīng)用程序根據(jù)不同的語言而提供不同的圖標(biāo),通過使用擴(kuò)展名.axx保存產(chǎn)生的每個本地化.aif文件,其中xx是與適當(dāng)?shù)貐^(qū)關(guān)聯(lián)的兩位數(shù)字語言碼。

標(biāo)題:

Series60 UI和應(yīng)用程序框架Avkon提供了將標(biāo)題和應(yīng)用程序關(guān)聯(lián)的可選功能――相比于一般通過.aif文件提供標(biāo)題的功能,應(yīng)該優(yōu)先使用這種功能。默認(rèn)情況下,系統(tǒng)將使用.aif文件中的標(biāo)題。然而,很可能應(yīng)用程序創(chuàng)建一個單獨的標(biāo)題文件,同時包含普通長度標(biāo)題和簡短標(biāo)題――簡短標(biāo)題用于網(wǎng)格視圖,普通標(biāo)題用于列表視圖。使用創(chuàng)建普通GUI資源文件的方法得到標(biāo)題文件。對于HelloWorld項目,標(biāo)題源文件是HelloWorld_caption.rss,在運行時使用二進(jìn)制輸出文件為HelloWorld_caption.rsc。如果需要,可以為每種語言產(chǎn)生單獨的標(biāo)題文件。

通過將額外的行添加到應(yīng)用程序的.mmp文件:

RESOURCEHelloWorld_caption.rss

 

三、.pkg文件

pkg文件也就是安裝包配置文件,是制作Symbian OS安裝程序的核心部分。它包含了制作安裝文件所需要的全部信息。為了生成.sis文件,必須首先編寫.pkg文件。因此制作Symbian程序安裝文件的過程,實際上主要就是編寫pkg文件的過程。pkg文件像Symbian的資源文件一樣,有自己完整的語法體系,掌握了pkg文件的語法,就基本上掌握了制作安裝程序的大部分知識,所以熟悉pkg文件的結(jié)構(gòu),對于制作安裝程序來說,是非常重要的。

舉例(HelloWorld.pkg):

;

; Installation file for HelloWorld application

;

;Languages

&EN

;

; UID is the app's UID

;

#{"HelloWorld"},(0x0D0A2843),1,0,0

;

;Supports Series 60 v 2.0

;This line indicates that this installation is for the Series 60 platform v2.0

;This line must appear _exactly_ as shown below in the sis file

;If this line is missing or incorrect, the sis file will not be able

;to be installed on Series 60 v2.0 platforms

(0x101F7960), 0, 0, 0, {"Series60ProductID"}

;

; Four files to install

; Symbols set up for the source location are Carbide.c++ specific symbols

"$(EPOCROOT)epoc32\release\$(PLATFORM)\$(TARGET)\HelloWorld.app"         -"!:\system\apps\HelloWorld\HelloWorld.app"

"$(EPOCROOT)epoc32\data\z\system\apps\HelloWorld\HelloWorld.rsc"         -"!:\system\apps\HelloWorld\HelloWorld.rsc"

"$(EPOCROOT)epoc32\data\z\system\apps\HelloWorld\HelloWorld_caption.rsc" -"!:\system\apps\HelloWorld\HelloWorld_caption.rsc"

"$(EPOCROOT)epoc32\data\z\system\apps\HelloWorld\HelloWorld.aif"         -"!:\system\apps\HelloWorld\HelloWorld.aif"

這個pkg文件是完整的,只要把文件目錄適當(dāng)調(diào)整一下,就可以可以使用了。

下面對這個文件的各個部分依次做一些解釋說明:

以分號開始的行,是注釋。這些注釋主要是給開發(fā)人員看的,生成器會忽略它們。

&EN,表示安裝程序使用的語言。EN表示使用美國英語,具體的代碼的意義可以在SDK中查到,這里不詳細(xì)列出。sis文件支持多語言安裝,可以在這里進(jìn)行設(shè)置,比如,&EN,FR,IT,表示是多語言的。對于多語言的安裝程序,有一些語法和規(guī)則與其對應(yīng),具體的使用方法請查閱SDK。如果你只是希望可以做出一個安裝程序,那么使用&EN就可以,不過需要保證后面出現(xiàn)的字符串部分使用英文字母。

#{"HelloWorld"},(0x0D0A2843),1,0,0這是標(biāo)準(zhǔn)Symbian SIS文件的頭部。所有的pkg都必須包含這行,而且必須在語言設(shè)置的后面。其中HelloWorld是程序的名字,在安裝過程中,可能會使用。0x0D0A2843,是所開發(fā)程序的UID,具體點說就是mmp文件中UID項的后面那個數(shù)字。接下來的數(shù)字,依次是主版本號,副版本號,和創(chuàng)建號,這些號碼用于安裝程序的版本控制

(0x101F7960), 0, 0, 0, {"Series60ProductID"}這一句說明了這個程序在安裝之前需要準(zhǔn)備的組件,實際上就是要求必須是Series60的平臺。如果還需要其它的組件,也需要在這里說明。0x101F7960,是組件的UID,它其實表示的是S60 2.0的平臺,對于S60 2.1的平臺,應(yīng)該是0x101F9115000分別是主副版本號和創(chuàng)建號,Series60ProductID則是當(dāng)需要顯示的時候用于向用戶顯示的說明文字。

最后就是實際操作的語句了。第一個雙引號中的是文件的源位置,它指的是編譯后的文件在PC中的位置。你可以使用絕對位置,也可以像例子那樣使用相對位置。第二個雙引號中的是文件在目標(biāo)機(jī)器中的位置。“!:”表示由用戶來選擇安裝在哪個驅(qū)動器下面,如果不想由用戶指定,可以使用“C:”,表示安裝在電話的C驅(qū)動下面。這兩行語句表示的意思就是將指定位置的文件復(fù)制到電話的指定位置中。還有很豐富的語法,請查看S60SDK

 

以上文檔講的是第二版的東西,轉(zhuǎn)移到第三版之后,需要做一些修改,具體如何修改,諾基亞有一篇詳盡的文檔,文檔地址

http://www.forum.nokia.com/info/sw.nokia.com/id/6190aad6-3b3b-4a6a-a53a-221e61c94248/S60_Platform_Porting_from_2nd_to_3rd_Edition_v1_1_en.pdf.html

由于本人英語太差就不多做翻譯了。另網(wǎng)上有一篇某研究生翻譯的東東,雖然斷章取義但是如果E文太差,對照著E文看一下也不錯。

 

另外第三版的UID有點新東西也在這里說明下:

Symbain的程序主要是用UID標(biāo)識的,在v9.0UIDs分為兩類,ProtectedUnprotected

UID

Class

Range

Purpose

Protected Range

0

0x00000000 - 0x0FFFFFFF

Development use only

1

0x10000000 - 0x1FFFFFFF

Legacy UID allocations

2

0x20000000 - 0x2FFFFFFF

V9 protected UID allocations

3

0x30000000 - 0x3FFFFFFF

Reserved

4

0x40000000 - 0x4FFFFFFF

Reserved

5

0x50000000 - 0x5FFFFFFF

Reserved

6

0x60000000 - 0x6FFFFFFF

Reserved

7

0x70000000 - 0x7FFFFFFF

Vendor IDs.

Unprotected Range

8

0x80000000 - 0x8FFFFFFF

Reserved

9

0x90000000 - 0x9FFFFFFF

Reserved

A

0xA0000000 - 0xAFFFFFFF

V9 unprotected UID allocations

B

0xB0000000 - 0xBFFFFFFF

Reserved

C

0xC0000000 - 0xCFFFFFFF

Reserved

D

0xD0000000 - 0xDFFFFFFF

Reserved

E

0xE0000000 - 0xEFFFFFFF

Development use only

F

0xF0000000 - 0xFFFFFFFF

Legacy UID compatibility range

如果開發(fā)一些Symbian的項目,將來要簽名的使用Protected UID,程序必須簽名才能安裝在真機(jī)上。Unprotected可以用來做一些測試、教學(xué)程序。

每個應(yīng)用程序都有3UIDuid1用于表示Symbian OS平臺程序的類型:For EXE uid1 = 0x1000007A  For DLL&APP uid1 = 0x10000079For ECom Plugin 0x10009D8DUID2一般都去固定值0x100039CE,我也沒有弄清楚具體的作用。UID3標(biāo)識應(yīng)用程序。SID的取值和UID3一樣。VID一般都取默認(rèn)的0UID都在程序的MMP中定義。

 

posted on 2008-03-11 19:57 frank.sunny 閱讀(2545) 評論(0)  編輯 收藏 引用 所屬分類: symbian 開發(fā)

常用鏈接

留言簿(13)

隨筆分類

個人其它博客

基礎(chǔ)知識鏈接

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            久久人人97超碰人人澡爱香蕉 | 夜夜精品视频| 久久最新视频| 久久激情网站| 久久免费少妇高潮久久精品99| 亚洲免费在线观看视频| 亚洲一区在线观看免费观看电影高清| 亚洲精品影视| 亚洲免费精彩视频| 在线亚洲+欧美+日本专区| 一本色道久久99精品综合 | 欧美—级a级欧美特级ar全黄| 欧美极品一区| 国产精品青草久久| 精品69视频一区二区三区| 亚洲国产精品一区二区第四页av| 亚洲精品少妇网址| 欧美亚洲视频在线观看| 美女网站久久| 亚洲毛片网站| 久久精品国产欧美激情| 欧美高清在线一区| 国产精品久久久久999| 黄网站免费久久| 一区二区久久久久| 久久久国产精品亚洲一区| 另类春色校园亚洲| 日韩视频一区二区| 午夜日韩福利| 欧美人在线观看| 国产精品超碰97尤物18| 国产精品草莓在线免费观看| 国产精品高清网站| 国产精品三级视频| 欧美日韩一区视频| 欧美特黄一级| 久久精品日产第一区二区| 亚洲国产精品久久人人爱蜜臀 | 噜噜噜在线观看免费视频日韩| 亚洲欧美清纯在线制服| 亚洲毛片av| 亚洲精品视频在线| 一区二区欧美日韩| 在线午夜精品自拍| 亚洲欧美激情视频在线观看一区二区三区| 免费人成网站在线观看欧美高清| 亚洲免费综合| 亚洲欧美日韩直播| 亚洲一区久久久| 制服丝袜亚洲播放| 亚洲一区精品在线| 久久福利资源站| 久久久蜜桃一区二区人| 欧美成va人片在线观看| 欧美黄色小视频| 欧美天天影院| 老司机一区二区三区| 亚洲一区二区三区高清 | 久久夜色精品国产欧美乱极品| 欧美在线中文字幕| 久久精品成人欧美大片古装| 久久中文精品| 欧美91精品| 亚洲国产三级在线| 亚洲精品国产精品国自产观看浪潮| 亚洲全黄一级网站| 亚洲中无吗在线| 久久人人爽爽爽人久久久| 欧美电影美腿模特1979在线看 | 欧美成黄导航| 亚洲国内精品在线| 亚洲尤物在线| 久久久久久久久久久久久久一区| 玖玖综合伊人| 久久国产免费看| 99国产精品国产精品久久| 欧美一区二区三区免费视| 欧美成人一品| 国产欧美日韩一区| 亚洲伦理在线| 欧美在线视频a| 欧美国产日韩二区| 亚洲一区日韩| 欧美日韩国产美| 国产日韩欧美在线播放| 亚洲美女少妇无套啪啪呻吟| 亚洲综合另类| 亚洲国产99| 欧美一区二区在线免费观看| 麻豆91精品91久久久的内涵| 国产精品久久久久9999| 日韩视频一区二区三区| 免费成人黄色片| 午夜宅男欧美| 欧美日韩成人在线| 日韩视频在线一区二区| 日韩亚洲成人av在线| 国产精品久久久999| 亚洲精品一区二区三区在线观看| 新67194成人永久网站| 亚洲电影下载| 久久久夜精品| 国产日韩欧美精品综合| 在线午夜精品自拍| 亚洲国产欧美日韩另类综合| 美女视频黄免费的久久| 国产真实久久| 久久久久国产精品午夜一区| 一区二区高清视频| 欧美日韩另类综合| 99成人在线| 亚洲国产精品久久久久秋霞不卡| 久久久久久久久综合| 欧美精品一区二区三区四区| 久久经典综合| 1000部国产精品成人观看| 久久青草久久| 久久精品亚洲乱码伦伦中文| 国产一区二区三区在线免费观看 | 亚洲一区二区三区色| 国产精品www994| 日韩午夜剧场| 日韩网站在线| 欧美三级在线视频| 午夜视频一区| 亚洲免费婷婷| 国产日韩欧美不卡在线| 久久视频在线视频| 老司机67194精品线观看| 亚洲电影免费观看高清完整版在线观看 | 99精品欧美一区二区三区综合在线| 亚洲第一久久影院| 免费在线成人av| 国产精品国产三级国产普通话三级| 一区二区三区欧美成人| 中文精品视频| 亚洲另类黄色| 国产精品剧情在线亚洲| 欧美一区二区三区免费视频| 欧美精品一区二区三区蜜臀| 国产精品www色诱视频| 午夜精品在线| 欧美在线free| 在线日韩日本国产亚洲| 亚洲第一天堂av| 国产精品v日韩精品| 久久精品30| 免费成人黄色| 亚洲欧美中文另类| 久久精品123| 一区二区三区精品国产| 亚洲女同精品视频| 亚洲黄网站黄| 亚洲午夜精品久久久久久浪潮| 国产午夜精品麻豆| 亚洲国产专区| 国产亚洲欧美在线| 亚洲国产mv| 国内精品写真在线观看| 日韩视频免费大全中文字幕| 国产色爱av资源综合区| 亚洲国产小视频在线观看| 国产精品永久免费视频| 欧美大成色www永久网站婷| 欧美午夜不卡视频| 欧美a级大片| 国产农村妇女精品| 亚洲国产导航| 在线看一区二区| 99这里有精品| 亚洲精品一二| 久久久久一区| 久久久久欧美| 国产精品vip| aa级大片欧美三级| 亚洲精品久久久久久久久久久久久| 亚洲欧美在线一区| 亚洲一二三级电影| 欧美日韩福利视频| 亚洲黄页一区| 在线欧美日韩| 久久久九九九九| 久久久久久黄| 国产欧美日韩在线| 亚洲一区区二区| 先锋影音久久| 国产精品一区二区女厕厕| 日韩一区二区久久| 亚洲欧美一区二区精品久久久| 欧美乱人伦中文字幕在线| 女人香蕉久久**毛片精品| 国产自产女人91一区在线观看| 亚洲欧美日本日韩| 久久国产精品免费一区| 国产精品久久网站| 欧美在线免费观看| 亚洲欧洲午夜| 夜夜嗨一区二区三区| 国产伦精品一区二区三区在线观看| 亚洲国产成人一区|