0
$exceptionList = Get-Content C:\Users\Dipen\Desktop\Exception_List.txt
$ReceiveLocations = Get-WmiObject MSBTS_ReceiveLocation -Namespace 'root\MicrosoftBizTalkServer' -Filter '(IsDisabled = True)' |
Where-Object { $exceptionList -notcontains $_.Name }
# Exit the script if there are no disabled receive locations
if ($ReceiveLocations.Count -eq 0)
{
exit
}
和
$mailBodyPT = ""
$mailTextReportPT = "There are: "
[STRING]$Subject = $SubjectPrefix + $BizTalkGroup
$mailTextReportPT += "in the BizTalk group: " + $BizTalkGroup + "."
#Send mail
foreach ($to in $EmailTo)
{
$Body = $HTMLmessage
#$SMTPClient = New-Object Net.Mail.SmtpClient($PSEmailServer)
$message = New-Object Net.Mail.MailMessage($from, $to, $Subject, $Body)
$message.IsBodyHtml = $true;
$SMTPClient.Send($message)
}
问题:当所有的RL的状态都为 “已禁用”,所有的这些RL包含在例外列表t中他变量$ReceiveLocations
应该是错误的,我需要停止在我的脚本中进一步处理。 (如果在例外列表中找到所有RL,请不要执行任何操作)
但是我仍然收到错误的电子邮件警报。如果在$ReceiveLocations
中没有发现额外的RL,我们如何设置逻辑以避免收到电子邮件警报?
谢谢你!!!!!! ! –
++,但值得注意的是,在PSv3中引入的标量和集合的统一处理(methinks)_does_允许在空值表达式上使用'.Count'并合理地返回'0':'$ null.Count -eq 0 '在PSv3 +中返回'$ true',而在PSv2-中返回'$ false'。 – mklement0
我以为它没有,但我刚刚证实,你是对的。不过,如果仅出于兼容性原因,我可能仍然不会依赖它。 –