Example #1
0
		void Init()
		{
			var label1 = new Label
			{
				Text = "Welcome to",
				Font = new Font(FontFamilies.Monospace, 30)
			};
			var labelTitle = new Label
			{
				Text = "Altman3",
				Font = new Font(FontFamilies.Monospace, 60)
			};

			var layout = new PixelLayout();
			layout.Add(label1, new Point(70, 50));
			layout.Add(labelTitle, new Point(100, 120));

			var logo = PluginServiceProvider.GetService("ToFingerBinary");
			if (logo != null)
			{
				var rnd = new Random();
				var par = new PluginParameter();
				par.AddParameter("str", rnd.Next(1, 1023));
				var ret = logo(par);
				var tmp = new Label
				{
					Text = ret,
					Font = new Font(FontFamilies.Monospace, 10)
				};
				layout.Add(tmp, new Point(300, 220));
			}

			Content = layout;
		}
Example #2
0
		void pluginItem_Click(object sender, EventArgs e)
		{
			if (_gridViewShell.SelectedItems.Any())
			{
				var item = sender as MenuItem;
				if (item != null)
				{
					var plugin = item.Tag as IPlugin;

					var shell = (Shell)_gridViewShell.SelectedItem;
					shell.TimeOut = 8000;

					var param = new PluginParameter();
					param.AddParameter("shell", shell);

					if (plugin is IControlPlugin)
					{
						object view = (plugin as IControlPlugin).Show(param);
						//创建新的tab标签
						//设置标题为FileManager|TargetId
						string title = plugin.PluginInfo.Name + "|" + shell.TargetId;
						ShellManager.Host.Ui.OpenTabPage(title, view);
					}
					else if (plugin is IFormPlugin)
					{
						var form = (Form)(plugin as IFormPlugin).Show(param);
						form.Show();
					}
				}
			}
		}
Example #3
0
        public PanelDbManager(IHost host, PluginParameter data)
        {
			_host = host;
			_shellData = (Shell)data[0];
			_shellSqlConn = GetShellSqlConn();

			// init StrRes to translate string
			StrRes.SetHost(_host);
            Init();			

            //绑定事件
			_dbManager = new DbManager(_host, _shellData, _shellSqlConn.type);
			_dbManager.ConnectDbCompletedToDo += DbManagerConnectDbCompletedToDo;
			_dbManager.GetDbNameCompletedToDo += DbManagerGetDbNameCompletedToDo;
			_dbManager.GetDbTableNameCompletedToDo += DbManagerGetTableNameCompletedToDo;
			_dbManager.GetColumnTypeCompletedToDo += DbManagerGetColumnTypeCompletedToDo;
			_dbManager.ExecuteReaderCompletedToDo += DbManagerExecuteReaderCompletedToDo;
			_dbManager.ExecuteNonQueryCompletedToDo += DbManagerExecuteNonQueryCompletedToDo;

			RefreshServerStatus(false);


	        if (string.IsNullOrEmpty(_shellSqlConn.type) || string.IsNullOrEmpty(_shellSqlConn.conn))
	        {
		        MessageBox.Show("shell's sqlConnection is null or space");
	        }
	        else
	        {
				//连接数据库
				_dbManager.ConnectDb(_shellSqlConn.conn);
	        }
        }
Example #4
0
		public PanelShellManager(PluginParameter data)
		{
			InitUi();

			// 注册事件
			ShellManager.GetDataTableCompletedToDo += ShellManagerGetDataTableCompletedToDo;
			ShellManager.DeleteCompletedToDo += ShellManagerDeleteCompletedToDo;
			ShellManager.InsertCompletedToDo += ShellManagerInsertCompletedToDo;
			ShellManager.UpdateCompletedToDo += ShellManagerUpdateCompletedToDo;

			// 载入shell数据
			LoadWebshellData();

			// 添加插件到右键菜单
			foreach (var plugin in PluginProvider.GetPlugins())
			{
				// IsShowInRightContext
				if (plugin.PluginSetting.LoadPath.ToLower() == "shellmanager")
				{
					string title = plugin.PluginInfo.Name;

					// 添加到Tsmi_Plugins中
					var pluginItem = new ButtonMenuItem();
					pluginItem.ID = title;
					pluginItem.Text = title;
					pluginItem.Click += pluginItem_Click;
					pluginItem.Tag = plugin;

					_rightMenuWebshell.Items.Add(pluginItem);
				}
			}
		}
Example #5
0
		public static string ToSha1(PluginParameter args)
		{
			var str = args[0];
			SHA1 sha1 = new SHA1CryptoServiceProvider();
			var bytesSha1Out = sha1.ComputeHash(Encoding.UTF8.GetBytes(str));
			var strSha1Out = BitConverter.ToString(bytesSha1Out);
			return strSha1Out.Replace("-", "");
		}
Example #6
0
		public static string ToMd5_16(PluginParameter args)
		{
			var str = args[0];
			var mD5CryptoServiceProvider = new MD5CryptoServiceProvider();
			var tmp = BitConverter.ToString(mD5CryptoServiceProvider.ComputeHash(Encoding.UTF8.GetBytes(str)), 4, 8);
			tmp = tmp.Replace("-", "");
			return tmp;
		}
Example #7
0
        public DoNetPluginTest(IHost host, PluginParameter data)
        {
			_host = host;
			_shellData = (Shell)data[0];

            Init();
            ShowShellTypeDataInLable(_shellData);
        }
Example #8
0
		public DeveloperTool(IHost host, PluginParameter data)
		{
			Init();

			_host = host;

			LoadServices();
		}
Example #9
0
		public PanelEncoder(IHost host, PluginParameter data)
		{
			Init();

			_host = host;

			_radioButtonEncode.Checked = true;
			LoadServices();
		}
Example #10
0
        public PanelShellCmder(IHost host, PluginParameter data)
        {
            Init();
            _host = host;
			_shellData = (Shell)data[0];

            _consoleBoxCmder.CommandEntered+=ConsoleBoxCmderCommandEntered;
            _consoleBoxCmder.Prompt = "AltmanCmder";
            ConnectOneShell();
        }
Example #11
0
		public static string ToUrlEncodeAll(PluginParameter args)
		{
			var str = args[0];
			var sb = new StringBuilder();
			var bytes = Encoding.UTF8.GetBytes(str);
			foreach (var b in bytes)
			{
				sb.Append("%" + Convert.ToString(b, 16));
			}
			return sb.ToString().ToUpper();
		}
Example #12
0
		public static string Base64_Decode(PluginParameter args)
		{
			var str = args[0];
			try
			{
				var bytes = Convert.FromBase64String(str);
				return Encoding.Default.GetString(bytes);
			}
			catch
			{
				return "FromBase64 Fail";
			}
		}
Example #13
0
        public PanelPluginManager(IHost host, PluginParameter data)
        {
            this._host = host;

            // init StrRes to translate string
            StrRes.SetHost(_host);
            Init();

            _updateXmlPath = Path.Combine(_host.App.AppPluginDir, new PluginInfo().Name, "update.xml");
            _updateXmlUrl = ReadConfigXml();
            _installedPlugins = PluginProvider.GetPlugins();
            DownloadUpdateXml();
            LoadInstalledPlugins();
        }
Example #14
0
		public static string ToMd5_32(PluginParameter args)
		{
			var str = args[0];

			var md5 = MD5.Create();
			var bytes = Encoding.UTF8.GetBytes(str);
			var array = md5.ComputeHash(bytes);
			md5.Clear();

			var tmp = "";
			foreach (var b in array)
			{
				tmp += b.ToString("X2");
			}
			return tmp;
		}
Example #15
0
		public static PluginParameter ConvertShellStructToPluginParameter(Shell shell)
		{
			var param = new PluginParameter();
			param.AddParameter("id", shell.Id);
			param.AddParameter("target_id", shell.TargetId);
			param.AddParameter("target_level", shell.TargetLevel);
			param.AddParameter("status", shell.Status);

			param.AddParameter("shell_url", shell.ShellUrl);
			param.AddParameter("shell_pwd", shell.ShellPwd);
			param.AddParameter("shell_type", shell.ShellType);
			param.AddParameter("shell_extra_setting", shell.ShellExtraString);
			param.AddParameter("server_coding", shell.ServerCoding);
			param.AddParameter("web_coding", shell.WebCoding);

			param.AddParameter("area", shell.Area);
			param.AddParameter("remark", shell.Remark);
			param.AddParameter("add_time", shell.AddTime);

			return param;
		}
Example #16
0
        public PanelFileManager(IHost host, PluginParameter data)
        {
            _host = host;
            _shellData = (Shell)data[0];

            // init StrRes to translate string
            StrRes.SetHost(_host);
            Init();

            //
            _fileManager = new FileManager(_host, _shellData);
            _fileManager.GetWwwRootPathCompletedToDo += fileManager_GetWwwRootPathCompletedToDo;
            _fileManager.GetFileTreeCompletedToDo += fileManager_GetFileTreeCompletedToDo;
            _fileManager.DeleteFileOrDirCompletedToDo += fileManager_DeleteFileOrDirCompletedToDo;
            _fileManager.RenameFileOrDirCompletedToDo += fileManager_RenameFileOrDirCompletedToDo;
            _fileManager.CopyFileOrDirCompletedToDo += fileManager_CopyFileOrDirCompletedToDo;
            _fileManager.ModifyFileOrDirTimeCompletedToDo += fileManager_ModifyFileOrDirTimeCompletedToDo;
            _fileManager.CreateDirCompletedToDo += fileManager_CreateDirCompletedToDo;
            _fileManager.WgetCompletedToDo += fileManager_WgetCompletedToDo;

            _status = new Status
            {
                PathSeparator = "\\",
                Host = _host,
                ShellData=_shellData,
                FileManager=_fileManager,
                FileGridView = _gridViewFile,
            };

            _gridViewFile.ContextMenu = CreateFileRightMenu(_status);
            //_dataStore = new List<FileInfoView>();
            _gridViewFile.DataStore = _dataStore = new DataStoreCollection<FileInfoView>();

            //获取根路径
            _fileManager.GetWwwRootPath();
        }
Example #17
0
 public object Show(PluginParameter data)
 {
     return _userControl = new DeveloperTool(_host, data);
 }
Example #18
0
 public object Show(PluginParameter data)
 {
     return _userControl = new PanelEncoder(_host, data);
 }
Example #19
0
	    public object Show(PluginParameter data)
	    {
			return _userControl = new DoNetPluginTest(_host, data);
	    }
Example #20
0
		public static string FromHex(PluginParameter args)
		{
			var str = args[0];
			try
			{
				str = str.Replace(" ", "");
				if ((str.Length%2) != 0)
					str += " ";
				var returnBytes = new byte[str.Length/2];
				for (var i = 0; i < returnBytes.Length; i++)
					returnBytes[i] = Convert.ToByte(str.Substring(i*2, 2), 16);
				return Encoding.UTF8.GetString(returnBytes);
			}
			catch
			{
				return "FromHex Fail";
			}
		}
Example #21
0
 public object Show(PluginParameter data)
 {
     return _form = new PanelPluginManager(_host, data);
 }
Example #22
0
		public static string ToUrlEncode(PluginParameter args)
		{
			var str = args[0];
			return Uri.EscapeDataString(str);
		}
Example #23
0
		public static string Base64_Encode(PluginParameter args)
		{
			var str = args[0];
			return Convert.ToBase64String(Encoding.Default.GetBytes(str));
		}
Example #24
0
		public static string FromUrlEncode(PluginParameter args)
		{
			var str = args[0];
			try
			{
				if (Regex.IsMatch(
					HttpUtility.UrlDecode(str, Encoding.GetEncoding("iso-8859-1")),
					@"^(?:[\x00-\x7f]|[\xe0-\xef][\x80-\xbf]{2})+$"))
				{
					return HttpUtility.UrlDecode(str, Encoding.GetEncoding("UTF-8"));
				}
				return HttpUtility.UrlDecode(str, Encoding.GetEncoding("GB2312"));
			}
			catch
			{
				return "FromUrlEncode Fail";
			}
		}
Example #25
0
        public object Show(PluginParameter data)
        {
	        return _userControl = new PanelShellManager(data);
        }
Example #26
0
		public PanelIPQuery(IHost host, PluginParameter data)
		{
			_host = host;
			Init();
		}
Example #27
0
		public static string ToHex(PluginParameter args)
		{
			var str = args[0];
			if (str == "")
			{
				return "";
			}
			var bytes = Encoding.UTF8.GetBytes(str);
			var tmp = "";
			for (var i = 0; i < bytes.Length; i++)
			{
				tmp = tmp + bytes[i].ToString("X");
			}
			return tmp;
		}