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)
|
public static int GetPackageIdByName(string Name)
|
||||||
{
|
{
|
||||||
// get Helicon Zoo provider
|
|
||||||
int packageId = -1;
|
int packageId = -1;
|
||||||
List<ProviderInfo> providers = ServerController.GetProviders();
|
List<ProviderInfo> providers = ServerController.GetProviders();
|
||||||
foreach (ProviderInfo providerInfo in providers)
|
foreach (ProviderInfo providerInfo in providers)
|
||||||
|
@ -3426,10 +3425,10 @@ namespace WebsitePanel.EnterpriseServer
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (-1 == packageId)
|
//if (-1 == packageId)
|
||||||
{
|
//{
|
||||||
throw new Exception("Provider not found");
|
// throw new Exception("Provider not found");
|
||||||
}
|
//}
|
||||||
|
|
||||||
return packageId;
|
return packageId;
|
||||||
}
|
}
|
||||||
|
|
|
@ -412,18 +412,36 @@ namespace WebsitePanel.EnterpriseServer
|
||||||
|
|
||||||
public static bool CheckLoadUserProfile(int serverId)
|
public static bool CheckLoadUserProfile(int serverId)
|
||||||
{
|
{
|
||||||
int packageId = DataProvider.GetPackageIdByName("IIS70");
|
int packageId = getIISPackageId();
|
||||||
|
if (packageId != -1)
|
||||||
|
{
|
||||||
int serviceId = DataProvider.GetServiceIdByProviderForServer(packageId, serverId);
|
int serviceId = DataProvider.GetServiceIdByProviderForServer(packageId, serverId);
|
||||||
return WebServerController.GetWebServer(serviceId).CheckLoadUserProfile();
|
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)
|
public static void EnableLoadUserProfile(int serverId)
|
||||||
{
|
{
|
||||||
int packageId = DataProvider.GetPackageIdByName("IIS70");
|
int packageId = getIISPackageId();
|
||||||
|
if (packageId != -1)
|
||||||
|
{
|
||||||
int serviceId = DataProvider.GetServiceIdByProviderForServer(packageId, serverId);
|
int serviceId = DataProvider.GetServiceIdByProviderForServer(packageId, serverId);
|
||||||
WebServerController.GetWebServer(serviceId).EnableLoadUserProfile();
|
WebServerController.GetWebServer(serviceId).EnableLoadUserProfile();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -4046,7 +4046,12 @@ namespace WebsitePanel.Providers.Web
|
||||||
{
|
{
|
||||||
using (var srvman = new ServerManager())
|
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())
|
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
|
// save changes
|
||||||
srvman.CommitChanges();
|
srvman.CommitChanges();
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue