动网论坛,站长建站首选,国内使用量最多的论坛软件 动网论坛官方技术讨论区 站长工具 申请属于您自己的免费论坛
首页 | 新闻资讯 | 网站运营 | 网络编程 | 数据库 | 服务器 | 网页设计 | 图像媒体 | 网络应用 | 搜索优化 | 资源下载 | 动网主机 | DVBOX
    本站内  互联网 ASP论坛  ASP.Net论坛  PHP论坛
   .Net → 阅读文章

 ASP.NET虚拟主机的重大安全隐患(五)

作者:秦海鹏 来源:天极Yesky 
阅读 7949 人次 , 2004-7-30 11:01:00 

 删除子目录和文件的主要方法和代码:

  在删除子目录时,我们需要用到Directory.Delete (string,bool)方法,此方法有两种:

  1.public static void Delete(string);

  从指定路径删除空目录。

  2.public static void Delete(string, boolean);

  删除指定的目录并(如果指示)删除该目录中的任何子目录,将boolean设置为true的话,则删除此目录下的所有子目录和文件,否则将boolean设置为false。

  在这里我们使用了第二种方法,如果选择删除的话,将删除此目录下的所有子目录和文件。

  注意:Directory 类的所有方法都是静态的,因而无需具有目录Directory的实例就可被调用。

/*实现删除子目录的方法,此方法为VS.NET自动添加,注意DataGridCommandEventArgs e为DirGrid中 CommandName="Delete" 的ButtonColumn的事件,通过此事件,我们可以得到是那一行的ButtonColumn按钮列被点击,进而确定我们需要删除的子目录的名称*/
private void DirGrid_DeleteCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e){
/*定义一个单元格,e.Item为此事件所发生行的所有项目,e.Item.Cells[1]为整个行的第二个单元格的内容,在此DataGrid中为子目录的名称
*/
TableCell ItemCell = e.Item.Cells[1];
//得到此子目录的名称的字符串
string item = ItemCell.Text;
//删除此子目录
Directory.Delete(item,true);
//删除后进行数据绑定以更新数据列表
DirGrid.DataBind();
}

  在删除文件时,我们需要用到File.Delete(string path);

  注意:File 类的所有方法都是静态的,因而无需具有目录的实例就可被调用。

private void FileGrid_DeleteCommand(object source,
System.Web.UI.WebControls.DataGridCommandEventArgs e) {
TableCell ItemCell = e.Item.Cells[1];
//得到此文件名称的字符串
string item = ItemCell.Text;
//删除此文件
File.Delete(item);
//删除后进行数据绑定以更新数据列表
DirGrid.DataBind();
}

  通过上边的主要方法我们在页面上实现了一个删除某一个子目录或者文件的功能,此功能在测试时需要慎重使用,一旦删除无法通过常规方法恢复。其他如目录或文件改名、修改内容等方法都可以在此程序基础上添加相应的功能,实现方法也很简单。各位爱好者可以通过添加相应功能,使之扩充为一个基于Web的服务器文件管理系统。我们也可以由此看到这个程序的危害性,一个没有对此安全隐患采取防范措施的服务器的文件系统就都暴露在了使用此程序的用户面前。

  
 本文Tags安全  C#  
 收藏本文  打印本文  论坛讨论  关闭窗口
· 上一篇:ASP.NET虚拟主机的重大安全隐患(六)
· 下一篇:ASP.NET虚拟主机的重大安全隐患(四)
· ASP.NET超凡的代码控制(二)
· 在Repeater中嵌套使用Repeater
· 如何在Jsp中使用JDBC来联结MySql
· 用Asp.net实现简单的文字水印
· 从ASP迁移至ASP+ --将HTML表格转换为ASP+数据列表


关于本站 | 联系我们 | 业务合作 | 客户案例 | 诚聘英才 | 广告合作 | 收藏本站
海口动网先锋网络科技有限公司版权所有
Copyright © 2000 - 2006 Cndw.Com
中华人民共和国电信与信息服务业务经营许可证编号 琼 ICP 020077