Beispiel #1
0
        public void getIP(int dqinx, string dizhi, string seed, int jubing, int waicengjubing, out string ip)
        {
            WriteLog.WriteLogFile(dqinx + "", "获取IP,jubing:" + jubing + ",waicengjubing:" + waicengjubing);
            ip = "";
            bool   t           = false;
            string packagename = "package:com.ddm.iptools";
            //lock (obj)
            {
                t = MyFuncUtil.lureninstallOk(dqinx, packagename, () =>
                {
                    WriteLog.WriteLogFile(dqinx + "", "安装app没成功--iptools");

                    /*temp = myQuit(dqinx, dizhi);
                     * if (!temp)
                     * {
                     *  WriteLog.WriteLogFile(dqinx + "", "模拟器" + dqinx + "关闭失败");
                     *  Thread.Sleep(20000);
                     *  return;
                     * }*/
                    WriteLog.WriteLogFile(dqinx + "", "模拟器" + dqinx + "安装iptools");
                    //MyLdcmd.myRestore(dqinx, seed, dizhi);
                    MyLdcmd.installApp(dqinx, @"C:\迅雷下载\2_1b823b1928a42f09423f28cb79179bfe.apk");

                    /*temp = myQuit(dqinx, dizhi);
                     * if (!temp)
                     * {
                     *  WriteLog.WriteLogFile(dqinx + "", "模拟器" + dqinx + "关闭失败");
                     *  Thread.Sleep(20000);
                     *  return;
                     * }
                     * temp = MyFuncUtil.Launch(dqinx, dizhi);
                     * if (!temp)
                     * {
                     *  WriteLog.WriteLogFile(dqinx + "", "模拟器" + dqinx + "打开失败");
                     *  Thread.Sleep(20000);
                     *  return;
                     * }*/
                    Thread.Sleep(3000);
                });
                if (t == false)
                {
                    Thread.Sleep(1000 * 60 * 2);
                    bool luren = MyLdcmd.jingjieisok(dqinx, packagename);
                    if (!luren)
                    {
                        return;
                    }
                }
                //窗口已打开 获取句柄
                if (jubing <= 0)
                {
                    WriteLog.WriteLogFile(dqinx + "", "准备获取句柄,在getIP处");
                    jubing = MyLdcmd.getDqmoniqiJuBingByIndex(dqinx, dizhi);
                    WriteLog.WriteLogFile(dqinx + "", "模拟器" + dqinx + "句柄为" + jubing);
                }
                myDm dm = new myDm();
                int  r1 = 0;
                if (jubing > 0)
                {
                    r1 = dm.bindWindow(jubing);
                }
                if (r1 != 1)
                {
                    WriteLog.WriteLogFile(dqinx + "", "模拟器" + dqinx + "绑定失败");
                    Thread.Sleep(20000);
                    return;
                }
                //dm.SetClipboard("请");
                //apkName = dict["IPtool"];
                string apkName = "com.ddm.iptools/com.ddm.iptools.ui.MainActivity";
                //int i = MyFuncUtil.QiDongWanChengLurenzhanghao("d", dqinx, apkName);
                fuzhu.YouXiFactory yxf = new fuzhu.YouXiFactory();
                int i = QiDongWanChengGetZhiDingDian(dqinx, apkName, dm, jubing, yxf.CreateYouXiSanDian("tongyongsandian"), "IPtool");
                if (i == -1)
                {
                    WriteLog.WriteLogFile(dqinx + "", "模拟器" + dqinx + "打开app" + apkName + "失败");
                    Thread.Sleep(20000);
                    return;
                }
                string yiqu = "";
                bool   t2   = PanDuan_QidongByYiQuDian_IP(dqinx, 1000 * 60, dm, jubing, out yiqu);
                if (t2)
                {
                    WriteLog.WriteLogFile(dqinx + "", "模拟器发现已取点" + yiqu);
                }
                ip = yiqu;

                /*if (ip != "" && ip.IndexOf("请") < 0)
                 * {
                 *  return;
                 * }  */
            }
        }