使用 powershell 變更 Outlook/Office365 聯絡人

使用 powershell 變更 Outlook/Office365 聯絡人

我正在嘗試解決從本地交換遷移到 Office365 時聯絡人的一些生日問題。

所以我想將 MAPI 屬性 PID_TAGBIRTHDAY 更改為 +2 小時。

我嘗試將 powershell 與本機 MAPI 會話一起使用,但它不會將我的變更儲存到 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 中更新聯絡人資訊

相關內容