C# 新手,我正在 Visual Studio 中开发 Windows 窗体应用程序。该应用程序使用 ICSharpCode.SharpZipLib库来更新 zip 的内容。
当 zip 文件位于非系统分区内(例如 D:\myzip.zip
)时,文件会正确更新。但是,如果 zip 位于系统分区 C:\myzip.zip
中,应用程序将返回错误; 无法找到文件 C:\myzip.zip
即使该文件在那里!
这与管理员权限有关,因为当我以管理员身份运行该应用程序时,它可以正常工作。
问题是;我如何默认启用这些权限?
最佳答案
您可以添加应用 list 以确保您的应用以管理员身份运行 ( msdn )。
将以下代码添加到 list 文件中:
<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
逐步添加应用 list :
- 在解决方案资源管理器中右键单击该项目。
- 点击添加新项目。
- 查找并选择应用程序 list 文件:
编辑应用 list 文件:
<?xml version="1.0" encoding="utf-8"?>
<asmv1:assembly manifestVersion="1.0" xmlns="urn:schemas-microsoft-com:asm.v1" xmlns:asmv1="urn:schemas-microsoft-com:asm.v1" xmlns:asmv2="urn:schemas-microsoft-com:asm.v2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<assemblyIdentity version="1.0.0.0" name="MyApplication.app"/>
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
<security>
<requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3">
<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
</requestedPrivileges>
</security>
</trustInfo>
<compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1">
<application>
</application>
</compatibility>
</asmv1:assembly>
关于c# - 请求管理员权限来编辑系统文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21967356/