หากติดตั้งโปรแกรม RAR บนเซิร์ฟเวอร์ asp.net จะสามารถเรียก RAR เพื่อบีบอัดและขยายขนาดไฟล์ได้
อย่างไรก็ตาม ควรสังเกตว่าเนื่องจากโปรแกรมเว็บไม่สามารถเรียกโปรแกรมไคลเอนต์ได้โดยตรง (เว้นแต่จะใช้ ActiveX ActiveX เกือบจะถูกยกเลิก) ดังนั้นหากคุณต้องการอนุญาตให้ผู้ใช้ขยายขนาดไฟล์ในเครื่องโดยใช้เว็บเพจ พวกเขาสามารถอัปโหลดไฟล์ไปยัง เซิร์ฟเวอร์แล้วเรียกเซิร์ฟเวอร์ เปิดการบีบอัด RAR ในลักษณะเดียวกัน หากคุณต้องการขยายขนาดไฟล์ RAR ในเครื่อง คุณสามารถอัปโหลดไฟล์ไปยังเซิร์ฟเวอร์เพื่อขยายขนาดไฟล์แล้วนำไฟล์กลับมาได้
บทความนี้จะอธิบายวิธีขยายขนาดไฟล์ในไดเร็กทอรีฝั่งเซิร์ฟเวอร์!
รหัสส่วนหน้า:
<%...@ ภาษาเพจ = "C#" AutoEventWireup = "true" CodeFile = "Default.aspx.cs" Inherits = "_Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional/ /EN" " http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd ">
<html xmlns=" http://www.w3.org/1999/xhtml " >
<หัว runat="เซิร์ฟเวอร์">
<title>การบีบอัดฝั่งเซิร์ฟเวอร์ Qingqing Yue'er http://blog.csdn.net/21aspnet/</title >
</หัว>
<ร่างกาย>
<form id="form1" runat="server">
<div>
<asp:ID ของปุ่ม = "Button1" runat = "เซิร์ฟเวอร์" OnClick = "Button1_Click" Text = "การบีบอัด" />
<asp:Button ID="Button2" runat="server" OnClick="Button2_Click" Text="คลายเครื่องรูด" /></div>
</แบบฟอร์ม>
</ร่างกาย>
</html>
รหัสแบ็กเอนด์:
การใช้ระบบ;
ใช้ System.Data;
โดยใช้ระบบการกำหนดค่า;
ใช้ System.Web;
โดยใช้ System.Web.Security;
โดยใช้ System.Web.UI;
ใช้ System.Web.UI.WebControls;
ใช้ System.Web.UI.WebControls.WebParts;
ใช้ System.Web.UI.HtmlControls;
ใช้ System.IO;
โดยใช้ System.Runtime.InteropServices;
ใช้ Microsoft.Win32;
โดยใช้ระบบการวินิจฉัย
คลาสสาธารณะบางส่วน _Default: System.Web.UI.Page
-
โมฆะที่ได้รับการป้องกัน Page_Load (ผู้ส่งวัตถุ EventArgs e)
-
//Qingqingyueerhttp://blog.csdn.net/21aspnet/
-
โมฆะที่ได้รับการป้องกัน Button1_Click (ผู้ส่งวัตถุ EventArgs e)
-
//การบีบอัด
สตริง the_rar;
RegistryKey the_Reg;
วัตถุ the_Obj;
สตริง the_Info;
ProcessStartInfo the_StartInfo;
ประมวลผล the_Process;
พยายาม
-
the_Reg = Registry.ClassesRoot.OpenSubKey("ApplicationsWinRAR.exeShellOpenCommand");
the_Obj = the_Reg.GetValue("");
the_rar = the_Obj.ToString();
the_Reg.ปิด();
the_rar = the_rar.Substring(1, the_rar.Length - 7);
the_Info = " a " + " 1.rar " + " " + "C:11.txt";
the_StartInfo = ProcessStartInfo ใหม่ ();
the_StartInfo.FileName = the_rar;
the_StartInfo.Arguments = the_Info;
the_StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
the_StartInfo.WorkingDirectory = "C:1";//รับหรือตั้งค่าไดเร็กทอรีเริ่มต้นของกระบวนการที่จะเริ่มต้น
the_Process = กระบวนการใหม่ ();
the_Process.StartInfo = the_StartInfo;
the_Process.Start ();
Response.Write("การบีบอัดสำเร็จ");
-
catch (ข้อยกเว้น เช่น)
-
Response.Write (เช่น ToString ());
-
-
โมฆะที่ได้รับการป้องกัน Button2_Click (ผู้ส่งวัตถุ EventArgs e)
-
//ขยายขนาด
สตริง the_rar;
RegistryKey the_Reg;
วัตถุ the_Obj;
สตริง the_Info;
ProcessStartInfo the_StartInfo;
ประมวลผล the_Process;
พยายาม
-
the_Reg = Registry.ClassesRoot.OpenSubKey("ApplicationsWinRar.exeShellOpenCommand");
the_Obj = the_Reg.GetValue("");
the_rar = the_Obj.ToString();
the_Reg.ปิด();
the_rar = the_rar.Substring(1, the_rar.Length - 7);
the_Info = " X " + " 1.rar " + " " + "C:1";
the_StartInfo = ProcessStartInfo ใหม่ ();
the_StartInfo.FileName = the_rar;
the_StartInfo.Arguments = the_Info;
the_StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
the_Process = กระบวนการใหม่ ();
the_Process.StartInfo = the_StartInfo;
the_Process.Start ();
Response.Write("การบีบอัดสำเร็จ");
-
catch (ข้อยกเว้น เช่น)
-
Response.Write (เช่น ToString ());
-
-
-
http://blog.csdn.net/21aspnet/archive/2007/06/13/1649810.aspx