这是崩溃的部分,当我尝试将文件复制到特定位置时,出现此错误。

string startupDirectory = "C:\\Users\\Tyler\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\\Startup";
File.Copy(startupDirectory, "Startup.exe");

我已在线阅读并尝试了管理员权限,并创建了一个“app.manifest”文件:
<requestedExecutionLevel  level="requireAdministrator" uiAccess="false" />
<requestedExecutionLevel level="highestAvailable" uiAccess="false" />

我确认在设置中,应用程序 list 已设置为此文件,但是它仍然给我同样的错误。

我也尝试过此事件,尽管我认为它不会起作用,因为它是目录而不是文件:
File.SetAttributes(startupDirectory, FileAttributes.Normal);

这是WinForms,我在Windows 7上,但也希望它能在Windows 8+上获得成功。我该怎么做呢?

提前致谢!

最佳答案

尝试

public static void Copy(string sourceFileName, string destFileName);

第一个重载是源,第二个重载是目的地,我认为原因可能是这样
File.Copy("Startup.exe",startupDirectory);

尝试从中读取/保存文件的.Net用户将访问权限设置为“完全控制”。

对于特定文件的IIS服务器中的“访问拒绝错误”,请按照以下步骤操作
1- Goto to C:\\Users\\Tyler\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\\Startup

2- Right click on your file -> Properties -> Pop Up of User properties appears -> click on Security tab-> click on Edit -> select Users-> tick on Allow Full Control -> Click Ok

这肯定会解决访问被拒绝的问题

UnauthorizedAccessException表示三件事之一:
  • 调用者没有所需的权限。
  • 路径是目录。
  • 路径指定了一个只读文件。
  • 关于c# - 错误: An unhandled exception of type 'System.UnauthorizedAccessException' occurred in mscorlib. dll,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27555770/

    10-17 02:02