After you add Host and Host-Instances to BizTalk, they are not useful and cannot be associated with Send/Receive ports until you relate the Host to the Adapter. This can be done in BizTalk Admin Console, but below is a program that allows you to do it with the BizTalk Powershell Extensions.
See related script to use Powershell to add new BizTalk Hosts and Host Instances.
cls
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
function UpdateAdapter($AdapterName, $HostName, $Direction)
{
# modeled after code from:
# https://social.technet.microsoft.com/wiki/contents/articles/32456.powershell-script-for-creating-biztalk-hostshost-instancesadapter-handlers-and-custom-event-log.aspx}
Write-Host "Starting of `$Adapter=$AdapterName and `$Host=$HostName `$Direction=$Direction"
#Example: Set-Location –Path '..\SFTP'
$Pathname = "BizTalk:\Platform Settings\Adapters\$AdapterName"
Write-Host "`$PathName=$PathName"
Set-Location –Path $PathName
if ($Direction -eq "Send" -or $Direction -eq "Both")
{
Write-Host "Setup Sending"
### Sending
#Example: -eq "SFTP Send Handler (Sending_64)"
$VarAdapterHandler = Get-ChildItem | Where-Object{$_.Name -eq "$AdapterName Send Handler ($HostName)"}
if($VarAdapterHandler.Name -eq $null)
{
Write-Host "Adding $AdapterName handler for Host=$HostName"
#New-Item -Path .\Sending_64 -HostName Sending_64 -Direction Send
New-Item -Path .\$HostName -HostName $HostName -Direction Send
}
}
if ($Direction -eq "Receive" -or $Direction -eq "Both")
{
Write-Host "Setup Receiving"
### Receiving
$VarAdapterHandler = Get-ChildItem | Where-Object{$_.Name -eq "$AdapterName Receive Handler ($HostName)"}
if($VarAdapterHandler.Name -eq $null)
{
Write-Host "Adding SFTP Receive handler for Receiving_64 Host"
New-Item -Path .\$Hostname -HostName $HostName -Direction Receive
}
}
Write-Host "End of $AdapterName and $HostName"
Write-Host "----"
}
### MAIN CODE HERE - Calls Function Above once per Host/Host-Instance ###
#Pass Three Parms: 1) AdapterName, 2) HostName, 3) Direction [Send/Recive/Both]
#UpdateAdapter "TrackingHost" "Both"
UpdateAdapter "HTTP" "AS2HostReceive" "Receive"
UpdateAdapter "HTTP" "AS2HostSend" "Send"
UpdateAdapter "SFTP" "SFTPHostReceive" "Receive"
UpdateAdapter "SFTP" "SFTPHostSend" "Send"
UpdateAdapter "FILE" "FileHostReceive" "Receive"
UpdateAdapter "FILE" "FileHostSend" "Send"
Write-Host "Script Completed"