Example #1
0
    public static void SetVideoCallBackFunc(IntPtr OperateCamera, byte[] CameraName)
    {
        Stream str;

        str = new MemoryStream();
        byte[] headBuff = GetSocketHeadBuff(NetProtocol.NET_GM_PROTPCOL.CTOS_GETCALLBACKDATA_MSG, (Int16)NetProtocol.Protocol.CTOS_CAMERAINFO_LEN);

        byte[] MSG    = new byte[NetProtocol.Protocol.CTOS_CAMERAINFO_LEN];
        object objMsg = NetTools.BytesToStuct(MSG, typeof(NetProtocol.CTOS_CAMERAINFO));

        NetProtocol.CTOS_CAMERAINFO pMsg = (NetProtocol.CTOS_CAMERAINFO)objMsg;

        pMsg.camerHander = OperateCamera;
        pMsg.PlayerIndex = 1001;
        pMsg.cName       = CameraName;
        byte[] ReadMsgbuff = NetTools.GetBytes(pMsg);

        byte[] PacketBuff = new byte[NetProtocol.Protocol.CTOS_CAMERAINFO_LEN + headBuff.Length];
        str.Write(headBuff, 0, headBuff.Length);
        str.Write(ReadMsgbuff, 0, ReadMsgbuff.Length);
        str.Position = 0;
        int r = str.Read(PacketBuff, 0, PacketBuff.Length);

        if (r > 0)
        {
            clientSocket.Send(PacketBuff, PacketBuff.Length, SocketFlags.None);
        }
    }
Example #2
0
    // 打开预设位
    public static void GoToPrePosition(string name, int pos)
    {
        Stream str;

        str = new MemoryStream();
        byte[] headBuff = GetSocketHeadBuff(NetProtocol.NET_GM_PROTPCOL.CTOS_GOTOPREPOSITION_MSG, (Int16)NetProtocol.Protocol.PREPOSITIONINFO_LEN);

        byte[] MSG    = new byte[NetProtocol.Protocol.PREPOSITIONINFO_LEN];
        object objMsg = NetTools.BytesToStuct(MSG, typeof(NetProtocol.PREPOSITIONINFO));

        NetProtocol.PREPOSITIONINFO pMsg = (NetProtocol.PREPOSITIONINFO)objMsg;
        pMsg.camerHander = hCurOperateCamera;
        pMsg.cName       = NetTools.CodeBytes(name, 64);
        pMsg.ret         = pos;
        byte[] ReadMsgbuff = NetTools.GetBytes(pMsg);

        byte[] PacketBuff = new byte[NetProtocol.Protocol.PREPOSITIONINFO_LEN + headBuff.Length];
        str.Write(headBuff, 0, headBuff.Length);
        str.Write(ReadMsgbuff, 0, ReadMsgbuff.Length);
        str.Position = 0;
        int r = str.Read(PacketBuff, 0, PacketBuff.Length);

        if (r > 0)
        {
            clientSocket.Send(PacketBuff, PacketBuff.Length, SocketFlags.None);
        }
    }
Example #3
0
        private void rewritePathIfShortcutUrl()
        {
            var ewfResolvers = new[]
            {
                new ShortcutUrlResolver(
                    "ewf",
                    ConnectionSecurity.SecureIfPossible,
                    () => {
                    var page = MetaLogicFactory.CreateBasicTestsPageInfo();
                    return(page.UserCanAccessResource ? page : null);
                }),
                new ShortcutUrlResolver(
                    "ewf/impersonate",
                    ConnectionSecurity.SecureIfPossible,
                    () => {
                    if (!UserManagementStatics.UserManagementEnabled)
                    {
                        return(null);
                    }
                    var page = MetaLogicFactory.CreateSelectUserPageInfo("");
                    return(page.UserCanAccessResource ? page : null);
                })
            };

            var url = GetRequestAppRelativeUrl(Request);

            foreach (var resolver in ewfResolvers.Concat(GetShortcutUrlResolvers()))
            {
                if (resolver.ShortcutUrl.ToLower() != url.ToLower())
                {
                    continue;
                }

                // Redirect to the same shortcut URL to fix the connection security, normalize the base URL, normalize the shortcut URL casing, or any combination of
                // these.
                var canonicalAbsoluteUrl = GetDefaultBaseUrl(resolver.ConnectionSecurity.ShouldBeSecureGivenCurrentRequest(false)) +
                                           resolver.ShortcutUrl.PrependDelimiter("/");
                if (canonicalAbsoluteUrl != RequestState.Url)
                {
                    NetTools.Redirect(canonicalAbsoluteUrl);
                }

                if (ConfigurationStatics.IsIntermediateInstallation && !RequestState.IntermediateUserExists)
                {
                    throw new AccessDeniedException(true, null);
                }

                var resource = resolver.Function();
                if (resource == null)
                {
                    throw new AccessDeniedException(false, resolver.LogInPageGetter != null ? resolver.LogInPageGetter() : null);
                }
                if (resource is ExternalResourceInfo)
                {
                    NetTools.Redirect(resource.GetUrl());
                }
                HttpContext.Current.RewritePath(getTransferPath(resource), false);
                break;
            }
        }
Example #4
0
    // 关闭当前摄像头
    public static void closeCamera()
    {
        Stream str;

        str = new MemoryStream();
        byte[] headBuff = GetSocketHeadBuff(NetProtocol.NET_GM_PROTPCOL.CTOS_CLOSECAMERA_MSG, (Int16)NetProtocol.Protocol.CTOS_CAMERAINFO_LEN);

        byte[] MSG    = new byte[NetProtocol.Protocol.CTOS_CAMERAINFO_LEN];
        object objMsg = NetTools.BytesToStuct(MSG, typeof(NetProtocol.CTOS_CAMERAINFO));

        NetProtocol.CTOS_CAMERAINFO pMsg = (NetProtocol.CTOS_CAMERAINFO)objMsg;

        pMsg.camerHander = hCurOperateCamera;
        pMsg.PlayerIndex = 1001;
        pMsg.cName       = CurCameraName;
        //  NetTools.CodeBytes(CurCameraName, 64);
        byte[] ReadMsgbuff = NetTools.GetBytes(pMsg);

        byte[] PacketBuff = new byte[NetProtocol.Protocol.CTOS_CAMERAINFO_LEN + headBuff.Length];
        str.Write(headBuff, 0, headBuff.Length);
        str.Write(ReadMsgbuff, 0, ReadMsgbuff.Length);
        str.Position = 0;
        int r = str.Read(PacketBuff, 0, PacketBuff.Length);

        if (r > 0)
        {
            clientSocket.Send(PacketBuff, PacketBuff.Length, SocketFlags.None);
        }
    }
        public override (List <NetTask>, ExtractedInfo) Extract(string url, IExtractorOption option = null)
        {
            var match = ValidUrl.Match(url).Groups;

            if (option == null)
            {
                option = RecommendOption(url);
            }

            var html   = NetTools.DownloadString(url);
            var result = new List <NetTask>();

            foreach (var img in JObject.Parse((new Regex("item: ({.*})")).Match(html).Groups[1].Value)["album_images"]["images"])
            {
                var hash = img["hash"].ToString();
                var ext  = img["ext"].ToString();
                var task = NetTask.MakeDefault($"https://i.imgur.com/{hash}{ext}");
                task.SaveFile = true;
                task.Filename = $"{hash}{ext}";
                task.Format   = new ExtractorFileNameFormat {
                    Id = hash, Extension = ext, FilenameWithoutExtension = hash, Url = url
                };
                result.Add(task);
            }

            result.ForEach(task => task.Format.Extractor = GetType().Name.Replace("Extractor", ""));
            return(result, new ExtractedInfo {
                Type = ExtractedInfo.ExtractedType.Search
            });
        }
Example #6
0
        public void Test2(string url)
        {
            var html = NetTools.DownloadString(url);
            var c1   = DepartmentExtractor.ExtractStyle2(html, "");

            Assert.IsTrue(c1.Count > 0, $"{c1.Count}");
        }
Example #7
0
    //socket 握手通信
    private static void LaunchSocket(string Name)
    {
        Stream str;

        str = new MemoryStream();
        byte[] headBuff = GetSocketHeadBuff(NetProtocol.NET_GM_PROTPCOL.CTOS_CLIENTLOGIN_MSG, (Int16)NetProtocol.Protocol.CTOS_CLIENTLOGIN_LEN);

        byte[] Msgbuff = new byte[NetProtocol.Protocol.CTOS_CLIENTLOGIN_LEN];
        object objMsg  = NetTools.BytesToStuct(Msgbuff, typeof(NetProtocol.CTOS_CLIENTLOGIN));

        NetProtocol.CTOS_CLIENTLOGIN pMsg = (NetProtocol.CTOS_CLIENTLOGIN)objMsg;
        pMsg.PlayerName = NetTools.CodeBytes(Name, NetProtocol.ConstVar.ZZ_NAME_MAX + 3);
        pMsg.playerUID  = 1001;
        byte[] ReadMsgbuff = NetTools.GetBytes(pMsg);

        byte[] PacketBuff = new byte[NetProtocol.Protocol.CTOS_CLIENTLOGIN_LEN + headBuff.Length];
        str.Write(headBuff, 0, headBuff.Length);
        str.Write(ReadMsgbuff, 0, ReadMsgbuff.Length);
        str.Position = 0;
        int r = str.Read(PacketBuff, 0, PacketBuff.Length);

        if (r > 0)
        {
            clientSocket.Send(PacketBuff, PacketBuff.Length, SocketFlags.None);
        }
        return;
    }
Example #8
0
    //ip 172.22.20.232 userName admin pwd ""登录服务器
    public static void LogonServer(string ip, string userName, string pwd)
    {
        Stream str;

        str = new MemoryStream();
        byte[] headBuff = GetSocketHeadBuff(NetProtocol.NET_GM_PROTPCOL.CTOS_INITVIDEO_MSG, (Int16)NetProtocol.Protocol.CTOS_INITVIDEO_LEN);

        byte[] MSG    = new byte[NetProtocol.Protocol.CTOS_INITVIDEO_LEN];
        object objMsg = NetTools.BytesToStuct(MSG, typeof(NetProtocol.CMS_LogonInfo));

        NetProtocol.CMS_LogonInfo pMsg = (NetProtocol.CMS_LogonInfo)objMsg;

        pMsg.nStructVersion = 201402170;
        pMsg.srvIP          = NetTools.CodeBytes(ip, 64);
        pMsg.User           = NetTools.CodeBytes(userName, 64);
        pMsg.Passwd         = NetTools.CodeBytes(pwd, 64);
        pMsg.nProtocol      = 1;
        pMsg.nRelayMode     = 0;
        byte[] ReadMsgbuff = NetTools.GetBytes(pMsg);

        byte[] PacketBuff = new byte[NetProtocol.Protocol.CTOS_INITVIDEO_LEN + headBuff.Length];
        str.Write(headBuff, 0, headBuff.Length);
        str.Write(ReadMsgbuff, 0, ReadMsgbuff.Length);
        str.Position = 0;
        int r = str.Read(PacketBuff, 0, PacketBuff.Length);

        if (r > 0)
        {
            clientSocket.Send(PacketBuff, PacketBuff.Length, SocketFlags.None);
        }
    }
Example #9
0
            /// <summary>
            /// Get user informations
            /// </summary>
            /// <param name="authorId"></param>
            /// <returns></returns>
            public static async Task <List <User> > GetUsersAsync(long authorId)
            {
                var url = "https://public-api.secure.pixiv.net/v1/users/" + authorId.ToString() + ".json";

                var param = new Dictionary <string, string>
                {
                    { "profile_image_sizes", "px_170x170,px_50x50" },
                    { "image_sizes", "px_128x128,small,medium,large,px_480mw" },
                    { "include_stats", "1" },
                    { "include_profile", "1" },
                    { "include_workspace", "1" },
                    { "include_contacts", "1" },
                };

                var task = NetTask.MakeDefault(url + "?" + string.Join("&", param.ToList().Select(x => $"{x.Key}={x.Value}")));

                task.Referer   = "http://spapi.pixiv.net/";
                task.UserAgent = "PixivIOSApp/5.8.0";
                task.Headers   = new Dictionary <string, string>();
                task.Headers.Add("Authorization", "Bearer " + AccessToken);

                var result = await NetTools.DownloadStringAsync(task);

                return(JToken.Parse(result).SelectToken("response").ToObject <List <User> >());
            }
Example #10
0
            /// <summary>
            /// Get users works async by author-id.
            /// </summary>
            /// <param name="authorId"></param>
            /// <param name="page"></param>
            /// <param name="perPage"></param>
            /// <param name="publicity"></param>
            /// <param name="includeSanityLevel"></param>
            /// <returns></returns>
            public static async Task <Paginated <UsersWork> > GetUsersWorksAsync(long authorId, int page = 1, int perPage = 30, string publicity = "public", bool includeSanityLevel = true)
            {
                var url = "https://public-api.secure.pixiv.net/v1/users/" + authorId.ToString() + "/works.json";

                var param = new Dictionary <string, string>
                {
                    { "page", page.ToString() },
                    { "per_page", perPage.ToString() },
                    { "publicity", publicity },
                    { "include_stats", "1" },
                    { "include_sanity_level", Convert.ToInt32(includeSanityLevel).ToString() },
                    { "image_sizes", "px_128x128,small,medium,large,px_480mw" },
                    { "profile_image_sizes", "px_170x170,px_50x50" },
                };

                var task = NetTask.MakeDefault(url + "?" + string.Join("&", param.ToList().Select(x => $"{x.Key}={x.Value}")));

                task.Referer   = "http://spapi.pixiv.net/";
                task.UserAgent = "PixivIOSApp/5.8.0";
                task.Headers   = new Dictionary <string, string>();
                task.Headers.Add("Authorization", "Bearer " + AccessToken);

                var result = await NetTools.DownloadStringAsync(task);

                return(JToken.Parse(result).SelectToken("response").ToObject <Paginated <UsersWork> >());
            }
Example #11
0
    public void ConnectCallBack()
    {
        NetTools.Log("ConnectCallBack");
        EntryGameRequest req = new EntryGameRequest(LoginManager.Uid, 1, LoginManager.Token);

        req.Send();
    }
Example #12
0
            private static string graphql_qurey(InstagramExtractorOption option, string query_hash, Dictionary <string, string> param)
            {
                var url = $"https://www.instagram.com/graphql/query/?query_hash=" + query_hash + "&variables=" +
                          HttpUtility.UrlEncode(JsonConvert.SerializeObject(param));

                option.PageReadCallback?.Invoke(url);
                return(NetTools.DownloadString(url));
            }
Example #13
0
 public void Log()
 {
     NetTools.Log("===========InGameItem===========");
     NetTools.Log("id : " + id);
     NetTools.Log("showtime : " + showtime);
     NetTools.Log("confid : " + confid);
     NetTools.Log("uid : " + uid);
     NetTools.Log("--------------------------------");
 }
Example #14
0
    // Update is called once per frame
    void Update()
    {
        NetTools.Log("=");
        mousePositionOnScreen = Input.mousePosition;
        NetTools.Log(mousePositionOnScreen.ToString());
        mousePositionOnScreen = Camera.main.ScreenToWorldPoint(mousePositionOnScreen);

        NetTools.Log(mousePositionOnScreen.ToString());
    }
Example #15
0
 public void Log()
 {
     NetTools.Log(
         "uid : " + uid +
         " uname : " + uname +
         " selectItem : " + selectItem +
         " state : " + state
         );
 }
Example #16
0
        public override (List <NetTask>, ExtractedInfo) Extract(string url, IExtractorOption option = null)
        {
            var match = ValidUrl.Match(url).Groups;

            if (option == null)
            {
                option = RecommendOption(url);
            }

            if (match["type"].Value == "reader")
            {
                var id = match["id"].Value;
                var article_info_url = $"https://hiyobi.me/info/{id}";
                option.PageReadCallback?.Invoke(article_info_url);
                var info_html = NetTools.DownloadString(article_info_url);
                var data      = parse_info(info_html);

                var img_file_json_url = $"https://xn--9w3b15m8vo.asia/data/json/{id}_list.json";
                option.PageReadCallback?.Invoke(img_file_json_url);
                var cookie             = "__cfduid=d53c18b351d4a54007ac583a96f4436381568466715";
                var img_file_json_task = NetTask.MakeDefault(img_file_json_url, cookie);
                var img_file_json      = NetTools.DownloadString(img_file_json_task);
                var img_urls           = JArray.Parse(img_file_json).Select(x => $"https://xn--9w3b15m8vo.asia/data/{id}/{x["name"].ToString()}").ToList();

                option.SimpleInfoCallback?.Invoke($"{data.Title}");

                var result = new List <NetTask>();
                var count  = 1;
                foreach (var img in img_urls)
                {
                    var task = NetTask.MakeDefault(img);
                    task.SaveFile = true;
                    task.Filename = img.Split('/').Last();
                    task.Cookie   = cookie;
                    task.Format   = new ExtractorFileNameFormat
                    {
                        Id     = id,
                        Title  = data.Title,
                        Artist = data.artist != null ? data.artist[0] : "N/A",
                        Group  = data.artist != null ? data.artist[0] : "N/A",
                        FilenameWithoutExtension = count++.ToString("000"),
                        Extension = Path.GetExtension(task.Filename).Replace(".", "")
                    };
                    result.Add(task);
                }
                option.ThumbnailCallback?.Invoke(result[0]);
                result.ForEach(task => task.Format.Extractor = GetType().Name.Replace("Extractor", ""));
                return(result, new ExtractedInfo {
                    Type = ExtractedInfo.ExtractedType.WorksComic
                });
            }
            else
            {
                throw new ExtractorException("'search' page not supports yet!");
            }
        }
Example #17
0
        public object GetFieldValue(string fieldName)
        {
            if (string.IsNullOrWhiteSpace(fieldName))
            {
                throw new ArgumentNullException(nameof(fieldName));
            }

            Field field = Fieldes.FirstOrDefault(f => f.Name == fieldName);

            if (field == null)
            {
                throw new ArgumentOutOfRangeException(nameof(fieldName), "输入的字段名没有定义");
            }

            object value = null;

            byte[] valueBS = new byte[field.Range.Length];

            Array.Copy(Buffer, field.Range.MinIndex, valueBS, 0, valueBS.Length);

            if (field.ValueType == typeof(byte))    //byte类型
            {
                value = valueBS[0];
            }
            else if (field.ValueType == typeof(byte[])) //bytes数组
            {
                value = valueBS;
            }
            else if (field.ValueType == typeof(short))  //short类型
            {
                value = NetTools.NetworkToHostOrderFromBytesToShort(valueBS);
            }
            else if (field.ValueType == typeof(ushort))  //ushort类型
            {
                value = NetTools.NetworkToHostOrderFromBytesToUshort(valueBS);
            }
            else if (field.ValueType == typeof(int))   //int类型
            {
                value = NetTools.NetworkToHostOrderFromBytesToInt(valueBS);
            }
            else if (field.ValueType == typeof(uint))   //uint类型
            {
                value = NetTools.NetworkToHostOrderFromBytesToUint(valueBS);
            }
            else if (field.ValueType == typeof(string)) //string类型
            {
                value = NetTools.NetworkToHostOrderFromBytesToString(valueBS, 0, valueBS.Length);
            }
            else
            {
                throw new Exception("未解析数据类型");
            }

            return(value);
        }
Example #18
0
 public static IPAddress GetIP(GameConfig cfg)
 {
     if (cfg.myIP == "default")
     {
         return(NetTools.GetMyIP());
     }
     else
     {
         return(IPAddress.Parse(cfg.myIP));
     }
 }
Example #19
0
    public long uid;    //拾取玩家id -1为没有被拾取

    public static InGameItem Deserialize(DataStream reader)
    {
        InGameItem item = new InGameItem();

        item.id       = reader.ReadSInt32();
        item.showtime = reader.ReadSInt64();
        item.pos      = NetTools.VectorDeserialize(reader);
        item.confid   = reader.ReadSInt32();
        item.uid      = reader.ReadSInt64();
        return(item);
    }
Example #20
0
        public static void StartServer()
        {
            SimplTypesScope chatTranslation  = ChatTranslations.Get();
            Scope <object>  applicationScope = new Scope <object>();

            IPAddress[] locals = NetTools.GetAllIPAddressesForLocalhost();

            WebSocketOODSSServer chatServer = new WebSocketOODSSServer(chatTranslation, applicationScope, _idleTimeout,
                                                                       _MTU);

            chatServer.Start();
        }
Example #21
0
        /// <summary>
        /// Gets a list of local ip addresses.
        /// </summary>
        /// <returns></returns>
        public List <IPAddress> GetLocalAddresses()
        {
            var ips = NetTools.GetLocalAddresses().Where(i => i.IsDnsEligible).Select(i => i.Address).Where(ip => !IPAddress.IsLoopback(ip) && !ip.IsIPv6LinkLocal && !ip.IsIPv6Multicast && !ip.IsIPv6Teredo && !ip.IsIPv6SiteLocal).ToList();

            ips.Sort(new Comparison <IPAddress>((a, b) =>
                                                Comparer <string> .Default.Compare(
                                                    (a.AddressFamily == AddressFamily.InterNetwork ? " " : "") + a.ToString(),
                                                    (b.AddressFamily == AddressFamily.InterNetwork ? " " : "") + b.ToString()
                                                    )
                                                ));
            return(ips);
        }
        void ControlTreeDataLoader.LoadData()
        {
            EwfPage.Instance.SetContentContainer(contentPlace);

            globalPlace.AddControlsReturnThis(getGlobalBlock());
            entityAndTopTabPlace.AddControlsReturnThis(getEntityAndTopTabBlock());
            if (entityUsesTabMode(TabMode.Vertical))
            {
                setUpSideTabs();
            }
            pageActionPlace.AddControlsReturnThis(getPageActionList());
            contentFootCell.Attributes.Add("class", CssElementCreator.ContentFootCellCssClass);
            var contentFootBlock = getContentFootBlock();

            if (contentFootBlock != null)
            {
                contentFootCell.Controls.AddAt(0, contentFootBlock);
            }
            var globalFootBlock = getGlobalFootBlock();

            if (globalFootBlock != null)
            {
                globalFootPlace.AddControlsReturnThis(globalFootBlock);
            }

            BasicPage.Instance.Body.Attributes["class"] = CssElementCreator.BodyCssClass;

            if (!EwfUiStatics.AppProvider.BrowserWarningDisabled())
            {
                if (AppRequestState.Instance.Browser.IsOldVersionOfMajorBrowser() && !StandardLibrarySessionState.Instance.HideBrowserWarningForRemainderOfSession)
                {
                    EwfPage.AddStatusMessage(
                        StatusMessageType.Warning,
                        StringTools.ConcatenateWithDelimiter(
                            " ",
                            new[]
                    {
                        "We've detected that you are not using the latest version of your browser.",
                        "While most features of this site will work, and you will be safe browsing here, we strongly recommend using the newest version of your browser in order to provide a better experience on this site and a safer experience throughout the Internet."
                    }) + "<br/>" +
                        NetTools.BuildBasicLink("Click here to get Firefox (it's free)", new ExternalResourceInfo("http://www.getfirefox.com").GetUrl(), true) + "<br />" +
                        NetTools.BuildBasicLink(
                            "Click here to get Chrome (it's free)",
                            new ExternalResourceInfo("https://www.google.com/intl/en/chrome/browser/").GetUrl(),
                            true) + "<br />" +
                        NetTools.BuildBasicLink(
                            "Click here to get the latest Internet Explorer (it's free)",
                            new ExternalResourceInfo("http://www.beautyoftheweb.com/").GetUrl(),
                            true));
                }
                StandardLibrarySessionState.Instance.HideBrowserWarningForRemainderOfSession = true;
            }
        }
        /// <summary>
        /// Token校验
        /// </summary>
        /// <returns></returns>
        //private bool ValidateToken(string ticket, string sys)
        //{
        //    bool result = false;
        //    int type = 0;
        //    int.TryParse(sys, out type);
        //    try
        //    {
        //        using (ClientSiteClientProxy proxy = new ClientSiteClientProxy(ProxyEx(ticket)))
        //        {
        //            Result<Base_User> login = proxy.GetBaseUserByToken(ticket, type);
        //            if (login.Flag == 0 && ((type == 1 && login.Data.AndroidTokenTime.HasValue) || (type == 2 && login.Data.IosTokenTime.HasValue)))
        //            {
        //                DateTime expiryTime = type == 1 ? login.Data.AndroidTokenTime.Value : login.Data.IosTokenTime.Value;
        //                if (DateTime.Now <= expiryTime)
        //                {
        //                    //user = login.Data;
        //                    result = true;
        //                }
        //            }
        //        }
        //    }
        //    catch (Exception e)
        //    {
        //        throw e;
        //    }
        //    return result;
        //}

        ///// <summary>
        ///// 权限校验(判断用户登录时,已经获取了当前登录用户的所有权限)
        ///// </summary>
        ///// <returns></returns>
        //private bool ValidateRight()
        //{
        //    string module = (Module ?? "").ToString();
        //    string action = (Action ?? "").ToString();
        //    if (CheckRight)
        //    {
        //        if (string.IsNullOrWhiteSpace(module) || string.IsNullOrWhiteSpace(action))
        //        {
        //            return false;
        //        }
        //        if (user == null)
        //        {
        //            return false;
        //        }
        //        return true;
        //    }
        //    return true;
        //}


        protected ClientProxyExType ProxyEx(string token = "")
        {
            ClientProxyExType cpet = null;

            if (cpet == null)
            {
                cpet              = new ClientProxyExType();
                cpet.Token        = token;
                cpet.IP_WebServer = NetTools.GetLocalMachineIP4();
            }
            return(cpet);
        }
Example #24
0
        public void Test5(string url)
        {
            Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);

            var task = NetTask.MakeDefault(url);

            task.Encoding = Encoding.GetEncoding(51949);
            var html = NetTools.DownloadString(task);
            var c1   = DepartmentExtractor.ExtractStyle5(html, "");

            Assert.IsTrue(c1.Count > 0, $"{c1.Count}");
        }
Example #25
0
    //解析玩家列表
    public void DeserializePlayerList(DataStream reader)
    {
        byte playerCount = reader.ReadByte();

        NetTools.Log("DeserializePlayerList player count : " + playerCount);
        for (int i = 0; i < playerCount; i++)
        {
            InRoomPlayerManager pm = new InRoomPlayerManager();
            pm.Deserialize(reader);
            playerList.Add(pm);
        }
    }
Example #26
0
    void PlayerResponse(Resp r)
    {
        PlayerResp resp = (PlayerResp)r;

        NetTools.Log("PlayerResponse type:" + resp.type);
        switch (resp.type)
        {
        case NetProtocols.PLAYER_DATA:
            break;

        case NetProtocols.PLAYER_ITEMCOUNT:
            NetTools.Log("CHANGE ITEM COUNT  id : " + resp.itemid + "   count : " + resp.itemcount);
            break;

        case NetProtocols.PLAYER_CHANGENAME:
            NetTools.Log("CHANGE NAME :" + resp.nickname);
            break;

        case NetProtocols.PLAYER_LVUP:

            NetTools.Log("EXP :" + resp.exp + "  LV : " + resp.lv);
            break;

        case NetProtocols.PLAYER_GET_ITEMLSIT:

            NetTools.Log("GET_ITEMLSIT :" + JsonMapper.ToJson(resp.itemList));
            break;

        case NetProtocols.PLAYER_BUY_ITEM:
            NetTools.Log("BUY_ITEM :" + resp.itemid);

            break;

        case NetProtocols.PLAYER_SET_NAMECOLOR:
            NetTools.Log("SET NAMECOLOR :" + resp.colorid);
            break;

        case NetProtocols.PLAYER_SET_ROLE:
            NetTools.Log("SET ROLE :" + resp.roleid);
            break;

        case NetProtocols.PLAYER_DAILYTASK_DATA:

            NetTools.Log("========PLAYER_DAILYTASK_DATA========== ");
            foreach (KeyValuePair <int, int> pair in resp.taskData)
            {
                NetTools.Log(pair.Key + " " + pair.Value);
            }
            NetTools.Log("-------------------------------------");
            break;
        }
    }
Example #27
0
        /// <summary>
        /// 发送消息(最大896字节)
        /// </summary>
        /// <param name="type">消息类型 0-其他 1-路况信息 2-通知 3-协查信息</param>
        /// <param name="car"></param>
        public void Send_Msg(ICar car, ushort type, string msg)
        {
            if (car == null || msg == null)
            {
                return;
            }

            int len = -1;

            byte[] bs = NetTools.HostToNetworkOrderToBytes(msg, -1);
            len = bs.Length;
            SendMessage(CommandID.SND_MSG, car, new object[] { car.MAC.ToSendString(16), type, (ushort)len, bs });
        }
Example #28
0
        private async void GetServerIP()
        {
            Notify("Searching for server...");
            NetTools.Init();
            do
            {
                await Task.Delay(1000);
            }while(string.IsNullOrEmpty(Settings.Default.ServerIP));

            Notify($"Found server at {Settings.Default.ServerIP}");

            LoadGames();
        }
Example #29
0
    void PlayerActionResponse(Resp r)
    {
        PlayerActionResp resp = (PlayerActionResp)r;

        NetTools.Log("PlayerActionResponse : " + resp.GetProtocol());
        NetTools.Log("PlayerActionResponse type: " + resp.GetType());

        NetTools.Log("PlayerActionResponse uid: " + resp.uid);
        if (resp.type == NetProtocols.PLAYER_ACTION_MOVE)
        {
            NetTools.Log("PLAYER_ACTION_MOVE : " + resp.pos.x + "  y : " + resp.pos.y);
        }
    }
        protected ClientProxyExType ProxyEx(HttpRequestBase request, string userName = "******")
        {
            ClientProxyExType cpet = Session[ConstStr_Session.CurrentProxyExType] as ClientProxyExType;

            if (cpet == null)
            {
                cpet              = new ClientProxyExType();
                cpet.UserID       = userName;
                cpet.IP_Client    = request.UserHostAddress;
                cpet.IP_WebServer = NetTools.GetLocalMachineIP4();
            }
            return(cpet);
        }