C#没有复制shotcut文件

时间:2015-07-11 15:30:06

标签: c# copy shortcut file-copying

我正在使用c#,我可以复制我想要的所有类型的文件,但是当我想要删除快捷方式或链接文件c#这样的错误时:

enter image description here

这是我的代码:

private void button1_Click(object sender, EventArgs e)
{
    string fileName = "HonarVaMemar.exe";
    string sourcePath = @Application.StartupPath;
    string targetPath = @Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory) + "\\Output HonamrvaMemar Version";

   // Use Path class to manipulate file and directory paths.
   string sourceFile = System.IO.Path.Combine(sourcePath, fileName);
   string destFile = System.IO.Path.Combine(targetPath, fileName);

   // To copy a folder's contents to a new location:
   // Create a new target folder, if necessary.
   if (!System.IO.Directory.Exists(targetPath))
   {
       System.IO.Directory.CreateDirectory(targetPath);
   }
   System.IO.File.Copy(sourceFile, destFile, true);


   //-----------------------------------------------------------
   string fileName2 = "HonarVaMemar.exe.lnk";
   string sourceFile2 = System.IO.Path.Combine(sourcePath, fileName2);
   string destFile2 = System.IO.Path.Combine(targetPath, fileName2);
   System.IO.File.Copy(sourceFile2, destFile2, true);}

复制所有其他文件

.....

2 个答案:

答案 0 :(得分:0)

直到您不发布堆栈跟踪或innerException它很难回答究竟发生了什么。我有一些猜测

如果该快捷方式指向某个其他文件(目标属性),则复制该快捷方式文件时可能不会在该位置预设目标文件。

或..

可以使用快捷方式文件和其他一些进程。

这只是猜测,请发布您正在复制的异常文本。

答案 1 :(得分:0)

            string fileName = "data.mdb";

            string sourcePath = @Application.StartupPath;
            string targetPath = @"C:\Windows\cat";

            string sourceFile = System.IO.Path.Combine(sourcePath, fileName);
            string destFile = System.IO.Path.Combine(targetPath, fileName);

            // To copy a folder's contents to a new location:
            // Create a new target folder, if necessary.
            //if (!System.IO.Directory.Exists(targetPath))
            //{
            //    System.IO.Directory.CreateDirectory(targetPath);
            //}

            // To copy a file to another location and 

            System.IO.File.Copy(sourceFile, destFile, true);