0

配布グループと連絡先を管理するためのPowershellスクリプトを作成しています。

ここに画像の説明を入力してください

しかし、新しい配布グループを作成すると

function GroupAddGroup([string] $GroupName)
{
    $newGroup = New-DistributionGroup $GroupName;
    return $newGroup.Name
}

グループにアクセスできるようになるまで(メンバーの追加など)、5〜60秒待つ必要があります。

問題は、なぜ私は待たなければならないのかということです。そして、それを解決するための最良の方法は何ですか(65ソコンドまたは300秒を必要とする1回のperhabs ....)?

4

2 に答える 2

0

問題はおそらくレプリケーションの遅延が原因です。たとえば、新しく作成されたグループが別のドメインコントローラーまたはグローバルカタログにレプリケートされるのを待機しています。ユニバーサルグループは、グローバルカタログに複製されるまで変更できないことに注意してください。

自分で試したわけではありませんが、問題を解決するために、フロー内のオブジェクト作成シーケンスを変更するのが最も簡単な方法だと思います。最初に配布グループを作成してから連絡先を作成するのではなく、最初に連絡先オブジェクトを作成してから配布グループを作成する必要があります。配布グループを作成するときに、を指定して-Members、新しく作成した連絡先オブジェクトを渡します。

New-DistributionGroup新しく作成された連絡先オブジェクトも見つからないと文句を言う場合、次に試すことができるのは、およびを-DomainController実行するときに使用するドメインコントローラーを指定することです。New-MailContactNew-DistributionGroup

于 2012-06-23T20:16:35.873 に答える
0

私は今までうまく機能しているものを見つけました:

function DistributionGroupExists([string] $Identity)
{
    $timer = [diagnostics.stopwatch]::startnew()
    while ($timer.elapsed.totalseconds -lt 30){

    if (Get-DistributionGroup $Identity){
        break
    }
    else 
    {
    start-sleep -seconds 5
    }
    }

    $timer.stop()
    if (!(Get-ADObject $Identity)){Write-host "Warning: Mailbox creation failed for $user after $($timer.elapsed.totalseconds) seconds."}
    else {write-host "Mailbox creation successful for $user in $($timer.elapsed.totalseconds) seconds"}

}
于 2012-06-26T12:35:46.017 に答える