用非pipe理员用户写入Windows目录(虚拟商店)

我为从Windows目录读取数据的遗留应用程序编写一个接口。

所以我需要将数据写入Windows目录。 (Windows 8操作系统)

我正在使用下面的代码来获取Windows文件夹path来写入文件。

Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Windows), "test.txt"); 

正如我在MSDN上读到的,如果我们运行应用程序,就像普通用户一样,它将数据写入虚拟商店的Windows文件夹,但似乎不起作用。 我得到访问被拒绝的错误。

我的应用程序使用x86平台构build。

我缺less的东西或任何约束窗口8操作系统。

请提前协助,非常感谢。

我在提供的清单文件默认评论中找到了我的问题的答案。 它说,

 <!-- UAC Manifest Options If you want to change the Windows User Account Control level replace the requestedExecutionLevel node with one of the following. <requestedExecutionLevel level="asInvoker" uiAccess="false" /> <requestedExecutionLevel level="requireAdministrator" uiAccess="false" /> <requestedExecutionLevel level="highestAvailable" uiAccess="false" /> Specifying requestedExecutionLevel node will disable file and registry virtualization. If you want to utilize File and Registry Virtualization for backward compatibility then delete the requestedExecutionLevel node. --> 

因此,您需要添加清单文件,并从xml中删除requestedExecutionLevel节点,或从项目属性 – >应用程序 – >图标和清单 – >清单集下

 Create application without a manifest 

它解决了我的问题。

谢谢,