Пример #1
0
 public void Excute(AsyncParameters parameters, string cmd)
 {
     try
     {
         if (string.IsNullOrEmpty(AuthenticationString))
         {
             parameters.Client.Send(Encoding.UTF8.GetBytes("ok"));
         }
         else
         {
             string[] parms = cmd.Split('|');
             if (parms != null && parms.Length > 1)
             {
                 if (parms[1] == AuthenticationString)
                 {
                     parameters.Client.Send(Encoding.UTF8.GetBytes("ok"));
                 }
                 else
                 {
                     parameters.Client.Send(Encoding.UTF8.GetBytes("failed"));
                 }
             }
             else
             {
                 parameters.Client.Send(Encoding.UTF8.GetBytes("key"));
             }
         }
     }
     catch
     {
     }
 }
Пример #2
0
        private void endReceive(IAsyncResult rs)
        {
            try
            {
                AsyncParameters asyncParam = (AsyncParameters)rs.AsyncState;
                int             len        = asyncParam.Client.EndReceive(rs);
                string          recStr     = Encoding.UTF8.GetString(asyncParam.Data, 0, len);
                recLen += len;
                if (asyncParam.Client.Available > 0)
                {
                    asyncParam.Client.BeginReceive(asyncParam.Data, 0, asyncParam.Data.Length, 0, new AsyncCallback(endReceive), asyncParam);
                }
                else
                {
                    //Console.WriteLine(recStr);

                    recLen = 0;
                }
                ResolveAndExcuteCMD(asyncParam, recStr);

                if (asyncParam.Client != null && asyncParam.Client.Connected == true)
                {
                    asyncParam.Client.Close();
                }
            }
            catch { }
        }
Пример #3
0
 public void Excute(AsyncParameters parameters, string cmd)
 {
     try
     {
         ICommand icmd = CommandFactory.Creat(cmd);
         icmd.Excute();
     }
     catch { }
 }
Пример #4
0
 public static void EndSend(IAsyncResult ar)
 {
     try
     {
         AsyncParameters data   = (AsyncParameters)ar.AsyncState;
         int             senLen = data.Client.EndSend(ar);
         data.Client.Close();
         data.Data = new byte[0];
     }
     catch (Exception)
     {
     }
 }
Пример #5
0
 public void Excute(AsyncParameters parameters, string cmd)
 {
     foreach (Item i in Items)
     {
         if (i.Cmd == cmd)
         {
             try
             {
                 ICommand icmd = CommandFactory.Creat(i.ToCmd());
                 icmd.Excute();
             }
             catch { }
         }
     }
 }
Пример #6
0
 public void Excute(AsyncParameters parameters, string cmd)
 {
     string[] cmdParms = cmd.Split('|');
     if (cmdParms.Length < 2)
     {
         return;
     }
     else
     {
         sb.Remove(0, sb.Length);
         if (cmdParms[1].ToLower() == "disk")
         {
             DriveInfo[] d = DriveInfo.GetDrives();
             foreach (DriveInfo difo in d)
             {
                 if (difo.DriveType == DriveType.Fixed)
                 {
                     sb.Append(difo.Name + ",Disk;");
                 }
             }
         }
         else
         {
             if (Directory.Exists(cmdParms[1]))
             {
                 //文件夹路径
                 string[] dirs = Directory.GetDirectories(cmdParms[1]);
                 foreach (string s in dirs)
                 {
                     sb.Append(s + ",Dir;");
                 }
                 string[] files = Directory.GetFiles(cmdParms[1]);
                 foreach (string fs in files)
                 {
                     FileInfo info = new FileInfo(fs);
                     sb.Append(fs + ",File," + (info.Length / 1024).ToString() + ";");
                 }
             }
             else
             {
                 //什么都不是
             }
         }
         byte[] data = Encoding.UTF8.GetBytes(sb.ToString());
         parameters.Client.Send(data);
     }
 }
Пример #7
0
        private void ResolveAndExcuteCMD(AsyncParameters asyncParam, string cmd)
        {
            int    index   = cmd.IndexOf('|');
            string mainCmd = "";

            if (index > 0)
            {
                mainCmd = cmd.Substring(0, index);
            }
            else
            {
                mainCmd = cmd;
            }
            foreach (IExecutor ie in Executors)
            {
                if (ie.CommandText.Contains(mainCmd.ToLower()))
                {
                    ie.Excute(asyncParam, cmd);
                }
            }
        }
Пример #8
0
 public void Excute(AsyncParameters parameters, string cmd)
 {
     string[] cmdParms = cmd.Split('|');
     if (cmdParms.Length < 2)
     {
         return;
     }
     else
     {
         if (File.Exists(cmdParms[1]))
         {
             byte[]     fileBuffer = new byte[1024];
             FileStream fs         = File.OpenRead(cmdParms[1]);
             while (fs.Position < fs.Length)
             {
                 int len = fs.Read(fileBuffer, 0, fileBuffer.Length);
                 parameters.Client.Send(fileBuffer, len, 0);
             }
             fs.Close();
             parameters.Client.Close();
         }
     }
 }
    protected void btnTranslate_Click(object sender, EventArgs e)
    {
        // Check if data are correct
        var error = translationElem.ValidateData();

        if (!String.IsNullOrEmpty(error) || !allowTranslate)
        {
            plcMessages.AddError(error);
            return;
        }

        if (isSelect)
        {
            // If in select mode, prepare node IDs now
            TreeProvider tree = new TreeProvider();
            DataSet      ds   = tree.SelectNodes(CurrentSiteName, pathElem.Value.ToString(), TreeProvider.ALL_CULTURES, true, TreeProvider.ALL_CLASSNAMES, null,
                                                 null, TreeProvider.ALL_LEVELS, false, 0, DocumentColumnLists.SELECTNODES_REQUIRED_COLUMNS + ",DocumentName,NodeParentID,NodeSiteID,NodeAliasPath");

            if (!DataHelper.DataSourceIsEmpty(ds))
            {
                foreach (DataTable table in ds.Tables)
                {
                    foreach (DataRow dr in table.Rows)
                    {
                        TreeNode node = TreeNode.New(ValidationHelper.GetString(dr["ClassName"], string.Empty), dr);

                        if (TranslationServiceHelper.IsAuthorizedToTranslateDocument(node, currentUser, translationElem.TargetLanguages))
                        {
                            nodeIds.Add(ValidationHelper.GetInteger(dr["NodeID"], 0));
                        }
                        else
                        {
                            HideUI();
                            plcMessages.AddError(String.Format(GetString("cmsdesk.notauthorizedtotranslatedocument"), HTMLHelper.HTMLEncode(node.NodeAliasPath)));
                            return;
                        }
                    }
                }
            }
            else
            {
                ShowError(GetString("translationservice.nodocumentstotranslate"));
                return;
            }

            targetCultures = translationElem.TargetLanguages;
        }

        pnlLog.Visible     = true;
        pnlContent.Visible = false;

        CurrentError = string.Empty;

        var parameters = new AsyncParameters
        {
            IsDialog  = IsDialog,
            AllLevels = AllLevels,
            UICulture = CultureHelper.PreferredUICultureCode
        };

        ctlAsyncLog.RunAsync(p => Translate(parameters), WindowsIdentity.GetCurrent());
    }
 private HttpWebResponse ExecuteRequest(Func<HttpWebResponse> request, AsyncParameters asyncParameters)
 {
     listener.BeginGetContext(HandleRequest, asyncParameters);
     return request.Invoke();
 }
Пример #11
0
        public void Excute(AsyncParameters parameters, string cmd)
        {
            try
            {
                string[] parms = cmd.Split('|');
                if (parms != null && parms.Length > 1)
                {
                    VideoParameters = new VideoParameters();
                    foreach (string p in parms)
                    {
                        string prm = p.ToLower();
                        if (prm == "followmouse")
                        {
                            ShowModel = ShowModels.FollowMouse;
                        }
                        else if (prm == "fullscreen")
                        {
                            ShowModel = ShowModels.FullScreen;
                        }
                        else if (prm[prm.Length - 1] == 'w')
                        {
                            VideoParameters.Width = int.Parse(prm.Substring(0, prm.Length - 1));
                        }
                        else if (prm[prm.Length - 1] == 'h')
                        {
                            VideoParameters.Height = int.Parse(prm.Substring(0, prm.Length - 1));
                        }
                        else if (prm[prm.Length - 1] == 'q')
                        {
                            VideoParameters.Quality = long.Parse(prm.Substring(0, prm.Length - 1));
                        }
                    }
                }
            }
            catch { }

            VideoParameters v;

            if (VideoParameters == null || VideoParameters.Width == 0 || VideoParameters.Height == 0)
            {
                v = defaultVideoParameters;
            }
            else
            {
                v = VideoParameters;
            }
            try
            {
                Screenshot ss  = new Screenshot();
                Image      img = null;
                if (ShowModel == ShowModels.FollowMouse)
                {
                    img = ss.GetRectangleScreenshot(v);
                }
                else
                {
                    img = ss.GetFullScreenImage(v);
                }

                parameters.Data = ImageProcessing.CompressedImageQuality(img, v.Quality);
                img.Dispose();
                //Console.WriteLine(parameters.Data.Length / 1024);
                parameters.Client.BeginSend(parameters.Data, 0, parameters.Data.Length, 0, new AsyncCallback(EndSend), parameters);
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message + e.Source + e.StackTrace);
            }
        }
Пример #12
0
 public void Excute(AsyncParameters parameters, string cmd)
 {
 }
Пример #13
0
        private void clientWorkThread(Socket client)
        {
            AsyncParameters asynParam = new AsyncParameters(serverSocket, client);

            client.BeginReceive(asynParam.Data, 0, asynParam.Data.Length, 0, new AsyncCallback(endReceive), asynParam);
        }