110,530
社区成员
发帖
与我相关
我的任务
分享
/// <summary>
/// 建立DOS连接
/// </summary>
/// <param name="path">要建立连接的服务器IP以及路径</param>
static public void DOSConnected()
{
string path = GetServerSavePath();
Process proc = new Process(); //实例化一个Process类
proc.StartInfo.FileName = "cmd.exe"; //设定程序名
proc.StartInfo.Arguments = "/c net use Z: \\\\" + path; //设定程式执行参数,此命令意思是将参数path代表的服务器路径虚拟为本地的Z盘
proc.StartInfo.CreateNoWindow = false; //设置不显示窗口
proc.StartInfo.UseShellExecute = false; //关闭Shell的使用
proc.StartInfo.RedirectStandardInput = true;//重定向标准输入
proc.StartInfo.RedirectStandardOutput = true; //重定向标准输出
proc.StartInfo.RedirectStandardError = true; //重定向错误输出
proc.Start(); //启动
proc.WaitForExit();
}
/// <summary>
/// 文件拷贝 从网站服务器拷贝到文件服务器
/// </summary>
/// <param name="FilePath">本地文件路径</param>
static public void DOSXCopy(string FilePath)
{
try
{
Process proc = new Process(); //实例化一个Process类
proc.StartInfo.FileName = "cmd.exe"; //设定程序名
proc.StartInfo.Arguments = "/c XCOPY " + FilePath + " Z:\\";//此命令意思是使用XCOPY命令将FilePath表示的文件拷贝到Z盘
proc.StartInfo.CreateNoWindow = false; //设置不显示窗口
proc.StartInfo.UseShellExecute = false; //关闭Shell的使用
proc.StartInfo.RedirectStandardInput = true;//重定向标准输入
proc.StartInfo.RedirectStandardOutput = true; //重定向标准输出
proc.StartInfo.RedirectStandardError = true; //重定向错误输出
proc.Start();
proc.WaitForExit();
}
catch(Exception ex)
{
string time = System.DateTime.Now.ToString("yyyy年MM月dd日 HH点mm分", DateTimeFormatInfo.InvariantInfo);
string sss = "图片保存日志.txt";
//指定路径
sss = "d:\\" + sss;
//如果文件a.txt存在就打开,不存在就新建 .append 是追加写
FileStream fst = new FileStream(sss, FileMode.Append);
//写数据到a.txt格式
StreamWriter swt = new StreamWriter(fst, System.Text.Encoding.GetEncoding("utf-8"));
//写入
swt.WriteLine(time + '\r' + "保存路径为:" + '\r' + FilePath + '\r' + "出错为:" + '\r' + ex);
swt.Close();
fst.Close();
}
}
/// <summary>
/// 文件拷贝 从文件服务器到网站服务器
/// </summary>
/// <param name="FilePath">本地文件路径</param>
static public void DOSDownLode(string FileName, string LocalPath)
{
Process proc = new Process(); //实例化一个Process类
proc.StartInfo.FileName = "cmd.exe"; //设定程序名
proc.StartInfo.Arguments = "/c XCOPY Z:\\" + FileName + " " + LocalPath;//此命令意思是使用XCOPY命令将FilePath表示的文件拷贝到Z盘
proc.StartInfo.CreateNoWindow = false; //设置不显示窗口
proc.StartInfo.UseShellExecute = false; //关闭Shell的使用
proc.StartInfo.RedirectStandardInput = true;//重定向标准输入
proc.StartInfo.RedirectStandardOutput = true; //重定向标准输出
proc.StartInfo.RedirectStandardError = true; //重定向错误输出
proc.Start();
proc.WaitForExit();
}
/// <summary>
/// 删除与服务器的连接
/// </summary>
static public void DOSDelConnected()
{
Process proc = new Process(); //实例化一个Process类
proc.StartInfo.FileName = "cmd.exe"; //设定程序名
proc.StartInfo.Arguments = "/c net use Z: /delete ";//此命令意思是删除与虚拟盘Z的连接
proc.StartInfo.CreateNoWindow = false; //设置不显示窗口
proc.StartInfo.UseShellExecute = false; //关闭Shell的使用
proc.StartInfo.RedirectStandardInput = true;//重定向标准输入
proc.StartInfo.RedirectStandardOutput = true; //重定向标准输出
proc.StartInfo.RedirectStandardError = true; //重定向错误输出
proc.Start();
proc.Kill();
proc.WaitForExit();
proc.Refresh();
}
/// <summary>
/// 删除文件服务器的文件
/// </summary>
static public void DOSDelFile(string FileName)
{
Process proc = new Process(); //实例化一个Process类
proc.StartInfo.FileName = "cmd.exe"; //设定程序名
proc.StartInfo.Arguments = "/c del Z:\\" + FileName;//此命令意思是删除Z盘下名为FileName的文件
proc.StartInfo.CreateNoWindow = false; //设置不显示窗口
proc.StartInfo.UseShellExecute = false; //关闭Shell的使用
proc.StartInfo.RedirectStandardInput = true;//重定向标准输入
proc.StartInfo.RedirectStandardOutput = true; //重定向标准输出
proc.StartInfo.RedirectStandardError = true; //重定向错误输出
proc.Start();
proc.WaitForExit();
}