0

我已经在 Visual Studio 中构建了一个程序。该程序创建一个日志文件并在程序通过 log4net 运行时写入其中。因此,无论哪个用户使用该程序,我都应该为我的程序文件夹设置写权限。

当我访问我的应用程序时,它会抛出错误

访问文件被拒绝

所以我做了什么,我在那里给了 iis_users 管理员权限,它工作正常......

但我的问题是没有设置我应该能够通过 iis 运行我的应用程序的权限

所以我已经完成了

1)创建 app.manifest 文件,代码为

 <requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3">
        <!-- 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.
        -->
         <requestedExecutionLevel  level="asInvoker" uiAccess="false" />
        <requestedExecutionLevel  level="requireAdministrator" uiAccess="false" />
        <requestedExecutionLevel  level="highestAvailable" uiAccess="false" />

      </requestedPrivileges>

但这并不能帮助我解决这个问题

4

1 回答 1

0

首先,您不应该这样做——我的意思是,将日志写入您的程序文件夹。这就是 TEMP 文件夹的用途。

也就是说,我认为为程序文件夹中的文件设置权限的一种方法是在设置的自定义操作中进行。

这是一个类似的问题:How to give Read/Write permissions to a Folder during installation using .NET

于 2013-01-11T07:41:10.077 回答