我有一个在远程机器上创建COM+应用程序的powershell脚本:
$credentials = Get-Credential -Message "Test" -User "DOMAIN\User"
$roleRM = new-pssession -computername MACHINE -credential $credentials
Invoke-Command -Session $roleRM -scriptblock `
{
$comAdmin = New-Object -ComObject ("COMAdmin.COMAdminCatalog.1")
$comApplicationCollection = $comAdmin.GetCollection("Applications")
$comApplicationCollection.Populate()
$comApplication = $comApplicationCollection.Add()
$comApplication.Value("Name") = "Server"
$comApplication.Value("ApplicationAccessChecksEnabled") = 0
$comApplication.Value("AccessChecksLevel") = (0)
$comApplication.Value("Authentication") = (1)
$comApplication.Value("Identity") = "DOMAIN\User"
$comApplication.Value("Password") = "password"
$comApplication.Value("QueuingEnabled") = 1
$comApplication.Value("QueueListenerEnabled") = 1
$comApplicationCollection.SaveChanges()
}但当我尝试运行它时,它失败了,并显示以下错误:
Exception calling "SaveChanges" with "0" argument(s): "An operations error occurred. " + CategoryInfo : NotSpecified: (:) [], MethodInvocationException + FullyQualifiedErrorId : ComMethodTargetInvocation + PSComputerName : MACHINE
如果我排除此行:
$comApplication.Value("QueuingEnabled") = 1然后它会正确地保存和创建应用程序。如果我在本地运行这个脚本,那么它会在本地机器上使用QueuingEnabled=1正确地创建应用程序,但在远程机器上运行时总是失败。
为什么会这样呢?
发布于 2015-08-25 22:12:53
尝试将"Authentication“设置为4或6,看看这是否会有什么变化。参见this。
https://stackoverflow.com/questions/23242509
复制相似问题