【发布时间】:2014-06-04 18:30:35
【问题描述】:
我正在尝试编写一个控制台应用程序来从 Windows\System32 中删除文件 使用 .net File.Delete。该应用程序在 Windows 7 上运行,但由于据称找不到文件而失败。
我研究并发现这是框架的安全限制,但我也在此处对类似问题的回答中发现,如果我将清单文件添加到我的解决方案中,并对其进行编辑以使其包含
<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
然后每当我启动应用程序时,系统都会提示我输入用户名和密码以“证明”我是管理员,然后应用程序将在 System32 中找到文件并按预期删除它们。
这不会发生。没有提示我输入 u\p 并且程序失败。我试过调试\发布\32位\64位。
有什么建议吗?
完整清单:
<?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="EclCleaner.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>
</asmv1:assembly>
【问题讨论】:
-
您的完整清单文件是什么样的?
-
已将其添加到问题中。
标签: .net windows file-io system32