bugfix: CheckLoadUserProfile() on IIS8
This commit is contained in:
parent
a7e191a748
commit
c6d1fe9549
3 changed files with 41 additions and 14 deletions
|
@ -3414,7 +3414,6 @@ namespace WebsitePanel.EnterpriseServer
|
|||
|
||||
public static int GetPackageIdByName(string Name)
|
||||
{
|
||||
// get Helicon Zoo provider
|
||||
int packageId = -1;
|
||||
List<ProviderInfo> providers = ServerController.GetProviders();
|
||||
foreach (ProviderInfo providerInfo in providers)
|
||||
|
@ -3426,10 +3425,10 @@ namespace WebsitePanel.EnterpriseServer
|
|||
}
|
||||
}
|
||||
|
||||
if (-1 == packageId)
|
||||
{
|
||||
throw new Exception("Provider not found");
|
||||
}
|
||||
//if (-1 == packageId)
|
||||
//{
|
||||
// throw new Exception("Provider not found");
|
||||
//}
|
||||
|
||||
return packageId;
|
||||
}
|
||||
|
|
|
@ -412,17 +412,35 @@ namespace WebsitePanel.EnterpriseServer
|
|||
|
||||
public static bool CheckLoadUserProfile(int serverId)
|
||||
{
|
||||
int packageId = DataProvider.GetPackageIdByName("IIS70");
|
||||
int serviceId = DataProvider.GetServiceIdByProviderForServer(packageId, serverId);
|
||||
return WebServerController.GetWebServer(serviceId).CheckLoadUserProfile();
|
||||
int packageId = getIISPackageId();
|
||||
if (packageId != -1)
|
||||
{
|
||||
int serviceId = DataProvider.GetServiceIdByProviderForServer(packageId, serverId);
|
||||
return WebServerController.GetWebServer(serviceId).CheckLoadUserProfile();
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
private static int getIISPackageId()
|
||||
{
|
||||
int packageId = DataProvider.GetPackageIdByName("IIS80");
|
||||
if (packageId == -1)
|
||||
packageId = DataProvider.GetPackageIdByName("IIS70");
|
||||
if (packageId == -1)
|
||||
packageId = DataProvider.GetPackageIdByName("IIS60");
|
||||
|
||||
|
||||
return packageId;
|
||||
}
|
||||
public static void EnableLoadUserProfile(int serverId)
|
||||
{
|
||||
int packageId = DataProvider.GetPackageIdByName("IIS70");
|
||||
int serviceId = DataProvider.GetServiceIdByProviderForServer(packageId, serverId);
|
||||
WebServerController.GetWebServer(serviceId).EnableLoadUserProfile();
|
||||
int packageId = getIISPackageId();
|
||||
if (packageId != -1)
|
||||
{
|
||||
int serviceId = DataProvider.GetServiceIdByProviderForServer(packageId, serverId);
|
||||
WebServerController.GetWebServer(serviceId).EnableLoadUserProfile();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -4046,7 +4046,12 @@ namespace WebsitePanel.Providers.Web
|
|||
{
|
||||
using (var srvman = new ServerManager())
|
||||
{
|
||||
return srvman.ApplicationPools["WebsitePanel Server"].ProcessModel.LoadUserProfile;
|
||||
string poolName = Environment.GetEnvironmentVariable("APP_POOL_ID", EnvironmentVariableTarget.Process);
|
||||
ApplicationPool pool = srvman.ApplicationPools[poolName];
|
||||
if (pool == null)
|
||||
throw new Exception("ApplicationPool pool is null" + poolName);
|
||||
|
||||
return pool.ProcessModel.LoadUserProfile;
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -4055,7 +4060,12 @@ namespace WebsitePanel.Providers.Web
|
|||
{
|
||||
using (var srvman = new ServerManager())
|
||||
{
|
||||
srvman.ApplicationPools["WebsitePanel Server"].ProcessModel.LoadUserProfile = true;
|
||||
string poolName = Environment.GetEnvironmentVariable("APP_POOL_ID", EnvironmentVariableTarget.Process);
|
||||
ApplicationPool pool = srvman.ApplicationPools[poolName];
|
||||
if (pool == null)
|
||||
throw new Exception("ApplicationPool pool is null" + poolName);
|
||||
|
||||
pool.ProcessModel.LoadUserProfile = true;
|
||||
// save changes
|
||||
srvman.CommitChanges();
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue