国产一区二区三区毛片_亚洲乱码AV中文一区二区_亚洲精品无码专区在线播放_日韩欧美一二_咪咪av影院_欧久久av一区二区

xiapeng01
級別: 探索解密
精華主題: 0
發帖數量: 61 個
工控威望: 189 點
下載積分: 1197 分
在線時間: 83(小時)
注冊時間: 2012-12-31
最后登錄: 2025-05-25
查看xiapeng01的 主題 / 回貼
樓主  發表于: 2024-04-13 10:19
復制粘貼代碼到VsCode 或LinqPad 中,執行即可,需要.net8。在我的電腦上實驗成功,歡迎反饋不同型號的結果。
using System.Net.Sockets;
using System.Runtime.CompilerServices;
using System.Security.Cryptography.X509Certificates;

namespace WeintekTest;

class Program
{
    static Weintek weintek=new Weintek("192.168.20.51");

    static void Main(string[] args)
    {
        ClearTool();          
    }

    static void Fun0()
    {
        Console.WriteLine(weintek.GetLB(9047));
        Console.WriteLine(weintek.GetLB(9048));
    }

    static void Fun1()
    {
        Console.WriteLine("Done!");
        Console.Read();

        File.WriteAllText("res.txt","");

        for(int i=9000;i<12900;i++)
        {
            string str=$"{DateTime.Now}:LW{i}:\t"+weintek.GetLW(1, i) + Environment.NewLine;
            File.AppendAllText("res.txt",str);
        }
        
        Console.WriteLine("Done!");
        Console.Read();
    }

    static void ClearTool()
    {
        //Console.WriteLine("如要確認執行請按\"Y\"鍵:");
        //var key=Console.ReadKey();
        //Console.WriteLine();
        //if(key.Key != ConsoleKey.Y)
        {
            //Console.WriteLine("已取消執行!");
            //Console.Read();            
            //return;
        }

        Console.WriteLine("請謹慎操作!");
        Console.WriteLine("觸摸屏將在稍后重啟,請在觸摸屏重啟后手動進入并執行觸摸屏校準!");
        Console.WriteLine("校準完成后,會彈出對話框詢問是否重置密碼,輸入'yes'即可清空內部項目并重置下載密碼!");

        for(int i=10;i>0;i--)
        {
            //倒計時執行
            Console.WriteLine($"倒計時:{i}秒.");
            Thread.Sleep(1000);
        }

        Console.WriteLine("正在更新日期時間...");
        //更新日期時間
        weintek.SetLW(9022, (short)DateTime.Now.Year);//更新年
        weintek.SetLW(9021, (short)DateTime.Now.Month);//更新月
        weintek.SetLW(9020, (short)DateTime.Now.Day);//更新日
        weintek.SetLW(9019, (short)DateTime.Now.Hour);//更新時
        weintek.SetLW(9018, (short)DateTime.Now.Minute);//更新分
        weintek.SetLW(9017, (short)DateTime.Now.Second);//更新秒
        
        Console.WriteLine("正在更改系統設置...");
        weintek.SetLB(9020, true);//顯示系統控制按鈕
        weintek.SetLB(9033, true);//允許上傳
        weintek.SetLB(12364, true);//開啟屏幕校正后恢復出廠設置的選項
        weintek.SetLB(9048, true);//開啟重啟保護
        weintek.SetLB(9047, true);//重啟觸摸屏
        //設定LB寄存器時返回報文實例
        //2024/4/13 10:36:54+_接收內容33:    01-60-00-00-FF-00-00-00-00-00-08-00-01-00-01-00-00-00-01-00-00-00-00-00-00-00-00-00-00-00-00-00-02
        //2024/4/13 10:36:54+_接收內容33:    01-60-00-00-FF-00-00-00-00-00-08-00-01-00-02-00-00-00-01-00-00-00-00-00-00-00-00-00-00-00-00-00-02
        //2024/4/13 10:36:54+_接收內容33:    01-60-00-00-FF-00-00-00-00-00-08-00-01-00-03-00-00-00-01-00-00-00-00-00-00-00-00-00-00-00-00-00-02
        //2024/4/13 10:36:54+_接收內容33:    01-60-00-00-FF-00-00-00-00-00-08-00-01-00-04-00-00-00-01-00-00-00-00-00-00-00-00-00-00-00-00-00-02
        //2024/4/13 10:36:54+_接收內容33:    01-60-00-00-FF-00-00-00-00-00-08-00-01-00-05-00-00-00-01-00-00-00-00-00-00-00-00-00-00-00-00-00-02

        Console.WriteLine("Done!");
        Console.Read();
    }



    public class Weintek
    {
        string _ip;
        int _port=8000;

        int _index=0;
        readonly object lckObj=new object();

        public Weintek(string ip)
        {
            _ip=ip;
            _port=8000;
            
        }

        public Weintek(string ip,int port)
        {
            _ip=ip;
            _port=port;
            
        }

        int GetIndex()
        {
            lock(lckObj)
            {
                return ++_index;
            }
        }

        int GetEasyWatchIndex()
        {
            return 1;
        }

        public bool GetLB(int regAddress)
        {
            //讀LB12364
            //PC發:        01600000ff000000000008000c 00e5 0300000100000000000000000000ff 0403 000001000000
            //HMI回true:    01600000ff0000000000080005 00e5 030000010000000000000000000000000000 0010 0000  //大端
            //HMI回false:   01600000ff0000000000080005 00e5 030000010000000000000000000000000000 0000 0000 //大端

            //讀LB9047
            //PC發:        01600000ff000000000008000c 00fb 0300000200000000000000000000ff 3502 000001000000

            //讀LB9048
            //PC發:        01600000ff000000000008000c 00fe 0300000300000000000000000000ff 3502 000001000000

            try
            {
                bool ret=false;
                string sendHeader="01600000ff000000000008000c";
                string sendConstStr1 = "0300000100000000000000000000ff";
                string sendConstStr2 = "000001000000";

                string receiveHeader="01600000ff0000000000080005";

                var sendStr = sendHeader;
                sendStr += GetIndex().ToString("x4");
                sendStr += sendConstStr1;
                sendStr += GetLBAddress(regAddress).Substring(0,4);
    
                sendStr += sendConstStr2;
                
                var receiveData = Send(sendStr);
                var receiveStr = BitConverter.ToString(receiveData).Replace("-","").ToLower();
                if(receiveStr.Length> receiveHeader.Length &&
                    receiveStr.StartsWith(receiveHeader) &&
                    string.Compare(sendStr.Substring(sendHeader.Length,4),receiveStr.Substring(receiveHeader.Length,4))==0)
                {
                    var dat=ToLittleEndian(Convert.ToUInt16(receiveStr.Substring(66,4),16));
                    var temp =(Convert.ToUInt16(Math.Pow(2,regAddress % 0x10)));
                    ret = (dat & temp) > 0;
                    return ret;
                }

                return ret;
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
                return false;
            }
        }


        /// <summary>
        /// 設置觸摸屏的LB寄存器(系統寄存器的值)
        /// </summary>
        /// <param name="ip">觸摸屏的地址</param>
        /// <param name="port">鏈接端口號,默認值為8000</param>
        /// <param name="index">報文序號,返回報文的序號和發送報文序號相同</param>
        /// <param name="regAddress">LB寄存器地址</param>
        /// <param name="Value">設定值</param>
        public bool SetLB(int regAddress, bool Value)
        {
        //設定LB寄存器時返回報文實例
        //2024/4/13 10:36:54+_接收內容33:    01-60-00-00-FF-00-00-00-00-00-08-00-01-00-01-00-00-00-01-00-00-00-00-00-00-00-00-00-00-00-00-00-02
        //2024/4/13 10:36:54+_接收內容33:    01-60-00-00-FF-00-00-00-00-00-08-00-01-00-02-00-00-00-01-00-00-00-00-00-00-00-00-00-00-00-00-00-02
        //2024/4/13 10:36:54+_接收內容33:    01-60-00-00-FF-00-00-00-00-00-08-00-01-00-03-00-00-00-01-00-00-00-00-00-00-00-00-00-00-00-00-00-02
        //2024/4/13 10:36:54+_接收內容33:    01-60-00-00-FF-00-00-00-00-00-08-00-01-00-04-00-00-00-01-00-00-00-00-00-00-00-00-00-00-00-00-00-02
        //2024/4/13 10:36:54+_接收內容33:    01-60-00-00-FF-00-00-00-00-00-08-00-01-00-05-00-00-00-01-00-00-00-00-00-00-00-00-00-00-00-00-00-02
            try
            {
                string sendHeader="01600000ff000000000008000c";
                string sendConstStr = "0000000100000000000000020000ff";//前面的01是EasyWatch序號,排第一個的為01,第二個的為02,在此處無關緊要

                string receiveHeader="01600000FF0000000000080001";

                var sendStr = sendHeader;
                sendStr += GetIndex().ToString("x4");
                sendStr += sendConstStr;
                sendStr += GetLBAddress(regAddress);
                sendStr += Value ? "ff" : "00";
                sendStr += "0000";
                
                var receiveData = Send(sendStr);
                var receiveStr = BitConverter.ToString(receiveData).Replace("-","").ToLower();
                if(receiveStr.Length> receiveHeader.Length && receiveStr.StartsWith(receiveHeader))
                {
                    return true;
                }

                return false;
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
                return false;
            }
        }        

        static string GetLBAddress(int addr)
        {
            string ret = "";
            string str = addr.ToString("X5");
            ret += str.Substring(2, 2);
            ret += str.Substring(0, 2);
            ret += "00000";
            ret += str.Substring(4, 1);
            return ret;
        }

        public Int16 GetLW(int regAddress)
        {
            return GetLW(regAddress,1);
        }

        /// <summary>
        /// 讀取LW寄存器的值
        /// </summary>
        /// <param name="ip">觸摸屏IP地址</param>
        /// <param name="port">端口</param>
        /// <param name="index">包序號</param>
        /// <param name="regAddress">LW寄存器地址</param>
        /// <param name="count">寄存器個數,當前只支持1個寄存器</param>
        /// <returns>返回值</returns>
        public Int16 GetLW(int regAddress, int count)
        {
            //讀LW9009
            //PC發:    01600000ff000000000008000c00be0300003600000000000000000008ff3123000001000000
            //HMI回:   01600000ff000000000008000500be03000036000000000000000000000000000040400000

            //PC發:    01600000ff000000000008000c00bc0300003600000000000000000008ff3123000001000000
            //HMI回:    01600000ff000000000008000500bc03000036000000000000000000000000000040400000
            try
            {
                UInt16 ret = 0;
                string sendHeader = "01600000ff000000000008000c";
                string sendRegConstStr = "0300003600000000000000000008ff";

                string receiveHeader = "01600000ff0000000000080005";

                string sendStr = sendHeader;
                sendStr += GetIndex().ToString("x4");
                sendStr += sendRegConstStr;
                sendStr += ToLittleEndian((UInt16)regAddress).ToString("x4");
                sendStr += "0000";
                sendStr += ToLittleEndian((UInt16)count).ToString("x4");
                sendStr += "0000";

                var receiveData = Send(sendStr);
                var receiveStr = BitConverter.ToString(receiveData).Replace("-", "").ToLower();

                if (receiveStr.Length > receiveHeader.Length && //長度無無異常
                    receiveStr.StartsWith(receiveHeader) && //接收頭校驗成功
                    string.Compare(sendStr.Substring(sendHeader.Length, 4), receiveStr.Substring(receiveHeader.Length, 4)) == 0 //包序號校驗成功
                )
                {
                    var s1 = receiveStr.Substring(66, 4);
                    ret = Convert.ToUInt16(s1, 16);
                    return (Int16)ToLittleEndian(ret);
                }
                return -1;

            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
                return -1;
            }
        }

        public bool SetLW(int regAddress, Int16 value)
        {
            //寫LW9022=2024    (0xE807)|9022=0x3e23
            //PC發:    01600000ff000000000008000e 00d9 0300005100000000000000010008ff 3e23 0000 0100 e807 0000
            //HMI回:        01600000ff0000000000080001 00d9 030000510000000000000000000000000001
            //              01600000ff00000000000800010001030000510000000000000000000000000001
            try
            {
                string sendHeader = "01600000ff000000000008000e";
                string sendRegConstStr = "0300005100000000000000010008ff";
                
                string receiveHeader = "01600000ff0000000000080001";

                string sendStr = sendHeader;
                sendStr += GetIndex().ToString("x4");
                sendStr += sendRegConstStr;
                sendStr += ToLittleEndian((UInt16)regAddress).ToString("x4");
                sendStr += "0000";
                sendStr += ToLittleEndian(1).ToString("x4");
                sendStr += ToLittleEndian((UInt16)value).ToString("x4");
                sendStr += "0000";

                var receiveData = Send(sendStr);
                var receiveStr = BitConverter.ToString(receiveData).Replace("-", "").ToLower();

                if (receiveStr.Length > receiveHeader.Length && //長度無無異常
                    receiveStr.StartsWith(receiveHeader) && //接收頭校驗成功
                    string.Compare(sendStr.Substring(sendHeader.Length, 4), receiveStr.Substring(receiveHeader.Length, 4)) == 0 //包序號校驗成功
                )
                {
                    return true;
                }
                return false;

            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
                return false;
            }
        }

        byte[] Send(string str)
        {
            try
            {
                using (var client = new TcpClient())
                {
                    client.Connect(_ip, _port);
                    var s = client.GetStream();
                    var sendData = HexStringToByteArray(str);
                    s.Write(sendData);

                    byte[] buffer = new byte[1024];
                    int n = s.Read(buffer);
                    byte[] receiveData = new byte[n];
                    Array.Copy(buffer, receiveData, n);
                    //Console.WriteLine($"{DateTime.Now.ToString()}+_接收內容{receiveData.Length}:\t" + BitConverter.ToString(receiveData));
                    return receiveData;
                }
            }catch(Exception ex)
            {
                Console.WriteLine(ex.Message);
                return null;
            }
        }

        /// <summary>
        /// 十六進制字符串轉字節數組
        /// </summary>
        /// <param name="str">要轉換的字符串</param>
        /// <returns></returns>
        static byte[] HexStringToByteArray(string str)
        {
            return Enumerable.Range(0, str.Length).Where(x => (x % 2) == 0).Select(y => (byte)Convert.ToByte(str.Substring(y, 2), 16)).ToArray();
        }

        /// <summary>
        /// 大端轉小端和小端轉大端的操作是相同的,共用同一個即可
        /// </summary>
        /// <param name="dat">要轉換的內容</param>
        /// <returns></returns>
        static UInt16 ToLittleEndian(UInt16 dat)
        {
            return BitConverter.ToUInt16(BitConverter.GetBytes(dat).Reverse().ToArray());
        }

        /// <summary>
        /// 大端轉小端和小端轉大端的操作是相同的,共用同一個即可
        /// </summary>
        /// <param name="dat">要轉換的內容</param>
        /// <returns></returns>
        static UInt32 ToLittleEndian(UInt32 dat)
        {
            return BitConverter.ToUInt32(BitConverter.GetBytes(dat).Reverse().ToArray());
        }
    }
}
[ 此帖被xiapeng01在2024-04-13 15:55重新編輯 ]
xiapeng01
級別: 探索解密
精華主題: 0
發帖數量: 61 個
工控威望: 189 點
下載積分: 1197 分
在線時間: 83(小時)
注冊時間: 2012-12-31
最后登錄: 2025-05-25
查看xiapeng01的 主題 / 回貼
1樓  發表于: 2024-04-13 15:51
內容超長。。。。。。
觸摸屏重啟后手動進入觸摸屏校準,執行完成校準后會詢問是否恢復下載密碼,輸入yes之后,會清空內部的項目。
[ 此帖被xiapeng01在2024-04-20 16:16重新編輯 ]
附件: WeintekTest.rar (161 K) 下載次數:29
網站提示: 請不要用迅雷下載附件,容易出錯
tttabi
級別: 略有小成
精華主題: 0
發帖數量: 117 個
工控威望: 325 點
下載積分: 2720 分
在線時間: 63(小時)
注冊時間: 2023-10-07
最后登錄: 2025-06-04
查看tttabi的 主題 / 回貼
2樓  發表于: 2024-04-19 17:04
問題這個怎么放進去呢
往事如風
科技改變制造
級別: 網絡英雄

精華主題: 0
發帖數量: 11803 個
工控威望: 19197 點
下載積分: 14025 分
在線時間: 2769(小時)
注冊時間: 2013-01-31
最后登錄: 2025-05-29
查看往事如風的 主題 / 回貼
3樓  發表于: 2024-04-21 15:58
不明覺厲
三人行者必有我師 ,擇其善者而從之
biaogege520
清晨的風
級別: 略有小成
精華主題: 0
發帖數量: 202 個
工控威望: 394 點
下載積分: 60 分
在線時間: 78(小時)
注冊時間: 2015-07-01
最后登錄: 2025-05-29
查看biaogege520的 主題 / 回貼
4樓  發表于: 2024-05-09 14:07
        

主站蜘蛛池模板: 最近国产中文字幕_av在线免费播_亚洲裸男gv网站_www黄色毛片_四虎现在的网址是什么_欧美国产精品久久久乱码_亚洲一区二区三区四区在线免费观看_av美女网 | 亚洲91视频_国产一区二区三区视频网站_2018天天弄国产大片_韩国一级片在线_porno日本xxxxx_日韩欧美一区二区三区久久婷婷_精品国产乱码久久久久久天美_一级黄色影片在线观看 | 久久精品无码一区二区小草_国产精品一区二区三区在线观_色五月最新网址_h免费看_一a本v道久久_国产日日操_亚洲无线观看国产高清_日本三级黄色录像 | 99视频内射三四_禁忌的恋爱关系在线观看_亚洲成年_91精品啪在线观看国产_久久精品99久久香蕉国产色戒_午夜影院黄色一级片_亚洲AV成人无码网站18禁_黄色片免费大全 | 色婷婷av777_三级成网站_天无日天天操天天干_亚洲日本va一区二区三区_中文在线中文资源不卡无_亚洲av熟妇在线观看_欧美精品久久久久久久久_在线观看私人黄 | 一区视频在线免费观看_久久天天躁夜夜躁狠狠_亚洲精品一级_成人性生交大片看1_xxx国产精品视频xxx软件_免费人妻无码不卡中文字幕系列_97超碰免费人人看人人_亚洲午夜一二三区视频 | 久久精品爱_久操免费福利视频_av日韩天堂_不卡av在线免费观看_精品九一_精品一区二区三区无码视频_国产亚洲视频在线观看视频在线_亚洲精品乱码久久久v开放时间 | 亚洲超碰97人人做人人爱_国产精品日日做人人爱_久久精品夜色国产亚洲av_人妻体内射精一区二区_久久久精品波多野结衣_最新91在线视频_久久9色_国产成视频在线观看 | 亚洲成AⅤ人影院在线欢看_亚洲国产成人精品无码区宅男?_97国产最新_在线视频97_无码精品国产VA在线观看DVD_青青视频网_一区二区日本视频_国产精品久久久一区 | 狠狠爱亚洲五月婷婷av_毛茸茸性XXXX毛茸茸毛茸茸_午夜精品久久久99热福利_国产日韩高清一区二区三区在线_一区二区麻豆_性无码免费一区二区三区屯线_免费观看9x视频网站在线观看_私人成片免费观看 | 亚洲AV无码专区国产乱码京东传媒_色一情一乱一乱一区91Av_av免费在线观看网址_中文字幕精品—区二区_AAA级黄色视频_日本视频一二三区_强行糟蹋人妻HD中文_精品一区2区三区 | 国产综合免费视频_在线色网址_国产一区二_久久久久亚洲国产_国产精品我不卡_中文字幕无线码免费人妻_伊人av超碰久久久麻豆_日日拍夜夜 | 亚洲91视频_国产一区二区三区视频网站_2018天天弄国产大片_韩国一级片在线_porno日本xxxxx_日韩欧美一区二区三区久久婷婷_精品国产乱码久久久久久天美_一级黄色影片在线观看 | 盗摄牛牛av影视一区二区_全国最大黄色网址_深夜福利网_一级特黄网站_乱丶伦丶图丶区一区二区_毛片黄片一级片_日本福利网_亚洲av高清不卡久久 | 国产区综合_精品一区二区免费视频视频_国产精品乱子乱XXXX_久久综合性_亲含舔丰满湿插_国产高清乱码又大又圆_久久免费看少妇高潮a片特黄网站_亚洲综合久 | 日韩经典AV在线观看_中文无码日韩欧免费视频_捆绑白丝粉色jk震动捧喷白浆_日本慰安所一级毛片在线播放_亚洲精品久久久乳夜夜欧美_97浪潮性色91久久久美川_亚洲蜜桃精久久久久久久久久久久_最新中文字幕av | 一区视频在线免费观看_久久天天躁夜夜躁狠狠_亚洲精品一级_成人性生交大片看1_xxx国产精品视频xxx软件_免费人妻无码不卡中文字幕系列_97超碰免费人人看人人_亚洲午夜一二三区视频 | 亚洲视频aaa_日本19禁啪啪免费观看www_国产一区二区三区四区www._亚洲精品久久久久中文字幕欢迎你_亚洲精品50p_av无码午夜福利一区二区三区_亚洲第一免费播放区_91一区在线 | 嫩草精品_91精品一区二区三区四区_欧洲美女粗暴牲交_日韩精品无码一区二区三区av_伊人青草_内射爽无广熟女亚洲_欧美黄片免费看_久久本道综合色狠狠五月 | 在线黄色免费观看_国产精品午夜无码av体验区_国产精品免费_区二区三区观看_国产成人欧美_久久精品第一页_四川丰满少妇A级毛片_日韩欧美特级片_色哟哟一区二区 | 久色激情_日本国产亚洲_蜜臀久久99精品久久久久久9_BBWBBWBBW少妇毛茸茸_欧美18.19_国产人妻久久精品一区二区三区_色小姐综合_a色视频 | 中日韩欧美毛片免费观看_鲁丝一区二区三区免费_精品一久久香蕉国产线看观看古代_欧美一进一出视频_www伊人网_在线日韩欧美国产_久操小视频_97视频免费观看 | 欧美多毛肥胖老妇做爰_caoporn国产精品免费公开_蜜臀亚洲av永久无码精品老司机_男人狂桶女人高潮嗷嗷叫_精品在线视频免费在线观看视频_亚州福利视频_国产精品视频网_一区二区狠狠色丁香久久婷婷 | 国内精品九九久久久精品_九九热视频这里有精品_97色资源_浮生影院大全免费观看中文版_a片疯狂做爰全过的视频_国产大胸A在线观看_免费一区视频_中文字幕av久久激情亚洲精品 | 午夜精品久久久内射近拍高清_三级久久久久久久久高潮_在线免费观看av网址_免费国产在线观看_日本熟妇中文字幕三级_国产免费让你躁在线视频_奇米视频888_麻豆午夜影院 | 免费岛国片_人妻中文乱码在线网站_蜜臀av国内精品久久久_69国产精品视频免费观看_成人久久免费网站_欧美性色黄大片WWW喷水_亚洲精品国产高清_无码专区亚洲制服丝袜 | 超碰在线97中文字幕_天天草夜夜草_亚洲精品久久久久久久久久久久_四韩色情无码一区二区三区_国产精品久久久久久久7777_欧美国产日韩在线三区_7777偷窥盗摄视频_97在线视频免费 | 国色天香2019中文字幕在线观看_亚洲AV无码传区国产乱码O_97在线免费公开视频_熟女无套高潮内谢吼叫_国产精品嫩草影院入口一二三_国产亚洲欧美日韩精品一区二区三区_乱色欧美激情亚洲欧美激情_四虎在线免费观看视频 | 久久久精品一区_人人爽天天碰天天躁夜夜躁_亚洲精品网页_97一期涩涩97片久久久久久久_www亚洲一区_久久久精品无码中文字幕_爱草草视频_国产伦国产伦老熟300部 | 欧美精品高潮在线视频导航_亚洲女人av久久天堂_特a级黄色片_狠狠色噜噜狠狠狠狠7777米奇_亚洲xx网_国产日韩一区在线精品_国产精品同性女性_午夜经典 | 黄a免费视频_久久精品国产亚洲一区二区_国产又爽又黄又无遮挡的激情视频_爱福利一区_亚洲国内精品在线_日韩aaa视频_久久无码免费视频播放_久久精品人人槡人妻人 | 日韩欧美一起_国产精品VA无码一区二区_人人妻人人澡人人爽人人精品_av在线黄色_精品69视频一区二区三区_黄色的网站免费在线观看_永久免费不卡在线观看黄网站_亚洲精品在线视频 | 成人青青草_日韩欧美国产综合在线一区二区三区_国精品无码一区二区三区在线蜜臀_色小妹网站_日日搞夜夜操_色综合久久久无码中文字幕_中文字幕一区二区精品区_欧美性猛交XXXX乱大交3 | 国产一区二精品区在线_中文字幕中文字幕一区三区_japanesehd熟女熟妇_97精品尹人久久大香线蕉_国产日产综合_国产一区二区在线看_成人精品视频在线观看_成人天堂视频在线观看 | 亚洲综合人成网免费视频_亚洲妓女综合网99_久别的草原在线看视频免费_欧美黄色三级视频_7777国产欧美日韩亚洲黑人_亚洲成色www_伊人天天干_男女性杂交内射妇女BBWXZ | 国产一级性片_性欧美另类_精品视频一区二区在线_国产成人无码AⅤ片在线观看_国产一级一级一级_一级黄色大片在线_国产a爱_在线看片日韩 | 国产成人精品午夜在线播放_99精品啪在线观看国产老湿机_亚洲天堂亚洲天堂_无码国产精品一区二区AV_亚洲国产人成自久久国产_国产成人尤物在线视频_可以免费观看的一级毛片_欧美成天堂网地址 | 超碰CAO已满18进入离开官网_欧美久久网_GOGO全球人体高清大胆亚洲AV_亚洲精品无码久久千人斩探花_九色综合九色综合色鬼_亚洲日韩乱码中文无码蜜桃臀网站_国产精品久久久99_亚洲区日韩精品中文字幕 | 亚洲视频欧美视频_欧美性欧美巨大黑白大战_国产伦子系列沙发午睡_日本xxxx在线观看_女同一区二区_国产黄色激情视频_国产精品午夜爆乳美女视频_国产麻传媒精品国产AV | 日韩免费无码专区精品观看_久久久久久久久久久久久久免费看_18av千部免费影片与您_日本天堂在线视频_空姐毛片_香蕉私人影院_黑人巨茎大战白人美女_国产成人av免费观看 | 中国av免费看_亚洲综合在线第一页_啊灬啊灬啊灬快灬深点吃奶_日本a大片_四川少妇BBB凸凸凸BBB按摩_亚洲第一视频网_久久婷婷色香五月综合激激情狠狠做五月_成人免费黄色视频 |