【问题标题】:Copy-File vs XCopy [closed]复制文件与 XCopy [关闭]
【发布时间】:2014-02-19 07:02:52
【问题描述】:

我正在尝试在启动时通过 xcopy 复制文件。但它不起作用。

代码如下:

System.Diagnostics.ProcessStartInfo psi2 = new System.Diagnostics.ProcessStartInfo(@"xcopy.exe", @"E:\Debug\VipBat\* C:\\Users\\VCCS\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\\Startup\" /s /i /y");
System.Diagnostics.Process.Start(psi2);

【问题讨论】:

  • “不起作用”是用户会说的,就在我深深叹息并询问他们更多信息之前。
  • 那太糟糕了。你需要让它工作。 (提示:此评论与您的​​错误描述一样有用)

标签: c# xcopy processstartinfo


【解决方案1】:

问题:您在这里误用了双引号 => Startup\"

Soultion :您需要正确地将参数传递给 Process.StartInfo()

您的第一个参数应该是文件名,第二个参数应该是参数。

试试这个:

System.Diagnostics.ProcessStartInfo psi2 = new   
System.Diagnostics.ProcessStartInfo(@"xcopy.exe", "E:\\Debug\\VipBat\\* \"C:\\Users\\VCCS\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\\Startup\\\" /s /i /y");

【讨论】:

  • 您需要在第二条路径周围使用 \" \",因为它有一个空格,否则将被视为两个不同的参数。
  • 它也不起作用。我认为,转义字符存在问题,例如“开始菜单”。不知道怎么解决。
  • @pmacnaughton:你说得对,我忽略了它。
  • @user3313131:您可以查看我编辑的答案,现在可以使用了。
【解决方案2】:

试试这个;

Using System.IO;

public void Copy(string filePath,string DestPath)
{
    if(File.Exists(filePath))
    {
       File.Copy(filePath,DestPath);
    }
    else
    {
       MessageBox.Show("The file doesn't exists.","Error") 
    }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-11-10
    • 1970-01-01
    • 1970-01-01
    • 2015-04-05
    • 1970-01-01
    • 1970-01-01
    • 2017-01-28
    相关资源
    最近更新 更多