ローカル Exchange から Office 365 に移行するときに、連絡先のいくつかの誕生日の問題を修正しようとしています。
そこで、MAPI 属性 PID_TAGBIRTHDAY を +2 時間に変更したいと思います。
ローカル MAPI セッションで PowerShell を使用しようとしていますが、変更が Outlook / サーバー側に保存されません。
$olApp = new-object -comobject outlook.application
$namespace = $olApp.GetNamespace("MAPI")
$Contacts = $namespace.GetDefaultFolder(10)
foreach ($Entry in $Contacts.Items)
{
#write-host $Entry.FirstName
#write-host $Entry.Birthday
#write-host $Entry.Birthday.ToUniversalTime()
if ($Entry.Birthday.ToUniversalTime().hour -eq 23)
{
$newname= $Entry
$newTime = $Entry.Birthday.AddHours(2)
$Entry.Birthday = $newTime
$Entry.Save()
}
}
$olApp.Quit | Out-Null
[GC]::Collect()
答え1
エラーは表示されなかったが、コマンドが有効にならなかったということですか? コマンドが有効になるまでどのくらい待ちましたか?
Outlookで手動で編集するとどうなるでしょうか?有効になりますか?または、こちらを参照してくださいOffice 365 の Exchange Online で連絡先情報を更新する方法