C#操作IIS创建应用程序池出现异常:无效索引(Exception from HRESULT:0x80070585)
在使用C#操作IIS创建应用程序池出现异常:无效索引(Exception from HRESULT:0x80070585)
相关代码:
[csharp]
public static string CreateAppPool(string appPoolName, string frameworkVersion, string managedPipelineMode)
{
DirectoryEntry rootfolder = new DirectoryEntry("IIS://localhost/W3SVC/APPPOOLS");
try
{
DirectoryEntry appPool = rootfolder.Children.Add(appPoolName, "IIsApplicationPool");
if (appPool.Properties.Contains("AppPoolCommand"))
{
appPool.Properties["AppPoolCommand"][0] = "1";
}
if (appPool.Properties.Contains("ManagedRuntimeVersion"))
{
appPool.Properties["ManagedRuntimeVersion"][0] = "v4.0";
}
//以下代码在WindowsServer2008版本为6.0的系统上会出现异常:
//无效索引(Exception from HRESULT:0x80070585)
//if (appPool.Properties.Contains("AppPoolIdentityType"))
//{
// appPool.Properties["AppPoolIdentityType"][0] = "4";
//}
if (appPool.Properties.Contains("Enable32BitAppOnWin64"))
{
appPool.Properties["Enable32BitAppOnWin64"][0] = true;
}
appPool.CommitChanges();
return null;
}
catch (System.Exception ex)
{
LogToFile.Save(ex, "CreateAppPool");
return ex.Message;
}
}
public static string CreateAppPool(string appPoolName, string frameworkVersion, string managedPipelineMode)
{
DirectoryEntry rootfolder = new DirectoryEntry("IIS://localhost/W3SVC/APPPOOLS");
try
{
DirectoryEntry appPool = rootfolder.Children.Add(appPoolName, "IIsApplicationPool");
if (appPool.Properties.Contains("AppPoolCommand"))
{
appPool.Properties["AppPoolCommand"][0] = "1";
}
if (appPool.Properties.Contains("ManagedRuntimeVersion"))
{
appPool.Properties["ManagedRuntimeVersion"][0] = "v4.0";
}
//以下代码在WindowsServer2008版本为6.0的系统上会出现异常:
//无效索引(Exception from HRESULT:0x80070585)
//if (appPool.Properties.Contains("AppPoolIdentityType"))
//{
// appPool.Properties["AppPoolIdentityType"][0] = "4";
//}
if (appPool.Properties.Contains("Enable32BitAppOnWin64"))
{
appPool.Properties["Enable32BitAppOnWin64"][0] = true;
}
补充:软件开发 , C# ,