我正在尝试使用 BizTalk 2010 的 Powershell 扩展来添加主机实例(主机已存在(。
Add-PSSnapIn -Name BiztalkFactory.PowerShell.Extensions #NOTE: Must be in 32-bit version of Powershellto use this SnapIn
#get-PsSnapIn -registered ### list registered Snap-In's
$HostName = "TestNewHost"
$HostType = 1 # 1 = InProcess
$myNTHostGroupName = "BIZTALKDEVDomain Users"
$AuthTrusted = $false
$domainName = "BizTalkDev"
$serverName = "BizTalkDev"
$defaultAdminUser = "Administrator"
$hostCredentials = $Host.ui.PromptForCredential("Logon Credentials","This account must have SQL Server permissions.", $domainName + "" + $defaultAdminUser, "");
[String]$hostCredentialsPassword = [Runtime.InteropServices.Marshal]::PtrToStringAuto([Runtime.InteropServices.Marshal]::SecureStringToBSTR($hostCredentials.Password));
#cd "Biztalk:Platform SettingsHosts"
#New-Item $HostName -HostType:$HostType -NtGroupName:$NTGroupName -AuthTrusted:$AuthTruste
#New-Item -path $hostName -HostType:$HostType -NtGroupName:$NTGroupName -AuthTrusted:$AuthTrusted
cd "BizTalk:Platform SettingsHost Instances"
dir
Write-Host "Try to add New HostInstance=$hostName"
New-Item $hostName -HostName $hostName -Credentials $hostCredentials -RunningServer $serverName
dir
当我在凭据中提供有效的域用户/密码时,出现此错误:
新项:找不到 WMI 类的实例。 找不到具有指定键的实例。 这可能是实例被另一个 BizTalk 管理会话删除的结果。在 E:\CreateHost_PSSnapIn.ps1:27 字符:1
如果我省略 -凭据参数。 它会提示我用户/通行证的新项目,并发生相同的错误。 如果我提供一个完全虚假的用户 id/pass,我仍然会收到同样的错误。
我发现了这个问题。我$servername的值错误,应该是"BizTalk2010Dev"。我没有发现域名和服务器名称不同(这是同事创建的 VM(。
因此,总而言之,错误虽然非常模棱两可,但指的是缺少现有的主机名。 所有主机实例都必须与现有主机关联。