我试图通过以下代码以C#方式以编程方式简单地启动/停止IIS中的应用程序池:
ServerManager serverManager = new ServerManager();
ApplicationPoolCollection appPools = serverManager.ApplicationPools;
foreach (ApplicationPool ap in appPools)
{
if (ap.Name == "Test App")
ap.Start();
}
我已经在项目中添加了程序集Microsoft.Web.Administration。 我还为文件夹“ C:\ Windows \ System32 \ inetsrv \ config”中的用户“ IIS AppPool \ DefaultAppPool”授予了完全权限。 (在授予此权限之前,它甚至无法读取应用程序池名称。)
但是,它在尝试启动应用程序池时仍然会引发异常。
Microsoft.Web.Administration.dll中发生了类型为'System.UnauthorizedAccessException'的未处理异常
其他信息:访问被拒绝。 (来自HRESULT的异常:0x80070005(E_ACCESSDENIED))
我还需要添加其他权限来修复它?谢谢。