CreateBizTalkAdapterHandler 错误

CreateBizTalkAdapterHandler error

            #############################################################
            # This function will create a handler for a specific 
            # adapter on the new host, so these get used for processing.
            # [direction]: 'Receive','Send'
            #############################################################
            function CreateBizTalkAdapterHandler(
                [string]$adapterName,
                [string]$direction,
                [string]$hostName,
                [string]$originalDefaulHostName,
                [boolean]$isDefaultHandler)
                #[boolean]$removeOriginalHostInstance)
            {
                if($direction -eq 'Receive')
                {
                    [System.Management.ManagementObject]$objAdapterHandler = ([WmiClass]"root/MicrosoftBizTalkServer:MSBTS_ReceiveHandler").CreateInstance()
                    $objAdapterHandler["AdapterName"] = $adapterName
                    $objAdapterHandler["HostName"] = $hostName
                }
                else
                {
                    [System.Management.ManagementObject]$objAdapterHandler = ([WmiClass]"root/MicrosoftBizTalkServer:MSBTS_SendHandler2").CreateInstance()
                    $objAdapterHandler["AdapterName"] = $adapterName
                    $objAdapterHandler["HostName"] = $hostName
                    $objAdapterHandler["IsDefault"] = $isDefaultHandler
                }

                try
                {
                    $putOptions = new-Object System.Management.PutOptions
                    $putOptions.Type = [System.Management.PutType]::CreateOnly;

                    [Type[]] $targetTypes = New-Object System.Type[] 1
                    $targetTypes[0] = $putOptions.GetType()

                    $sysMgmtAssemblyName = "System.Management"
                    $sysMgmtAssembly = [System.Reflection.Assembly]::LoadWithPartialName($sysMgmtAssemblyName)
                    $objAdapterHandlerType = $sysMgmtAssembly.GetType("System.Management.ManagementObject")

                    [Reflection.MethodInfo] $methodInfo = $objAdapterHandlerType.GetMethod("Put", $targetTypes)
                    $methodInfo.Invoke($objAdapterHandler, $putOptions)

                    Write-Host "$adapterName $direction Handler for $hostName was successfully created" -Fore DarkGreen
                }
                catch [System.Management.Automation.RuntimeException]
                {
                    if ($_.Exception.Message.Contains("The specified BizTalk Host is already a receive handler for this adapter.") -eq $true)
                    {
                        Write-Host "$hostName is already a $direction Handler for $adapterName adapter." -Fore DarkRed
                    }
                    elseif($_.Exception.Message.Contains("The specified BizTalk Host is already a send handler for this adapter.") -eq $true)
                    {
                        Write-Host "$hostName is already a $direction Handler for $adapterName adapter." -Fore DarkRed
                    }
                    else {
                        write-Error "$adapterName $direction Handler for $hostName could not be created: $_.Exception.ToString()"
                    }
                }

                #if($removeOriginalHostInstance)
                #{
                    #DeleteBizTalkAdapterHandler $adapterName $direction $originalDefaulHostName
                #}
            }

当我运行

CreateBizTalkAdapterHandler -adapterName "WCF-WebHttp" -direction "Send" -hostName "ServiceProcessing" -originalDefaulHostName "BizTalkServerApplication" -isDefaultHandler 0

正在创建 ServiceProcessing 发送处理程序但是当我使用

CreateBizTalkAdapterHandler -adapterName "WCF_WSHttp" -direction "Send" -hostName "PMProcessing" -originalDefaulHostName "BizTalkServerApplication" -isDefaultHandler 0

我在处理 "WCF-WSHttp" 适配器时遇到错误:

CreateBizTalkAdapterHandler : WCF_WSHttp Send Handler for PMOServiceProcessing could not be created: Exception calling "Invoke" with "2" argument(s): "No instance was found with the specified key. This could be the result of the instance being deleted by another BizTalk Admin session.".Exception.ToString() At line:3 char:1 + CreateBizTalkAdapterHandler -adapterName "WCF_WSHttp" -direction "Sen ... + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : NotSpecified: (:) [Write-Error], WriteErrorException + FullyQualifiedErrorId : Microsoft.PowerShell.Commands.WriteErrorException,CreateBizTalkAdapterHandler

CreateBizTalkAdapterHandler -adapterName "WCF-WSHttp" -direction "Send" -hostName "PMProcessing" -originalDefaulHostName "BizTalkServerApplication" -isDefaultHandler 0