如何从 Powershell 更改 IIS 应用程序池属性 setProfileEnvironment?

问题描述 投票:0回答:2

如何从 Powershell 设置“setProfileEnvironment”属性?

以下代码生成错误 “在此对象上找不到属性“setProfileEnvironment”。请验证该属性是否存在并且可以设置。”

$IISServerManager = Get-IISServerManager
$pool = $IISServerManager.ApplicationPools.Add("MyPoolName")
...
$pool.ProcessModel.LoadUserProfile = $true
$pool.ProcessModel.SetProfileEnvironment = $true
powershell iis azure-powershell
2个回答
0
投票

@BruceZhang 的回答有效,就像这样:

Set-ItemProperty ("IIS:\AppPools\MyAppPoolName") -Name processModel.setProfileEnvironment -value "true"

如果您使用的是原始帖子中的代码块,请确保在调用上述命令之前提交更改,以便新的应用程序池存在,使用:

$IISServerManager.CommitChanges()

0
投票

我今天遇到了这个问题,发现了另一种使用 ProcessModel.Attributes 的替代方法,我认为它更简洁:

$pool.ProcessModel.Attributes['setProfileEnvironment'].Value

将其添加到问题的示例中,如下所示:

$IISServerManager = Get-IISServerManager
$pool = $IISServerManager.ApplicationPools.Add("MyPoolName")
...
$pool.ProcessModel.LoadUserProfile = $true
$pool.ProcessModel.Attributes['setProfileEnvironment'].Value = $true
$IISServerManager.CommitChanges()

© www.soinside.com 2019 - 2024. All rights reserved.