C# Windows 7和my C程序中的复制问题

C# Windows 7和my C程序中的复制问题,c#,windows-7,C#,Windows 7,我在我的C程序中执行此操作: File.copy(Application.StartupPath + "\Test.txt",@"c:\Test.txt"); 但我得到了这个错误: Access to the path 'c\Test.txt' is denied 它只在Windows 7中出现,在Windows XP中工作得非常出色。Win 7会阻止系统驱动器上的根文件夹。。。 将文件放在您有权复制的位置。Win 7 blocks系统驱动器上的根文件夹。。。 将文件放在您有权复制的位置。

我在我的C程序中执行此操作:

File.copy(Application.StartupPath + "\Test.txt",@"c:\Test.txt");
但我得到了这个错误:

Access to  the path 'c\Test.txt' is denied

它只在Windows 7中出现,在Windows XP中工作得非常出色。

Win 7会阻止系统驱动器上的根文件夹。。。
将文件放在您有权复制的位置。

Win 7 blocks系统驱动器上的根文件夹。。。 将文件放在您有权复制的位置。

Windows 7不允许访问程序文件夹和根文件夹。 您可以授予目录编写器访问权限或更改一个用户文件夹的目标路径,如“我的文档”或“应用程序目录”

您可以将此路径与Environment.GetFolderPath

范例

Environment.GetFolderPathEnvironment.SpecialFolder.ApplicationData; retrurns:C:\Users\Admin\AppData\Roaming

Windows 7不允许访问程序文件夹和根文件夹。 您可以授予目录编写器访问权限或更改一个用户文件夹的目标路径,如“我的文档”或“应用程序目录”

您可以将此路径与Environment.GetFolderPath

范例

Environment.GetFolderPathEnvironment.SpecialFolder.ApplicationData;
retrurns:C:\Users\Admin\AppData\Roaming

访问被拒绝。这意味着你没有访问权限。不,真的,是的


默认情况下,Windows 7中的用户帐户限制为非管理员帐户,因此您的程序不能只在系统上的任何位置写入,这是一件好事。尝试将Test.txt放在另一个目录中,例如temp目录,询问系统它在哪里。

访问被拒绝。这意味着你没有访问权限。不,真的,是的


默认情况下,Windows 7中的用户帐户限制为非管理员帐户,因此您的程序不能只在系统上的任何位置写入,这是一件好事。尝试将Test.txt放在另一个目录中,例如temp目录,询问系统它在哪里。

除了其他人所说的之外,请尝试使用。除了其他人所说的以外,还可以学习一点关于

的知识。并了解一点关于

最好使用path.join连接文件和路径

File.copy(Path.Join(Application.StartupPath, "\Test.txt"), @"c:\Test.txt");

最好使用path.join连接文件&path

File.copy(Path.Join(Application.StartupPath, "\Test.txt"), @"c:\Test.txt");

我不知道这个错误怎么会更清楚:令人震惊的是,你没有在那里创建文件的权限。正确的方法是在用户配置文件中存储任何与用户相关的文件。在任何系统上,将任何文件存储在根目录都不是好主意。如果你真的想这样做-更改程序,使其请求管理员权限运行。这是通过弄乱清单来实现的。我不知道这个错误怎么会更清楚:很明显,你没有在那里创建文件的权限。正确的方法是将任何与用户相关的文件存储在用户配置文件中。在任何系统上,将任何文件存储在根目录都不是好主意。如果你真的想这样做-更改程序,使其请求管理员权限运行。这是通过混淆显式来完成的,如何在C中强制执行此副本有任何类可以处理吗?如果你可以强制它,那么安全特权就毫无用处了,不是吗?但如果必须的话,您可以请求提升权限。然后,用户将被要求批准,屏幕为深灰色等等。我从来没有这样做过,但如果你真的想这样做,请阅读UAC。我不希望任何应用程序仅仅为了在C:root中写入Test.txt而请求它!如何在C语言中强制这个副本有什么类可以处理吗?如果你可以强制它,那么安全特权就毫无用处了,不是吗?但如果必须的话,您可以请求提升权限。然后,用户将被要求批准,屏幕为深灰色等等。我从来没有这样做过,但如果你真的想这样做,请阅读UAC。我不希望任何应用程序仅仅为了在C:root中写入Test.txt而请求它!