【发布时间】:2016-10-21 08:59:01
【问题描述】:
我在 Windows 10 PC 上有一个 c# 应用程序。安装文件夹 (C:\Program Files (x86)\xxx) 中有我想阅读的设置文件,但除非用户具有管理员访问权限,否则不能编辑。问题是 Windows 正在将这些设置文件复制到 VirtualStore 并将所有读取重定向到那里 - 而以管理员身份运行的同一应用程序会看到 Program Files 文件夹中的原始设置文件。
我的问题:有没有办法让应用程序看到程序文件中的原始文件,即使不是以管理员身份运行?我只想阅读它们,而不是编辑它们。
【问题讨论】:
-
如果您只是阅读它们,阅读该文件的复制版本有什么问题?
-
因为以管理员身份运行时,您可以编辑它们 - 但在这种情况下,它会编辑程序文件夹中的版本,而不是虚拟存储版本。所以从非管理员实例的角度来看,文件没有改变。
-
什么时候复制文件?
-
Windows 似乎在非管理员实例访问文件时复制到虚拟存储。
-
您的程序与 UAC 不兼容。这些天很难做到,你需要记录你的 VS 版本。当程序显然也在写入文件时,您需要解释您的“只想阅读它们”声明。
标签: c# windows-10 virtualstore