Powershell commands to import contact photo into Exchange Global Address list.
# Import GAL Contact photo - put photo on NAS share $s = New-PSSession -Name T01 -ConfigurationName Microsoft.Exchange -ConnectionUri http://dellr710/PowerShell/ -Authentication Kerberos Import-PSSession $s $alias = "mickey" $photo = "\\files1\IT\Miscellaneous\Employees\GAL Photos\mickey.jpg" Import-RecipientDataProperty -Identity $alias -Picture -FileData ([Byte[]]$(Get-Content -Path $photo -Encoding Byte -ReadCount 0)) $alias = "minnie" $photo = "\\files1\IT\Miscellaneous\Employees\GAL Photos\minnie.jpg" Import-RecipientDataProperty -Identity $alias -Picture -FileData ([Byte[]]$(Get-Content -Path $photo -Encoding Byte -ReadCount 0)) $alias = "donald" $photo = "\\files1\IT\Miscellaneous\Employees\GAL Photos\donald.jpg" Import-RecipientDataProperty -Identity $alias -Picture -FileData ([Byte[]]$(Get-Content -Path $photo -Encoding Byte -ReadCount 0)) Update-OfflineAddressBook "Default Offline Address Book"
Exchange PowerShell can import pictures up to 10KB while the AD attribute supports a max size of 100 KB. Recommended thumbnail photo size is 96×96 pixels
Resources:
https://blogs.technet.microsoft.com/exchange/2010/03/10/gal-photos-in-exchange-2010-and-outlook-2010/ — READ THIS ONE
https://blogs.technet.microsoft.com/ilvancri/2009/11/17/upload-picture-in-outlook-2010-using-the-exchange-management-shell-exchange-2010/
https://tahoeninjas.wordpress.com/2015/04/10/uploading-high-resolution-user-profile-pictures-in-office-365/