精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

在虛擬環境中使應用程序與Windows 7兼容

原創
云計算 虛擬化
完全支持 Windows 7 的 Microsoft Application Virtualization (App-V) 4.6 即將發布;很多計劃部署 Windows 7 的客戶都將 App-V 納入為他們的桌面轉換項目的組件。(操作系統部署常常會使“最新桌面”或“下一代桌面”計劃中的應用程序和基礎結構發生重大改變。)

完全支持 Windows 7 的 Microsoft Application Virtualization (App-V) 4.6 即將發布;很多計劃部署 Windows 7 的客戶都將 App-V 納入為他們的桌面轉換項目的組件。(操作系統部署常常會使“最新桌面”或“下一代桌面”計劃中的應用程序和基礎結構發生重大改變。)

當 IT 專業人員考慮同時對 App-V 和 Windows 7 進行投資時,幾乎總會提出以下問題:

◇ 聽說 App-V 是一個應用程序兼容性解決方案。這是否意味著它可以幫助我的應用程序與 Windows 7 兼容?

◇ 我是否需要對已為當前的 Windows XP 桌面創建的 App-V 程序包重新排序?

◇ 將 App-V 用作部署解決方案時,我該怎么做才能解決不兼容應用程序問題?

下面開始逐個探討這些問題。

Microsoft App-V 是不是應用程序兼容性解決方案?

Microsoft App-V 首先是應用程序管理和部署解決方案,它可為企業帶來明顯好處:降低打包成本,提高系統穩定性,通過動態訪問軟件資產為現在移動性很高的工作人員提供支持。但是,在營銷宣傳中,人們過多使用了應用程序兼容性這個術語,隨著時間的推移,該術語已被曲解為:App-V 可幫助解決應用程序與操作系統之間的兼容性問題。大多數情況下,它是無法解決這些問題的。(現在的例外情況主要是歷史原因造成的,不應夸大它的作用,因此,我在此不進行詳細介紹。)

對于客戶因此產生的混淆,我們在措辭上進行了一定的澄清;我們現在已不使用“應用程序兼容性”這個術語,而是直接談及基本優點:可以減少應用程序之間的沖突(請注意,我們有意避開了“兼容性”這個詞),因此,可以顯著減少回歸測試。

產品團隊對應用程序與操作系統兼容性的官方觀點如下:

從以前的討論可知,App-V 不是通用的應用程序與操作系統兼容性解決方案;不過,如果應用程序兼容性填充程序允許某個應用程序以本機方式(非虛擬化)在給定 Windows 版本上運行,則在大多數情況下,對于大多數填充程序而言,該應用程序將在對填充的應用程序虛擬化之后與 App-V 一起運行。因此,一般而言,只要填充的應用程序能夠以本機方式在目標操作系統版本上運行,App-V 就支持應用程序使用填充程序(這些填充程序是作為 Microsoft 的應用程序兼容性工具的組成部分提供的)。

因此,很顯然,App-V 無意作為應用程序與操作系統兼容性解決方案。(我們將在本文后面部分討論如何將填充程序與 App-V 結合起來。)讓我們看一看應用程序虛擬化對操作系統兼容性產生的其他影響。

#p#

Microsoft App-V 是不是程序包兼容性解決方案?

當我們談及應用程序兼容性時,自然要將程序包兼容性與運行時兼容性區分開。事實上,我們所建議的應用程序兼容性測試過程(如我在 2009 年 6 月的規劃您的應用程序兼容性項目文章中的圖 3 所示)將安裝測試與運行時測試區分開。讓我們從產品團隊官方指南開始:

通常,可以在一個操作系統上排序,然后在另一個操作系統上運行虛擬化應用程序;但是,這種方案既取決于應用程序,也取決于操作系統,未必適用于所有應用程序/操作系統組合,因為 App-V 不是通用的操作系統兼容性解決方案。如果遇到問題,客戶可能需要在運行 App-V 客戶端的操作系統環境中進行排序,以便解決這些問題。

這聽起來并不怎么樣,官方觀點基本上是“視情況而定”。但是,當您要考慮衡量風險時,請比較現在所使用的三種基本安裝技術:

Setup.exe:這種方式將運行任意代碼,從而該任意代碼將與應用程序本身的任意代碼面臨相同的潛在運行時問題,因此必須徹底進行測試。

Windows Installer:這種方式也運行代碼來執行安裝,但所運行的代碼大部分是結構化的聲明代碼。只有自定義操作的命令性代碼是任意的,因此,除了規則中的可量化變化之外(這些規則會影響針對數據庫運行的代碼以及自定義操作中的任意代碼的處理),有望獲得更好(不過仍不完美)的兼容性,需要的測試也會更少。

Microsoft App-V:這種方法根本不必運行代碼。它只是在一個作為虛擬文件系統的數據 Blob 上進行復制,然后說“好的,您的虛擬文件系統在這里。”這樣,您主要關注的問題不是應用程序是否會安裝(復制一個數據 Blob 畢竟真的很容易),而是應用程序的運行時兼容性。因此,在所有三種技術中,這種方式的安裝測試是最短的。那真是太好了!

因此,盡管沒有官方說法表示程序包會全部正常運行,但這種信息流傳開來的主要原因似乎是,很多人都將安裝問題與運行時問題混為一談。一般而言,如果投資于 Microsoft App-V,就有望大大降低應用程序安裝測試的預計成本。

#p#

應用程序與 Microsoft App-V 一起打包時,如何解決運行時兼容性問題?

還記得支持聲明中誘人的說法嗎?“App-V 將支持應用程序使用填充程序(這些填充程序是作為 Microsoft 的應用程序兼容性工具的組成部分提供的)....”實際上如何去實現這一點?這兩種程序是否基本上兼容?

令人高興的是,答案是肯定的。事實上,可以通過幾種不同的方式做到這一點。

填充程序簡要介紹

對于不熟悉填充程序的人來說,填充程序是 Microsoft 很少使用的四字母單詞之一,它不是某種縮寫詞。它以英語單詞“shim”(墊片)進行比喻,這是一個工程術語,用于描述插在兩個物體之間,使它們更好地配合在一起的木片或金屬片。在我們的特定環境下,兩個物體就是應用程序和 Windows,而墊片材料是使兩者更好地一起發揮作用的附加代碼,如圖 1 和 2 所示。
 

 

圖 1 應用填充程序之前,應用程序與 Windows 直接交互。

 

圖 2 應用填充程序之后,應用程序與 Windows 間接交互;填充程序代碼注入后,它可以修改向 Windows 發出的請求和/或來自 Windows 的響應。

填充程序的作用是通過 API 偵聽實現的。Windows API 是使用 DLL 集合實現的。每個針對 Windows 構建的應用程序都導入這些 DLL,并在內存中維護一個由所有這些功能的地址構成的表。因為 Windows 功能的地址位于一個表中,所以,填充程序引擎直接用填充程序 DLL 的地址替換該地址。應用程序通常不知道要將請求發送到填充程序 DLL 而不是發送到 Windows 本身,Windows 也不知道請求是來自應用程序以外的源(因為填充程序 DLL 只不過是應用程序進程內的另一個 DLL)。

例如,一個十分常用的填充程序是版本欺騙填充程序。為了實現此填充程序,將偵聽幾個用于確定運行應用程序的 Windows 版本的 API。通常,這種信息將傳遞給 Windows 本身,后者會如實應答。但在應用填充程序之后,這些 API 將被偵聽。這樣,將返回一個不同的 Windows 版本(例如,Windows XP 而不是 Windows 7),而不是將請求傳遞給 Windows。如果應用程序編寫為只在 Windows XP 上運行,這樣可以騙過應用程序,使它認為自己正在正確的操作系統上運行。(通常,這樣就可以解決應用程序兼容性問題!)

使用填充程序,可以采用很多技巧。例如, 

◇ ForceAdminAccess 填充程序嘗試使應用程序確信當前用戶是本地管理員組的成員,即使他并不是該組成員。(如果您不是本地管理員,很多應用程序會徹底失敗,不過,您可以使用其他一些技巧(如 UAC 文件和注冊表虛擬化)來解決初始檢查所引起的問題。)實現這種檢查的方法可以非常簡單。例如,此填充程序從 shell32.dll 偵聽 API IsUserAnAdmin。所填充的功能的完整源代碼(與實際 API 相比,具有極好的性能特性)只返回 TRUE。

◇ WrpMitigation 填充程序使應用程序安裝程序相信,它們可以寫入受 Windows 資源保護 (WRP) 功能保護的文件。如果嘗試寫入受保護的文件,該填充程序首先創建一個新的臨時文件,一旦句柄關閉就將其標記為已刪除,然后將句柄返回到該臨時文件,就好像它是實際受保護的文件。應用程序將舊版本 kernel32.dll 或 shell32.dll(或者在將其打包時它所選擇的任何其他文件)安裝到臨時文件中,但隨后該臨時文件消失,受保護文件的經過修補的最新匹配版本保留在文件系統中。這樣,WRP 仍可確保您不會在自己的計算機上最終得到來自 Windows 95 的舊版本 shell32.dll,但在使用此填充程序時,安裝程序不會因 ACCESS_DENIED 而失敗。

◇ CorrectFilePaths 填充程序可將文件從一個位置重定向到另一個位置。因此,如果應用程序嘗試寫入 c:\myprogramdir(不會使用 UAC 文件和注冊表虛擬化對它進行自動修復),則可以將在運行時修改的文件重定向到基于每個用戶的位置。這樣,您可以以標準用戶的身份運行而不必放寬訪問控制列表 (ACL) 限制,因為您知道,安全人員不愿意放寬 ACL。

◇ 有數百個通用填充程序可用來解決應用程序兼容性問題,利用這些修補程序可節省大量的成本。例如,客戶常常在以下情況下使用填充程序:

◇ 供應商已停止經營,因此無法獲得更新版本。如果您無法承擔從新供應商處獲得另外的應用程序或自己構建新版本的費用,這樣可以為您爭取一些時間。

◇ 應用程序不是十分重要,不值得投資于更新版本(伴隨著支持聲明),但您的用戶樂于使用它,所以您不介意他們是否運行不受支持的版本。

◇ 應用程序是內部開發的,但您不想非要等到團隊發布完全更新的版本。相反,您愿意采用臨時性修補程序,允許開發團隊在應用程序的下一次計劃發布時發布永久性修補程序。通過這種方法,就不再需要停止所有應用程序開發活動,可以投入時間和資源來修復兼容性 Bug。您可以使用臨時性修補程序,并允許團隊發布包含開發過程中已實現的新功能的修補程序。

利用填充程序解決應用程序兼容性問題,可以顯著節省成本,大大加速 Windows 7 的部署。

#p#

在企業環境中管理填充程序的方法

在我于 2007 年 11 月發表的在企業環境中管理填充程序白皮書中,概括了在決定如何在組織中將填充程序作為應用程序兼容性解決方案進行管理時,大多數人會選擇的兩種主要方式。簡單地說,它們是:

集中管理的單個填充程序數據庫 通過這種方式,可以部署集中管理的單個填充程序數據庫,這種數據庫包含所有需要使用填充程序的應用程序的條目。這之后,發現其他應用程序需要使用修補程序時,可向中央數據庫推出更新。這就是 Microsoft 所使用的方法。在發布 Windows 7 時,我們提供了一個系統填充程序數據庫,它可以對數千個應用程序進行修復,在我們發現其他需要修復的應用程序時,則通過 Windows Update 向該數據庫發布更新。您也可以這樣做:將一個填充數據庫放到主映像中,通過系統管理軟件(如 System Center Configuration Manager)進行更新。

基于每個應用程序的填充程序數據庫 另外,您也可以直接向應用程序部署應用程序修補程序。如果只有一兩個應用程序需要修補程序,某些客戶會選擇這種方式,因為在小型環境中,與設置一個用于管理中央數據庫的進程相比,這種方式成本更低。基于每個應用程序的填充程序數據庫的一個明顯缺點是,如果存在問題,更新填充程序數據庫將會很困難。不過,App-V 沒有這個缺點,現在,您可以對基于每個應用程序的數據庫進行更新,然后將更新后的版本傳送給用戶。(不過,您將會看到,這引入了另外一個更加明顯的缺點。)

Microsoft App-V 的軟件部署方法拓寬了在企業范圍內部署應用程序修補程序的選擇,您可以選擇一種最適合組織中現有進程模型的方法。

#p#

使用集中管理的單個填充程序數據庫來填充 App-V 應用程序

從策略角度看,要部署集中管理的單個填充程序數據庫并由使用 App-V 進行排序的應用程序選擇該數據庫,您必須做什么?很簡單,按常規方法安裝即可!使用 App-V 安裝的應用程序的啟動方式與應用程序的常規啟動方式大致相同,這種應用程序使用應用了填充程序的加載程序機制。它們只是通過代理進程來啟動。具體地說,sfttray.exe(而不是資源管理器)負責啟動新的進程。因此,進程樹如圖 3 所示。
 

圖 3 代理進程樹

應用程序啟動時,它像任何其他應用程序一樣運行加載程序。Microsoft Application Virtualization 客戶端接口層 (sftintf.dll) 調用 CreateProcessW,后者調用內部的 API CreateProcessInternalW。填充程序引擎是在 CreateProcessInternalW API 中調用的,填充程序與該進程綁定。

那么,這就相當容易了。還有什么問題嗎?是的,有一個。它不能很好地處理提升。例如,您不能簡單地要求對某個應用程序進行提升(使用 RunAsAdmin 填充程序),也不能對需要使用 ElevateCreateProcess 進行提升的應用程序的問題進行修復。為什么呢?原因是氣泡圖。

例如,我們來看一個嘗試自行啟動一次自動更新的應用程序(遺憾的是,這是一個十分常見的任務)。在以本機方式運行時,它產生了一個問題,即它使用了無法調用提升的 CreateProcess API。它隨后返回錯誤 -1073740756 – STATUS_ELEVATION_REQUIRED。ElevateCreateProcess 填充程序捕獲這個返回值,然后調用應用程序信息服務來提供提升。但該服務無法找到要提升的應用程序,因為該服務位于氣泡圖之外!

因此,只要應用程序不需要提升,在已創建一個進程的情況下,部署單個填充程序數據庫解決方案就十分容易,您只需繼續做相同的事情。

#p# 

使用基于每個應用程序的填充程序數據庫來填充App-V 應用程序

通過部署填充程序來解決應用程序兼容性問題的另一種方法是隨應用程序部署填充程序。在 MSI 環境中,通常將 .sdb 文件包括在安裝程序中,然后加入一個自定義操作,該自定義操作針對它所放置的 .sdb 文件調用 sdbinst。這樣,會將自定義填充程序數據庫作為安裝程序的一部分來安裝。(如果您隨后需要對該應用程序的填充程序進行更新,則需要找到所有已安裝的客戶端,并運行一個腳本來安裝更新,這會使事情變得有些復雜。)

您可以使用 App-V 完成幾乎相同的工作。您可將填充程序數據庫 (.sdb) 文件包括在序列本身之中,這樣 .sdb 文件就位于氣泡圖內。首先,對需要使用填充程序的應用程序進行排序,以便其正常運行。然后,將自定義填充程序數據庫放入 system32 中。

(盡管我通常會建議人們絕不要將任何內容放到 system32 中,除非您的工資單是由 Steve Ballmer 簽發的,并且您的上級包括 Steven Sinofsky;在這種特定情況下,我才會選擇這樣做,因為這樣可簡化腳本編寫,system32 將在您的路徑中,并且不會在生產系統的 system32 中實際留下任何內容,就像是在虛擬文件系統的 system32 中那樣)。

做完這項工作后,我將編輯 .sprj 文件。我瀏覽到“虛擬文件系統”選項卡,然后單擊“視圖”|“虛擬文件系統”|“添加”。然后,我瀏覽到放置 .sdb 文件的位置 (c:\windows\system32\appshim.sdb),并單擊“確定”。此時,該 .sdb 文件將位于氣泡圖內,并在安裝 softgrid 軟件包時進行安裝。因為該文件是容器的一部分,所以它將作為應用程序的一部分進行傳送(可在更新應用程序時進行更新)。

當然,要使用應用程序修補程序,只是將 .sdb 文件放到文件系統中還不夠,還必須安裝這些修補程序。不過,填充程序數據庫必須安裝在 App-V 氣泡圖的外面。如果將填充程序數據庫安裝在氣泡圖內,則在創建進程之前,不會發現虛擬化的 .sdb 文件;創建進程之后,填充程序找到該文件并針對它進行操作已經太晚。您需要使填充程序數據庫在創建進程時能夠被氣泡圖外面的加載程序訪問。

令人高興的是,App-V 包含一個將腳本作為應用程序啟動進程的一部分來運行的機制。如果您使用最喜歡的文本編輯器來查看應用程序的 OSD 文件,就會發現只能對 XML 進行編輯。<SOFTPGK> 元素包含一個 <IMPLEMENTATION> 元素、一個 <DEPENDENCY> 元素、一個 <PACKAGE> 元素、一個 <ABSTRACT> 元素、一個 <MGMT_SHORTCUTLIST> 元素和一個 <MGMT_FILEASSOCIATIONS> 元素。<DEPENDENCY> 元素是您需要編輯的元素,您將添加子 <SCRIPT> 元素,以便安裝自定義填充程序數據庫。下面是一個腳本示例,該腳本可在應用程序啟動時安裝自定義填充程序數據庫,并在應用程序退出時將其刪除(因此,這是一種可清理其身后內容的 JIT 安裝,是 App-V 的一個重要目標):
 

 

通過該腳本,您可從 App-V 氣泡圖的外面調用填充程序數據庫安裝程序 (sdbinst.exe),但要使用位于 App-V 氣泡圖內部的 .sdb 的一個參數,該 .sdb 隨后將作為應用程序部署序列的一部分進行部署。因此,應用程序修補程序的部署和更新十分容易,就像它們是該應用程序的任何其他部分一樣。

自定義填充程序數據庫的安裝過程要求擁有管理員權限;在運行時進行安裝這是否會發生問題?您不希望您的用戶擁有管理員權限,您的用戶也不希望每次啟動應用程序時都不得不單擊 UAC 對話框。令人高興的是,您無需那樣做;對 sdbinst.exe 的調用會自動提升。安裝填充程序的進程樹如圖 4 所示。

 

圖 4 填充程序安裝進程樹

將創建一個命令 Shell,該命令 Shell 隨后調用 sdbinst.exe 來安裝自定義填充程序數據庫。在調用應用程序信息服務(提供提升的服務)之前,會失敗兩次,其錯誤為 STATUS_ELEVATION_REQUIRED。上述服務調用 consent.exe,后者對策略進行檢查以確定是否應提升應用程序。策略(在虛擬環境中)返回“是”而無需提示用戶;consent.exe 批準提升,并創建 sdbinst.exe 的一個提升實例,該實例將安裝自定義填充程序數據庫。但是請務必注意,不提示就提升的策略只有在您能提升的情況下才會無提示運行。如果您是標準用戶,則每次啟動應用程序都會出現一條需要管理員憑據的提示,每次關閉應用程序也是如此。因為在標準用戶環境中人們非常不希望出現這種情況,所以,只有在已部署本地管理員用戶的情況下,這種方法才有效。我們希望只有極少的用戶需要應用這種方法!

#p#

結論

Microsoft Application Virtualization 是一個功能強大的應用程序管理和部署工具。如果在 Windows 7 遷移計劃中使用該工具,有可能降低安裝測試過程中的成本(不過,成本不會降到 0)。

繼續利用大多數同樣的過程,還可以使用填充程序解決應用程序兼容性問題。如果要在組織范圍內部署單個填充程序數據庫,要進行的轉換任務很少,只需小心避免提升填充程序(與在 App-V 環境中通常應避免提升的情況大體一樣)。如果要部署基于每個應用程序的填充程序,可以使用一些適當的方式來打包和部署應用程序的填充程序數據庫,不過,這種情況下,有一個顯著的缺點,即無法合理地以非管理員用戶的身份運行應用程序。因此,強烈建議(就像在基于 MSI 的應用程序部署中那樣)盡量以集中管理的單個數據庫的形式部署填充程序,這種情況下,可以使用現有的系統管理軟件進行部署。如果采用這種方式,將來在您的用戶中,以非管理員身份運行的用戶的比重會越來越大。

Chris Jackson(“應用程序兼容性專家”)是 Microsoft 的首席顧問,也是 Windows 應用程序體驗 SWAT 團隊的技術主管。Jackson 是在 Windows 應用程序兼容性領域享有盛名的專家,他根據多年與企業客戶和獨立軟件供應商合作的實際經驗,負責創建在 Microsoft 內部和外部使用的技術文檔、培訓和服務項目。可通過 Jackson 的廣受歡迎的博客與他聯系。

原文地址

本文來源:微軟TechNet中文站

 

 

 

責任編輯:王勇 來源: 微軟TechNet中文站
相關推薦

2009-08-14 09:14:13

Windows 7兼容性修復程序

2009-09-22 12:17:59

ibmdwLotus

2021-07-30 20:25:04

pipxPython編程語言

2021-09-07 10:24:36

Vue應用程序Web Workers

2011-05-27 08:48:13

Android HTML

2009-06-19 13:45:53

Java應用程序Jfreechart

2013-10-09 11:15:49

Ubuntu應用程序

2009-11-23 19:52:55

ibmdwFlex

2022-08-30 20:00:37

零信任Linkerd

2010-11-03 15:10:04

SilverlightSilverlightWindows Pho

2011-03-21 09:05:40

IronRubyWindows Pho

2011-07-18 10:00:47

iPhone iOS Visual Stu

2010-12-01 09:01:31

獨立存儲Windows Pho

2012-06-07 09:15:14

ibmdw

2022-02-20 20:09:38

BottlesLinuxWindows

2011-02-18 09:34:32

Windows 7 S

2011-08-10 10:48:48

2010-07-26 11:02:46

2016-09-06 09:48:38

LinuxWindows切換

2011-04-01 13:20:40

Windows Pho應用程序
點贊
收藏

51CTO技術棧公眾號

国产影视精品一区二区三区| 亚洲综合在线免费观看| 2022中文字幕| 99精品视频一区| 午夜亚洲视频| 宅男噜噜噜66国产免费观看| 成人午夜视频福利| 中文字幕免费高| 韩国精品一区二区| 手机看片国产1024| 亚洲区一区二区三区| 亚洲天堂免费看| 捆绑调教日本一区二区三区| 中文字幕剧情在线观看一区| 日本一区二区动态图| 日韩大片b站免费观看直播| 日本一欧美一欧美一亚洲视频| 久热成人在线视频| 国产视频91在线| 精品视频在线观看日韩| 日本福利专区在线观看| 在线亚洲美日韩| 疯狂做受xxxx欧美肥白少妇| 欧美黑人xx片| 精品高清视频| jizz中文字幕| 国产成人在线免费| 无码人妻精品一区二区三区9厂| 国产97在线亚洲| 国产欧美中文在线| 天天干天天操天天操| 97久久伊人激情网| aa一级黄色片| 亚洲一区日韩精品中文字幕| 人成网站在线观看| 玖玖精品在线视频| 久久亚洲影视婷婷| 午夜激情在线观看| 成人免费福利视频| 精品久久中出| 一区二区三区在线不卡| 欧美成人精品午夜一区二区| 色综合久久88| 国产一区二区中文| 91丨porny丨在线中文| 欧美一区二区久久久| 国内精品久久久久久久影视简单 | 免费看日b视频| 欧美日韩国产限制| 久久资源综合| 自拍偷拍校园春色| 精品国产乱码久久久久久108| 91视视频在线直接观看在线看网页在线看 | 亚洲一区二区精品| 在线电影一区二区| 在线精品日韩| 欧美成人精品福利| 韩日视频一区| 黄色av免费在线| 韩国黄色一级片| 亚洲精品一区二区三区四区高清 | 欧美精品日韩三级| 精品一区二区三区免费观看| 欧美www.| www.超碰97| 另类专区欧美制服同性| 最新日韩av| 日韩av男人天堂| 一本二本三本亚洲码| 精品久久久久久久久久久院品网 | 美女视频一区免费观看| 日韩中文字幕免费在线观看| 911亚洲精选| x99av成人免费| 福利91精品一区二区三区| 色视频免费在线观看| 少妇大叫太大太粗太爽了a片小说| 日韩中文字幕av| 日韩电影在线一区二区三区| 国产精品亚洲激情| 一区二区三区四区视频免费观看 | 女人色偷偷aa久久天堂| 精品国产一区二区三区在线| 欧美日韩视频专区在线播放| 日韩视频在线一区二区三区 | 国产精品国产自产拍在线| 欧美日韩午夜电影网| 丰满少妇高潮久久三区| 国产精品久久久久久久久久久新郎 | 色哟哟网站入口亚洲精品| 日韩精品五月天| 国产在线拍揄自揄拍视频| 国产一级视频在线观看| 任我爽在线视频精品一| 精品少妇一区二区三区| 视频一区二区三区在线| 色黄视频在线观看| 亚洲区一区二区三| 水蜜桃亚洲精品| 在线亚洲午夜片av大片| 成人h动漫精品一区二区| 欧美黑人巨大videos精品| 亚洲av成人精品一区二区三区在线播放 | 18videosex性欧美麻豆| 亚洲黄色一区二区三区| 久久天天躁狠狠躁夜夜爽蜜月| 国产精品午夜免费| 国产精品成久久久久| 波多野结衣电影在线播放| 欧美国产视频一区| 欧洲亚洲免费在线| 欧美一级大黄| 精品国产av色一区二区深夜久久| 亚洲国产精品久久久久久女王| 亚洲第一二三四五区| 亚洲第一黄色网址| 中文字幕日韩一区二区三区| 亚洲色图15p| 波多野结衣亚洲一区| 伊人久久大香线蕉综合网蜜芽| 欧美zzoo| 精品国产国产综合精品| 色一情一乱一伦一区二区三欧美 | 欧美成人免费在线| 欧美xxxxxxxxx| 久久91精品久久久久久秒播| 天堂av最新在线| 黑人と日本人の交わりビデオ| 国产精品免费久久久| 日韩欧美www| 91麻豆福利精品推荐| 日韩有码中文字幕在线| 91精品人妻一区二区三区果冻| 一道本视频在线观看| 国产尤物91| 精品国产一区二区三区久久久| 亚洲午夜精品久久久中文影院av| 久久久久久久久久久久久久久久久久av| 国产精品久久久久久亚洲毛片 | 欧美午夜免费| 欧美日韩亚洲一区三区| ****av在线网毛片| 国产免费不卡av| 可以直接看的黄色网址| 任我爽在线视频精品一| 欧美极度另类性三渗透| 在线影视一区二区三区| 国产精品视频一二三| 久久一日本道色综合久久| 久久人人爽人人爽人人片av不| 羞羞的视频在线看| 国产999久久久| 欧美国产成人精品一区二区三区| 国产97在线 | 亚洲| 欧美另类高清videos| 亚洲激情视频在线播放| 国产精品嫩草99a| 在线日本高清免费不卡| 日韩福利在线观看| 免费大片在线观看www| 日韩精品一区二区av| 日韩精品――色哟哟| 国产伦精品一区二区三区免费视频 | 欧美做受喷浆在线观看| 91动漫在线看| 一区二区不卡视频| 91在线观看免费高清完整版在线观看 | 久久精品人妻一区二区三区| 天天爽天天爽夜夜爽| 国产精品无码电影在线观看| av不卡在线免费观看| 少妇高潮大叫好爽喷水| 国产精品久久久久9999| 久久精品精品电影网| 日韩欧美成人网| 欧美日韩五码| 国产精品—色呦呦| xxxwww在线观看| 亚洲av无码一区二区三区观看| 你懂得在线视频| 久草青青在线观看| 欧美日韩国产高清视频| 欧美在线免费视频| 亚洲免费av网址| 91福利国产精品| 99久久精品情趣| 日韩主播视频在线| 久久先锋资源| 国产一区二区三区自拍| 先锋影音久久久| 91精品国产91久久综合| 香蕉综合视频| 亚洲一区二区三区免费| 欧美挤奶吃奶水xxxxx| 国产suv精品一区| 美女主播精品视频一二三四| free性m.freesex欧美| 欧美性天天影视| 亚洲AV无码国产精品午夜字幕 | 黄色精品在线观看| 国产富婆一级全黄大片| 亚洲无码久久久久久久| 一级特黄aaa大片| 国产大片aaa| 久久久蜜桃一区二区| 91黑人精品一区二区三区| 久久久久久久久久久黄色| 丝袜亚洲另类欧美| 国产欧美亚洲一区| 欧美96一区二区免费视频| 5566中文字幕一区二区电影| 国产在线不卡一区| 国产69精品久久99不卡| 91在线视频播放地址| 午夜影院在线播放| 日韩精品一页| 色愁久久久久久| 青青草综合网| 精品久久久久久久| 亚洲国产专区校园欧美| 激情综合五月天| 欧美经典一区二区| 欧美视频不卡中文| 亚洲图片自拍偷拍| 欧美视频一二三区| 91精品国产综合久久久久久久久久 | 日日夜夜免费精品| 欧美激情第10页| 午夜在线视频观看日韩17c| 懂色av中文一区二区三区| 中文字幕一区在线观看| 亚洲精品成人少妇| 欧美日韩亚洲一区二| 欧美日韩国产高清一区二区| 在线观看国产精品日韩av| 久久久免费精品视频| 国产传媒一区二区三区| 亚洲一区二区在| 五月婷婷六月丁香激情| 影音先锋男人在线| 男操女视频网站| 丰满人妻妇伦又伦精品国产| 激情视频在线观看| 欧美与亚洲与日本直播| 欧美一区网站| 另类小说一区二区三区| 国产麻豆日韩欧美久久| 色综合久久精品| 久久香蕉国产线看观看网| 国产精品成人品| 亚洲免费视频一区| 国产91精品青草社区| 国产99午夜精品一区二区三区| 五月激情综合色| 粉嫩老牛aⅴ一区二区三区| 欧美风情在线观看| 美女主播视频一区| 日本www在线视频| 亚洲天堂资源在线| 一级片视频在线观看| 51ⅴ精品国产91久久久久久| 欧美一级免费在线观看| 国模吧无码一区二区三区| 天天色天天干天天色| 久久精品亚洲a| 国产18精品乱码免费看| 日本欧美一区| 亚洲情侣在线| 懂色一区二区三区免费观看| 狠狠综合久久av一区二区小说| 欧美日韩成人在线视频| 亚洲综合第一| 午夜激情福利电影| 中文字幕在线视频区| 亚洲另类av| 国产日韩欧美麻豆| 91精品国产免费| 日韩av片永久免费网站| 国产美女搞久久| 黑人糟蹋人妻hd中文字幕| 国产大学生自拍| 国产美女视频一区二区三区| 欧美日韩在线二区| 一区二区三区欧美久久| 亚洲国产一区二区三区四区| 亚洲最大福利网| 成人性做爰aaa片免费看不忠| 欧美日韩大片在线观看| 姝姝窝人体www聚色窝| 麻豆久久一区| 成熟亚洲日本毛茸茸凸凹| 欧美日韩中文字幕一区二区| 日本一本在线免费福利| 尤物视频在线看| 亚洲人成人一区二区三区| 国产欧美综合在线观看第十页| 欧美r级电影在线观看| 色网站在线免费观看| 激情小视频在线观看| 欧美aa视频| 久久99九九99精品| 欧美一区二区不卡视频| 亚洲国产成人在线| 日韩av影视在线| 久久综合给合久久狠狠色| 亚洲天堂岛国片| 日本在线视频站| 亚洲激情在线| 欧美精品久久久久久久久老牛影院| 国产精品日韩欧美| 欧美日韩一区二区区别是什么| 图片区 小说区 区 亚洲五月| 国产在线视频欧美一区| 国产精品资源在线| 亚洲视频在线观看网站| 大陆极品少妇内射aaaaaa| 日本中文字幕第一页| 久久国内精品| 国产91丝袜在线播放九色| 亚洲精品自在久久| 六月激情综合网| 国产日韩精品suv| 美国十次综合久久| 国产欧美精品一区aⅴ影院 | 人人澡人人澡人人看欧美| 日韩大片一区二区| 国产美女性感在线观看懂色av | 国产剧情在线| 日本色综合中文字幕| 国产精品日韩无码| 色综合视频一区二区三区44| aaa欧美日韩| 久久99精品久久久久久琪琪| 黄色av免费在线播放| 欧美三级乱码| 免费成人在线网站| 国产丝袜一区二区三区| 大陆极品少妇内射aaaaaa| 国产情侣小视频| 清纯唯美亚洲经典中文字幕| 久久天天久久| 亚洲乱码中文字幕综合| 国产精品激情自拍| 午夜激情视频在线播放| 免费成人动漫| 日本一区二区三级电影在线观看| 国产成人在线视频| 日本中文字幕精品| freemovies性欧美| 天天做天天爱天天爽综合网| 91精品国产乱| 日本一本中文字幕| www.国产欧美| 国内外成人在线| 免费不卡欧美自拍视频| 日韩乱码人妻无码中文字幕久久| 裤袜国产欧美精品一区| 国产精品伦理在线| 黄色a级在线观看| 亚洲日本国产精品| 日本伊人精品一区二区三区观看方式| 亚洲精品理论电影| 亚洲熟妇av日韩熟妇在线| 国产免费av高清在线| 99re66热这里只有精品3直播| 波多野结衣精品久久| 色av性av丰满av| 91免费精品| 亚洲人成电影在线播放| 中文字幕在线视频播放| 在线一区二区三区视频| 一本久道中文字幕精品亚洲嫩| 在线观看欧美激情| 免费在线看黄网站| 国产精品成人免费| 大桥未久一区二区| av在线资源站| 精品午夜一区二区三区在线观看 | 狠狠色丁香久久婷婷综合_中| 日韩av片电影专区| 亚洲国产成人无码av在线| 影音先锋中文字幕一区| 中文字幕欧美精品日韩中文字幕| 四虎国产精品免费| 国产精品流白浆在线观看| 884aa四虎影成人精品一区| 特级西西人体www高清大胆| 午夜老司机在线观看| 亚洲欧美一区二区视频| 在线观看免费91| 性xxxx搡xxxxx搡欧美| 久久久亚洲综合| www.亚洲成人网| 日韩精品乱码久久久久久| 亚洲国产裸拍裸体视频在线观看乱了中文| 在线免费观看羞羞视频一区二区| 欧美a级片免费看| 无码一区二区三区视频| av爱爱亚洲一区| 日韩免费一区二区三区|