Exemple #1
0
        public static void SendCookie(string data)
        {
            if (statusProvider == StatusSocket.Connected)
            {
                string url = "ws://localhost:2011/sample";
                System.Net.Configuration.HttpWebRequestElement wr = new System.Net.Configuration.HttpWebRequestElement();
                wr.UseUnsafeHeaderParsing = true;
                HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);

                HttpCookie myCookie = new HttpCookie("name");
                myCookie.Value   = "web";
                myCookie.Expires = DateTime.Now.AddMinutes(180);
                //res.Cookies.Add(myCookie);

                CookieContainer cookieContainer = new CookieContainer();
                request.CookieContainer = cookieContainer;
                //request.CookieContainer.Add(cookieContainer.GetCookies(new Uri(url)));
                request.CookieContainer.Add(new Cookie("", "", "sample", "localhost:2011"));

                HttpWebResponse response       = (HttpWebResponse)request.GetResponse();
                Stream          responsestream = response.GetResponseStream();
                byte[]          buffer         = new byte[StateObject.BufferSize];
                int             rebu           = responsestream.Read(buffer, 0, StateObject.BufferSize);
                while (rebu != 0)
                {
                    client.Send(buffer, rebu, 0);
                    rebu = responsestream.Read(buffer, 0, StateObject.BufferSize);
                }

                //// Convert the string data to byte data using ASCII encoding.
                ////byte[] byteData = Encoding.ASCII.GetBytes(data);

                //// Send HS
                ////var handshake = "GET / HTTP/1.1\r\nUpgrade: websocket\r\nConnection: Upgrade\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: p2z/MFplfpRzjsVywqRQTg==\r\nHost: echo.websocket.org\r\nOrigin: http://echo.websocket.org/\r\n\r\n";
                //var byteData = Encoding.UTF8.GetBytes(data);

                //// Begin sending the data to the remote device.
                //client.BeginSend(byteData, 0, byteData.Length, 0, new AsyncCallback(SendCallback), client);
            }
        }
        public static string Check()
        {
            var release = string.Empty;

            System.Net.Configuration.HttpWebRequestElement httpConfig = new System.Net.Configuration.HttpWebRequestElement();
            httpConfig.UseUnsafeHeaderParsing = true;

            try
            {
                var json = String.Empty;
                using (var wc = new WebClient())
                {
                    wc.Headers.Add("User-Agent", @"ACT EnmityPlugin UpdateChecker/1.0; using .NET WebClient/4.0.0");
                    using (var stream = wc.OpenRead(EndPoint))
                        using (var reader = new StreamReader(stream))
                        {
                            json = reader.ReadToEnd();
                        }
                }
                var         serializer = new JavaScriptSerializer();
                ReleaseInfo ri         = (ReleaseInfo)serializer.Deserialize(json, typeof(ReleaseInfo));
                string      version    = ri.tag_name.Replace("v", string.Empty);
                Version     ignore;
                try
                {
                    ignore = new Version(Properties.Settings.Default.IgnoreVersion);
                }
                catch
                {
                    ignore = new Version("0.0.0.0");
                }
                var latest  = new Version(version);
                var current = Assembly.GetExecutingAssembly().GetName().Version;
                if (current >= latest)
                {
                    release = String.Format(Messages.UpdateNotFound, current.ToString());
                    return(release);
                }
                if (ignore >= latest)
                {
                    release = String.Format(Messages.UpdateAvailable, latest.ToString());
                    return(release);
                }
                var message = Messages.NewVersionIsAvailable + Environment.NewLine + Environment.NewLine;
                message += String.Format(Messages.Update, latest.ToString()) + Environment.NewLine;
                message += String.Format(Messages.Current, current.ToString()) + Environment.NewLine;
                message += Environment.NewLine;
                message += Messages.OpenSiteNow;
                var updateDialog = new UpdateDialog();
                if (Advanced_Combat_Tracker.FormActMain.ActiveForm != null)
                {
                    updateDialog.StartPosition = FormStartPosition.CenterParent;
                }
                else
                {
                    updateDialog.StartPosition = FormStartPosition.CenterScreen;
                }
                updateDialog.setDialogMessage(message);
                var result = updateDialog.ShowDialog();
                switch (result)
                {
                case DialogResult.Yes:
                    Process.Start(ri.html_url);
                    break;

                case DialogResult.Ignore:
                    Properties.Settings.Default.IgnoreVersion = latest.ToString();
                    Properties.Settings.Default.Save();
                    break;

                default:
                    break;
                }
            } catch (Exception ex)
            {
                release = $"Update check error: {ex.ToString()}";
            }
            return(release);
        }
        public static string Check()
        {
            var release = string.Empty;

            System.Net.Configuration.HttpWebRequestElement httpConfig = new System.Net.Configuration.HttpWebRequestElement();
            httpConfig.UseUnsafeHeaderParsing = true;

            try
            {
                var json = String.Empty;
                using (var wc = new WebClient())
                {
                    wc.Headers.Add("User-Agent", @"ACT EnmityPlugin UpdateChecker/1.0; using .NET WebClient/4.0.0");
                    using (var stream = wc.OpenRead(EndPoint))
                    using (var reader = new StreamReader(stream))
                    {
                        json = reader.ReadToEnd();
                    }
                }
                var serializer = new JavaScriptSerializer();
                ReleaseInfo ri = (ReleaseInfo)serializer.Deserialize(json, typeof(ReleaseInfo));
                string version = ri.tag_name.Replace("v", string.Empty);
                Version ignore;
                try
                {
                    ignore = new Version(Properties.Settings.Default.IgnoreVersion);
                }
                catch
                {
                    ignore = new Version("0.0.0.0");
                }
                var latest = new Version(version);
                var current = Assembly.GetExecutingAssembly().GetName().Version;
                if (current >= latest)
                {
                    release = String.Format(Messages.UpdateNotFound, current.ToString());
                    return release;
                }
                if (ignore >= latest)
                {
                    release = String.Format(Messages.UpdateAvailable, latest.ToString());
                    return release;
                }
                var message = Messages.NewVersionIsAvailable + Environment.NewLine + Environment.NewLine;
                message += String.Format(Messages.Update, latest.ToString()) + Environment.NewLine;
                message += String.Format(Messages.Current, current.ToString()) + Environment.NewLine;
                message += Environment.NewLine;
                message +=Messages.OpenSiteNow;
                var updateDialog = new UpdateDialog();
                if (Advanced_Combat_Tracker.FormActMain.ActiveForm != null)
                {
                    updateDialog.StartPosition = FormStartPosition.CenterParent;
                }
                else
                {
                    updateDialog.StartPosition = FormStartPosition.CenterScreen;
                }
                updateDialog.setDialogMessage(message);
                var result = updateDialog.ShowDialog();
                switch (result)
                {
                    case DialogResult.Yes:
                        Process.Start(ri.html_url);
                        break;
                    case DialogResult.Ignore:
                        Properties.Settings.Default.IgnoreVersion = latest.ToString();
                        Properties.Settings.Default.Save();
                        break;
                    default:
                        break;
                }
            } catch (Exception ex)
            {
                release = $"Update check error: {ex.ToString()}";
            }
            return release;
        }