Set-UserPhoto
內部部署 Exchange 和雲端式服務有提供此 Cmdlet。 有些參數和設定可能是某一個環境所專屬。
使用 Set-UserPhoto Cmdlet 來設定使用者相片功能,讓使用者將圖片與其帳戶產生關聯。 使用者相片會出現在內部部署和雲端式用戶端應用程式中,例如 Outlook 網頁版、Lync、商務用 Skype 和 SharePoint。
如需下方<語法>一節中參數集的詳細資訊,請參閱 Exchange Cmdlet 語法。
Syntax
Set-UserPhoto
[-Identity] <MailboxIdParameter>
[-Cancel]
[-Confirm]
[-GroupMailbox]
[-DomainController <Fqdn>]
[-IgnoreDefaultScope]
[-PhotoType <String>]
[-WhatIf]
[<CommonParameters>]
Set-UserPhoto
[-Identity] <MailboxIdParameter>
-PictureData <Byte[]>
[-Confirm]
[-DomainController <Fqdn>]
[-GroupMailbox]
[-IgnoreDefaultScope]
[-PhotoType <String>]
[-WhatIf]
[<CommonParameters>]
Set-UserPhoto
[-Identity] <MailboxIdParameter>
[-PictureData <Byte[]>]
[-PictureStream <Stream>]
[-Preview]
[-Confirm]
[-DomainController <Fqdn>]
[-GroupMailbox]
[-IgnoreDefaultScope]
[-PhotoType <String>]
[-WhatIf]
[<CommonParameters>]
Set-UserPhoto
[-Identity] <MailboxIdParameter>
-PictureStream <Stream>
[-Confirm]
[-DomainController <Fqdn>]
[-GroupMailbox]
[-IgnoreDefaultScope]
[-PhotoType <String>]
[-WhatIf]
[<CommonParameters>]
Set-UserPhoto
[-Identity] <MailboxIdParameter>
[-Save]
[-Confirm]
[-DomainController <Fqdn>]
[-GroupMailbox]
[-IgnoreDefaultScope]
[-PhotoType <String>]
[-WhatIf]
[<CommonParameters>]
Description
使用者相片功能可讓使用者將圖片與其帳戶產生關聯。 使用者相片會儲存在使用者的 Active Directory 帳戶和使用者 Exchange 信箱的根目錄中。 系統管理員會使用 Set-UserPhoto Cmdlet 來設定使用者相片。 使用者可以在Outlook 網頁版的 [選項] 頁面中,將使用者相片上傳、預覽及儲存至其帳戶。 當使用者上傳相片時,相片的預覽會顯示在Outlook 網頁版的 [選項] 頁面上。 這是預覽狀態,並使用 Preview 參數建立與執行 Set-UserPhoto Cmdlet 相同的結果。 如果使用者按一下 [儲存],預覽相片會儲存為使用者的相片。 這與執行 命令或同時 Set-UserPhoto -Preview
執行 和 Set-UserPhoto -Save
命令的結果相同 Set-UserPhoto -Save
。 如果使用者在Outlook 網頁版的 [選項] 頁面上取消預覽相片,則 Set-UserPhoto -Cancel
會呼叫 命令。
您必須先為使用者設定使用者相片,才能執行 Get-UserPhoto Cmdlet 來檢視使用者相片的相關資訊。 否則,您會收到錯誤訊息,指出指定使用者的使用者相片不存在。 或者,您可以執行 Get-UserPhoto -Preview
命令來檢視預覽相片的相關資訊。
附註:
- 在受影響的使用者流覽其設定檔頁面面 (我的網站) 或顯示其大型縮圖影像的任何 SharePoint 頁面之前,使用者相片的變更不會出現在 SharePoint 中。
- 在 Microsoft Graph PowerShell 中,也可以使用 Update-MgUserPhoto 和 Set-MgUserPhotoContent Cmdlet。
您必須已獲指派權限,才能執行此指令程式。 雖然本主題已列出這個指令程式的所有參數,不過,如果某些參數並未包含在指派給您的權限中,您可能就無法存取這些參數。 若要尋找在組織中執行任何 Cmdlet 或參數所需的權限,請參閱 Find the permissions required to run any Exchange cmdlet。
範例
範例 1
Set-UserPhoto -Identity "Paul Cannon" -PictureData ([System.IO.File]::ReadAllBytes("C:\Users\Administrator\Desktop\PaulCannon.jpg"))
此範例會使用單一命令,將相片上傳並儲存至 Paul 的使用者帳戶。
範例 2
Set-UserPhoto -Identity "Ann Beebe" -PictureData ([System.IO.File]::ReadAllBytes("C:\Users\Administrator\Desktop\AnnBeebe.jpg")) -Preview
Set-UserPhoto "Ann Beebe" -Save
此範例示範如何使用兩個命令,將預覽相片上傳及儲存至 Ann Beebe 的使用者帳戶。 第一個命令會將預覽相片上傳至 Ann Beebe 的使用者帳戶,而第二個命令會將上傳的相片儲存為預覽相片。
範例 3
Set-UserPhoto -Identity "Ann Beebe" -Cancel
本範例會刪除上一個範例中上傳的預覽相片。
參數
-Cancel
Cancel 參數會刪除目前上傳為預覽相片的相片。 您不需要使用此參數指定值。
若要刪除目前與使用者帳戶相關聯的相片,請使用 Remove-UserPhoto Cmdlet。 Cancel 參數只會刪除預覽相片。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online |
-Confirm
Confirm 參數會指定要顯示或隱藏確認提示。 這個參數對 Cmdlet 的影響取決於 Cmdlet 是否需要確認才能繼續作業。
- 例如,具破壞性的 Cmdlet (例如 Remove-* Cmdlet) 內建暫停,可強制您在繼續之前確認命令。 對於這些 Cmdlet,您可以使用以下確切語法來略過確認提示:
-Confirm:$false
。 - 其他大部分的 Cmdlet (例如,New-* 和 Set-* Cmdlet) 沒有內建暫停。 在使用這些 Cmdlet 時,指定不含任何值的 Confirm 參數會引入強迫您認可命令後才繼續作業的暫停。
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online |
-DomainController
此參數僅適用於內部部署 Exchange。
DomainController 參數會指定此 Cmdlet 用來向 Active Directory 讀取或寫入資料的網域控制站。 您可以透過網域控制站的完整網域名稱 (FQDN) 來識別網域控制站。 例如,dc01.contoso.com。
Type: | Fqdn |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2013, Exchange Server 2016, Exchange Server 2019 |
-GroupMailbox
需要 GroupMailbox 參數才能修改Microsoft 365 群組。 您不需要使用此參數指定值。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2016, Exchange Server 2019, Exchange Online |
-Identity
Identity 參數會指定使用者的識別碼。 您可以使用唯一識別使用者的任何值。 例如:
- 名稱
- 別名
- 辨別名稱 (DN)
- 辨別名稱 (DN)
- Domain\Username
- 電子郵件地址
- GUID
- LegacyExchangeDN
- SamAccountName
- 使用者識別碼或使用者主要名稱 (UPN)
Type: | MailboxIdParameter |
Position: | 1 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online |
-IgnoreDefaultScope
IgnoreDefaultScope 參數會指示命令忽略 Exchange PowerShell 會話的預設收件者範圍設定,並使用整個樹系作為範圍。 您不需要使用此參數指定值。
此參數可讓 命令存取預設範圍中目前無法使用的 Active Directory 物件,但也引進下列限制:
- 您不能使用 DomainController 參數。 此命令會自動使用適當的通用類別目錄伺服器。
- 您不能使用 DomainController 參數。 此命令會自動使用適當的通用類別目錄伺服器。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online |
-PhotoType
將保留此參數供 Microsoft 內部使用。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2016, Exchange Server 2019, Exchange Online |
-PictureData
PictureData 參數會指定將上傳至使用者帳戶的相片檔案。
此參數的有效值需要您使用下列語法,將檔案讀取至位元組編碼的物件: ([System.IO.File]::ReadAllBytes('<Path>\<FileName>'))
。 您可以使用此命令作為參數值,也可以將輸出寫入變數 () $data = [System.IO.File]::ReadAllBytes('<Path>\<FileName>')
,並使用 變數作為參數值 () $data
。
Type: | Byte[] |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online |
-PictureStream
PictureStream 參數會指定要上傳至使用者帳戶的相片。 當使用者新增相片時,用戶端應用程式會使用此參數,例如Outlook 網頁版。 若要使用 PowerShell 上傳相片,請使用 PictureData 參數來指定相片檔案。
Type: | Stream |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online |
-Preview
預覽參數會上傳使用者帳戶的預覽相片。 您不需要使用此參數指定值。
預覽相片是上傳至使用者帳戶但未儲存的相片物件。 例如,如果使用者將相片上傳Outlook 網頁版 [儲存前要預覽的選項]。 如果您使用預覽參數上傳預覽相片,則必須執行 命令 Set-UserPhoto -Save
,將它儲存為使用者的相片。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online |
-Save
[儲存] 參數會指定將上傳至使用者帳戶的相片儲存為使用者的相片。 您不需要使用此參數指定值。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online |
-WhatIf
WhatIf 參數會模擬命令的動作。 使用此參數時,您不需要實際套用變更即可檢視可能會發生的變更。 您不需要使用此參數指定值。
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online |
輸入
Input types
若要查看此指令程式可接受的輸入類型,請參閱指令程式輸入和輸出類型。 如果指令程式的 [輸入類型] 欄位是空的,表示指令程式不接受輸入資料。
輸出
Output types
若要查看此指令程式可接受的傳回類型 (也就是所謂的輸出類型),請參閱指令程式輸入和輸出類型。 如果 [輸出類型] 欄位是空的,表示指令程式不會傳回資料。