📄 16.1.txt
字号:
Listing 16.1 Web Shell Code-Behind File
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.IO;
namespace _3_EventHandling
{
public class WebForm1 : System.Web.UI.Page
{
protected System.Web.UI.WebControls.TextBox ShellBox;
protected System.Web.UI.WebControls.Label Label1;
protected System.Web.UI.WebControls.ImageButton btnMinimize;
static private string curDir;
static protected bool bIsMinimized;
private void Page_Load(object sender, System.EventArgs e)
{
if( !Page.IsPostBack )
{
curDir = Server.MapPath( “.” );
ShellBox.Text = “Welcome to WebShell\n”;
DisplayPrompt();
}
else
{
// get command
string cmd = ShellBox.Text.Substring(
ShellBox.Text.LastIndexOf( ‘>’ )+1);
if( cmd != null && cmd != “” )
{
string ret = ProcessCommand( cmd );
ShellBox.Text = ShellBox.Text + “\n” + ret + “\n”;
DisplayPrompt();
}
if( bIsMinimized == true )
ShellBox.Visible = false;
else
ShellBox.Visible = true;
}
}
private string ProcessCommand( string cmd )
{
string ret = “”;
switch( cmd )
{
case( “ver” ):
{
ret = “WebShell Version 1.0”;
break;
}
case (“cls”):
{
ShellBox.Text = “”;
ret = “”;
break;
}
case ( “dir” ):
{
DirectoryInfo di = new DirectoryInfo(curDir);
FileInfo[] fi = di.GetFiles();
foreach (FileInfo fiTemp in fi)
ret = ret + fiTemp.Name + “\n”;
break;
}
default:
{
ret = cmd + “‘ is not recognized as an internal or “ +
“external command, operable program or batch file.”;
break;
}
}
return ret;
}
private void DisplayPrompt()
{
ShellBox.Text = ShellBox.Text + curDir + “>”;
}
#region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
InitializeComponent();
base.OnInit(e);
}
private void InitializeComponent()
{
this.btnMinimize.Click += new
System.Web.UI.ImageClickEventHandler(this.btnMinimize_Click);
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
private void btnMinimize_Click(object sender,
System.Web.UI.ImageClickEventArgs e)
{
if( bIsMinimized == true )
{
ShellBox.Visible = true;
bIsMinimized = false;
}
else
{
ShellBox.Visible = false;
bIsMinimized = true;
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -