Requirements:
- SharePoint Server 2010 with at least the
October Cumulative Update installed. (**UPDATE** SP2010 SP1 with at least Feb 2012 CU) - Successfully working User Profile Service Application
- Profile Photo stored in thumbnailPhoto AD attribute (I used the PowerShell script found here to import the picture into the attribute)
Steps to Perform:
- Create an import PictureURL mapping
- Perform a full profile synchronization
- Run the Update-SPProfilePhotoStore PowerShell command
Create an import PictureURL mapping
Edit the User Profile Picture property by navigating to Manage Service Applications > User Profile Service Application > Manage User Properties > Picture
Make sure your Active Directory profile connection is selected, and then choose the thumbnailPhoto attribute and Import direction
Since you’ll be controlling the profile photos from Active Directory, change Edit Settings to “Do not allow users to edit values for this property”
Click OK to make the changes
Perform a full profile synchronization
Manage Service Applications > User Profile Service Application > Start Profile Synchronization
The synchronization may take a while, so be patient.
Once completed, if you go to the profile page you’ll notice that the image wasn’t added.
Run Update-SPProfilePhotoStore PowerShell Command
Launch the SharePoint 2010 Management Shell (Start > All Programs > Microsoft SharePoint 2010 Products > SharePoint 2010 Management Shell) and run the following command:
Update-SPProfilePhotoStore -CreateThumbnailsForImportedPhotos 1 -MySiteHostLocation
http://<YourServerName>/my
Now go back to the profile page to review the results
_____________________
Sponsors *Trusted SharePoint Ads Only!*
Packaged Enterprise Search
for SharePoint.View a quick online demo here! Surfray.com/Ontolica
Free Outlook Sidebar!
Access SharePoint from Outlook w/ harmon.ie Sidebar. Download Now!
SharePoint Migration Tools
Sharegate: No-Brainer Migration Tools for SharePoint. $375.
SharePoint Usage Reports
Usage reports, collaboration and audit for SharePoint.
11/19/2010 at 3:35 pm
If this property in UPS is set to export and edit by the user will it sync bad to AD if you upload a photo in a my site?
11/22/2010 at 7:16 am
Yes, it would sync back to AD then
12/09/2010 at 1:45 pm
Hi, this works but it doesnt seem to create all the 3 size that sharepoint uses needs, it only seems to create the large one. Have you any experience with this?
12/25/2010 at 12:12 pm
Finally got this to work, you must add permissions for youself in both administrator and permissions on the User Profile Service Application. Also, wanted to see if there is a way you can add a custom job so this can run every so often and update profile pictures without manual administrator interaction.
02/21/2011 at 5:46 pm
Ran a windows task everyday at 6AM to run shell commands, now our SharePoint syncs photos automatically.
02/21/2011 at 10:51 am
The Man. Shell says it does not know property CreateThumbnailsForImportedPhotos. Any idea?
02/23/2011 at 9:09 am
Hi,
I followed the steps and I can see the images with different sizes in the Profile Photo Library, but at the user profile page instead of image there is a red cross (which means image not found) can you suggest what could be the problem.
Thanks!
Kazim Raza
04/27/2011 at 9:36 am
I am also getting the same issue which Kazim is getting.

One thing I have noticed is that the url for the pic is not proper. Its missing a ‘/’. The url is
whereas it should be
http://server/personal/mysitehost/User%20Photos/Profile%20Pictures/xyzUsername_MThumb.jpg
05/25/2011 at 10:06 am
Interesting. Try going to the UPS and then “Setup MySites” and make sure you have a “/” after your MySite Host URL property. Just a wild guess that this may do the trick.
08/20/2012 at 10:53 am
sptwentyten solutions worked for me 🙂
07/01/2012 at 9:11 am
Hey Kazim,
I have the same issue. All of the s (Small) images are apearing where they should, but none of the m (medium) images work. I get the red X too. How do I check the Profile Photo Library? Did you ever get it working?
07/01/2012 at 9:56 am
An observation I’ve made is that in the User Profile Photo library. The path that works looks like this
Now the link from the users profile page looks like this (That dosn’t work).
The file name has an _jpg in it and the path has an _t (Just after Profile Pictures).
07/06/2012 at 2:05 pm
The RED X is only displayed by IE 6.0, 7.0 8.0 and 9.0 they don’t support CMYK format,
(Must be what Outlook Exclaimer uses) if you convert your pictures to RGB it will work. Try to browse using Firefox or Chrome and you will see that it works like a charm.
See: http://james-brennan.co.uk/2011/06/02/user-photos-stored-in-active-directory-can-not-be-displayed/ and http://social.technet.microsoft.com/Forums/en-US/sharepoint2010setup/thread/f152747a-d5a2-4d06-a50b-3c2ad9384a48/
07/06/2012 at 3:26 pm
The Free Outlook Exclaimer program allows you to select JPG or PNG. I Re-Uploaded my photos using the PNG format and the problem is solved!
04/29/2011 at 7:10 am
Adam,
I followed the steps but it’s not working. I did not get any error message, and tested for 3 different users the photo on thumbnailPhoto AD attribute it’s not synced in SharePoint.
Any idea in troubleshooting this?
Thanks
05/25/2011 at 9:57 am
Adam, I’ve tried for a few days to get this to work with no success. One problem is that the command “Update-SPProfileStore -CreateThumbnailsForImportedPhotos 1 -MySiteHostLocation http:///my” throws the error “A parameter cannot be found that matches parameter name ‘CreateThumbnailsForImportedPhotos'”. I did get the command to run successfully by using “Update-SPProfileStore -MySiteHostLocation http:///my“.
The second problem is that during the profile synch, ForeFront is throwing ma-extension-errors that the URI could not be determined. I think that this may have to do with a mismatch of picture data types. SharePoint is expecting a URL while AD is supplying an Octet string. Any ideas how to get these errors resolved?
Thanks for any help you can provide.
Ron
05/25/2011 at 10:04 am
@Ron – Is your 2010 environment patched to Oct CU or later? That includes the update to the Update-SPProfileStore command. Make sure you have the proper permissions to use PowerShell via Add-SPShellAdmin, or make sure you try the command as the SharePoint Farm Account
10/20/2011 at 4:52 am
You are the best, worked like magic. i was leaving out the •Run the Update-SPProfilePhotoStore PowerShell command
10/20/2011 at 5:11 am
Thank you Gloria for the kind words! Glad it worked out for you!
10/26/2011 at 1:29 pm
Check out codetwo active directory photos. http://www.codetwo.com It’s free and very easy to use when uploading photos to AD.
10/27/2011 at 4:10 pm
Do you have to be using mysites to be able to synchronize the pictures from AD to Sharepoint? I am able to synchronize other attributes from AD but not the picture.
11/09/2011 at 6:14 am
I can add the mapping to the “thumbnailPhoto” just fine, but when I want to save/exit the property settings page by clicking “OK” in the bottom of the page, it just hangs and eventually states (near the top): “An error occurred when updating a property.”
Any ideas, anyone?
11/10/2011 at 3:20 am
Solved that part now. Had just installed SP1 and June ’11 Cumulative Update, but had not SPUpdate’ed my databases. Still have problems though. Will start a new thread. 🙂
12/19/2011 at 10:02 am
I am also getting same problem could you please explain the resolution?
12/01/2011 at 4:12 pm
I can’t get that stupid powershell command to work I have upgraded to the latest service patch. I have been trying different things for hours now any help would be appreciated.
Here is the error message I get back. Looks like it doesn’t like -CreateThumbnailsForIportedPhotos
PS C:\Users\pslager> Update-SPProfilePhotoStore -CreateThumbnailsForImportedPhotos 1 -MySiteHostLocation http://mysites
Update-SPProfilePhotoStore : Object reference not set to an instance of an object.
At line:1 char:27
+ Update-SPProfilePhotoStore <<<< -CreateThumbnailsForImportedPhotos 1 -MySiteHostLocation http://mysites
+ CategoryInfo : InvalidData: (Microsoft.Offic…ofilePhotoStore:SPCmdletUserProfilePhotoStore) [Update-SPProfilePhotoStore], NullRefer
enceException
+ FullyQualifiedErrorId : Microsoft.Office.Server.UserProfiles.PowerShell.SPCmdletUserProfilePhotoStore
01/29/2012 at 9:10 am
Hi,
Thanks Guys.
We are having a FBA based site. It looks like update command works well when my sync connection is windows based and claimsuseridentifer is not mapped.
In our case we need the conn to be forms based and claims user identifier – > samAccountName.
” Error processing the photo URL User Photos/Profile
Pictures/0c37852b-34d0-418e-91c6-2ac25af4be5b_156.jpg for user i:0#.f|ad|……
: System.UriFormatException: Invalid URI: A Dos path must be rooted, for
example, ‘c:\’.”
Any help will be useful
02/13/2012 at 12:25 pm
Hi!
Great post, very useful and very clear.
We have followed your steps:
– In AD we have binary data in thumbnailPhoto attribute
– We run a full profile sync
– We executed
‘Update-SPProfilePhotoStore -CreateThumbnailsForImportedPhotos 1 -MySiteHostLocation
http:///mysite‘
The command is executed with no errors.
But in User Profile we don’t see any photo, library ‘http://srv/mysite/User%20Photos/Forms/AllItems.aspx’ is empty.
Please, could you tell us what we should check?
Thanks!
Regards
02/29/2012 at 5:00 am
We are having the same exact issues as @Susana. Can you possibly shed some light on it? We are storing pictures in AD using an Octet string…
03/02/2012 at 7:01 pm
Same issue like Susana and Chris
03/02/2012 at 11:02 pm
I have read that by installing the Dec 2011 CU this issue has been resolved. Apparently, one of the previous CUs after SP1 broke it. I would make sure you have installed the Dec 2011 CU. That is our new baseline version for all new installations that we recommend for clients. Of course, test this in your Test environment first.
03/03/2012 at 5:20 am
The names are displayed as corp\username in SharePoint. If I update the display name in AD it’s ok. But can this be done for all users?
03/16/2012 at 2:44 pm
Adam, thanks for this post, much better than other methods I’ve seen. One issue though, I’m getting an error in PowerShell that no other user has commented on. Any idea what the problem might be?
PS C:\Users\SP_Admin> Update-SPProfilePhotoStore -CreateThumbnailsForImportedPhotos 1 -MySiteHostLocation http://spserver/my
Update-SPProfilePhotoStore : Object reference not set to an instance of an object.
At line:1 char:27
+ Update-SPProfilePhotoStore <<<< -CreateThumbnailsForImportedPhotos 1 -MySite
HostLocation http://spserver/my
+ CategoryInfo : InvalidData: (Microsoft.Offic…ofilePhotoStore:
SPCmdletUserProfilePhotoStore) [Update-SPProfilePhotoStore], NullReference
Exception
+ FullyQualifiedErrorId : Microsoft.Office.Server.UserProfiles.PowerShell.
SPCmdletUserProfilePhotoStore
I tried entering a bogus site name, http://spserver/mynonsense, and it said it couldn't find that site, so it is at least trying to access /my.
03/16/2012 at 5:14 pm
To answer my own question, it’s a permissions issue. I gave the current user full control of User Profile Service Application and then it worked.
03/26/2012 at 9:48 am
Thanx. Nice one. Didn’t work, but CU 2012 March helped (possibly it was the december actually).
04/05/2012 at 5:38 am
Yes. My updated post on TCSCBlog.com now lists the Feb 2012 CU as the pre-req. I’ll update this one soon in case people land here instead of going to the updated post.
04/05/2012 at 5:04 am
If the profile photo already exists in Sharepoint, will the AD update overwrite it with the AD images ?
ie. If someone updates their photo and I upload it to AD, will it get replicated to Sharepoint or will sharepoint ignore it as it already has a pic ?
Ian
04/05/2012 at 5:37 am
Great question. AD will overwrite the pic. Just like if you were to manually change a user’s last name. The next sycn with AD it would set that last name back.
05/04/2012 at 9:17 am
For all those who have trouble with the Links of the Pictures in SharePoint 2010 if Importet from thumbnailPhoto Atribute AD.
Try Adding the picture to AD with anoter Program.
At first i was using Exclaimer Outlook Photos to set thumbnailPhoto and after UserProfileSync an UpdatePhotoStore (btw thanks for that Information) the Link of the Picture in the MySite Profile Page was different to the location (real location had an extra /_t/)…couldent figure out how to change that.
After adding Pictures via AD Photo tool by cjwdev Photo links an location matched after syncing and Updating PhotoStore
Maybe this is helpful to somebody.
Have a nice Weekend.
05/19/2012 at 7:13 am
Need to ensure that SP1 & Cumulative updates are installed in form servers.
Create one windows tasks so that it will exectue below tasks every day:
Update-SPProfileStore -MySiteHostLocation http://mysite (One time job)
Update-SPProfilePhotoStore -CreateThumbnailsForImportedPhotos 1 -MySiteHostLocation http://mysite (Schedule this task)
06/07/2012 at 6:44 am
When I run the first part, Update-SPProfileStore -MySiteHostLocation http://my_server/my, I get an error that …
The term ‘Update-SPProfileStore’ is not recognized as the name of a cmdlet, fun
ction, script file, or operable program. Check the spelling of the name, or if
a path was included, verify that the path is correct and try again.
At line:1 char:22
+ Update-SPProfileStore <<< Update-SPProfilePhotoStore -CreateThumbnailsFo
rImportedPhotos 1 -MySiteHostLocation http://my_server/my
I get…
Update-SPProfilePhotoStore : Object reference not set to an instance of an obje
ct.
At line:1 char:27
+ Update-SPProfilePhotoStore <<<< -CreateThumbnailsForImportedPhotos 1 -MySite
HostLocation http://my_server/my
+ CategoryInfo : InvalidData: (Microsoft.Offic…ofilePhotoStore:
SPCmdletUserProfilePhotoStore) [Update-SPProfilePhotoStore], NullReference
Exception
+ FullyQualifiedErrorId : Microsoft.Office.Server.UserProfiles.PowerShell.
SPCmdletUserProfilePhotoStore
I have granted Administrator full access to the User Profil Service, as suggested by Aaron, restarted the server but still the same.
Could it be the CU version on the server stopping this ?
Ian O
06/07/2012 at 6:59 am
It very well could be the CU, what month and year CU are you at?
06/07/2012 at 7:07 am
Dec 11 I believe.
Feb 12 doesn;t seem to like installing on the server, from what i’m being told.
April 12 is out but can;t find the actual software yet and Microsoft aren;t replying to my download request !
06/07/2012 at 9:01 am
You will need Feb 2012 at least….April 2012 CU was just recently pulled by MS and has not been re-released yet.
05/31/2012 at 4:14 am
Hi, what I’m seeing is that the userprofilephoto is stored in the User Photo library with a name like: 0c37852b-34d0-418e-91c6-2ac25af4be5b_5 but it’s will not automatically create the necessary thumbs. With the PS command it does. (I’m on the latest CU)
Kind regards, Amancio
05/31/2012 at 4:20 am
Ah I’ll see that I need to schedule this task 🙂
05/31/2012 at 12:42 pm
Works perfect! Don’t know why this isn’t a widely documented solution. Thanks Adam.
05/31/2012 at 12:54 pm
Truly appreciate the comment, Chad. Thanks for visiting the site!
06/18/2012 at 8:47 am
I followed the steps worked perfectly on mysite. But the profile pictures are not shown when i am searching the people in people search.
06/28/2012 at 4:07 pm
I know nothing about Sharepoint so forgive me, but I too get the Object reference not set to an instance of an object. I have no idea where I would add myself full control permissions.
06/28/2012 at 4:20 pm
Make sure that the account you are using PowerShell with has ShellAdmin rights. If you are getting that error that typically means you don’t. Login with your SharePoint Farm account and use the Add-SPShellAdmin command to grant your account the proper permissions to the database(s). http://technet.microsoft.com/en-us/library/ff607596.aspx
06/28/2012 at 4:29 pm
I am actually a Farm Administrator, but I did login as the user account that is setup for that and did the add-spshelladmin and still get the error.
06/28/2012 at 4:37 pm
When you start the SharePoint 2010 Management Shell (PowerShell) do you see any sort of message at the top that reads something like “cannot access the local farm”?
07/10/2012 at 11:38 am
Has anybody else run across anything on this that you know of? I’m still getting the error the Object reference not set to an instance of an object. I’ve tried several permission type things, but still getting Access denied according to the logs. I can always open a support ticket, but was just curious. Thanks.
06/28/2012 at 4:39 pm
I don’t, but I’m thinking I need to make sure the CU is installed from February. An outside vendor installed SP just recently and I don’t see any CU in the installed updates list, just SP1.
06/28/2012 at 4:41 pm
Go to Central Admin > System Settings > Servers in Farm …look at the version number then compare it to this list: http://www.toddklindt.com/blog/Lists/Posts/Post.aspx?ID=224. That will tell you what version you are on down to the CU.
06/28/2012 at 4:46 pm
Thanks for the help, yeah, it’s on Configuration database version: 14.0.6117.5002 so that’s at least February it looks like
07/05/2012 at 4:27 pm
Works great, thanks for taking the time to write it down. However, when I run a full index, they all go away until I run the power shell command again. Is there a way to make that sticky?
07/10/2012 at 3:25 pm
I came across this article and ran it as an account that already had these permissions. Worked like a charm:
https://donalconlon.wordpress.com/2011/03/08/problem-running-update-spprofilephotostore/
07/10/2012 at 3:59 pm
Glad you got it working, Dave. Thank you very much for sharing the link!
08/20/2012 at 8:17 am
I can’t understand why this happening, pleas help me what should i do for shoot this trouble !!
Update-SPProfilePhotoStore : Cannot convert ‘System.String’ to the type ‘System
.Boolean’ required by parameter ‘CreateThumbnailsForImportedPhotos’.
At line:1 char:61
+ Update-SPProfilePhotoStore -CreateThumbnailsForImportedPhoto <<<< 1-MysiteHo
stLocation http://portal/my/personal
+ CategoryInfo : InvalidArgument: (:) [Update-SPProfilePhotoStore
], ParameterBindingException
+ FullyQualifiedErrorId : CannotConvertArgument,Microsoft.Office.Server.Us
erProfiles.PowerShell.SPCmdletUserProfilePhotoStore
08/20/2012 at 6:57 pm
Try it without the “1” after the parameter. I heard where several state you just need the parameter name and not the “1” after it.
08/21/2012 at 8:43 am
thank you for rapid reply! I have done already it worked, the matter was in SPShell Admin rights,when I had log in OS by fram admin , which is the SPShellAdmin , ran PowerShell under my SPShellAdmin , it worked! anyway thank you for this great job , I really appreciat it!
09/18/2012 at 8:15 am
PS C:\Users\SP_Admin> Update-SPProfilePhotoStore -CreateThumbnailsForImportedPho
tos 1 -MySiteHostLocation http://fedssharep:2001
Update-SPProfilePhotoStore : Object reference not set to an instance of an obje
ct.
At line:1 char:27
+ Update-SPProfilePhotoStore <<<< -CreateThumbnailsForImportedPhotos 1 -MySite
HostLocation http://fedssharep:2001
+ CategoryInfo : InvalidData: (Microsoft.Offic…ofilePhotoStore:
SPCmdletUserProfilePhotoStore) [Update-SPProfilePhotoStore], NullReference
Exception
+ FullyQualifiedErrorId : Microsoft.Office.Server.UserProfiles.PowerShell.
SPCmdletUserProfilePhotoStore
09/18/2012 at 8:39 am
Make sure you are on SP2010 SP1 with at least the Feb 2012 CU.
11/16/2012 at 11:38 am
Thanks for the information.
I’ve finally managed to set it all up, and have a folder full of user images.
but…
The Images are named : domain_username_LThumb.jpg
and sharepoint seems to be looking for : company_username_LThumb.jpg
What defines the naming convention ?
Thanks,
Tim.
01/30/2013 at 9:39 am
Tim,
Can you please share what worked for you .please mention the steps..thanks
01/31/2013 at 4:56 am
I just followed the instructions above.
There were a couple of issues with which username I used for the connector, but eventually used my Sharepoint_Admin for everything and it seemed to help.
I’ve got a folder full of images, but still not got the file names correct.
02/01/2013 at 4:58 pm
Have been fighting this issue for too long. I followed the steps and all worked for me.
02/01/2013 at 7:53 pm
Glad to hear that it helped you out, James. Thanks for stopping by!
02/04/2013 at 7:58 am
Hi
Anyone had any troubles with SharePoint 2013 User profiles?
Looks like the powershell is not working and this the error
Update-SPProfilePhotoStore :
UserProfileApplicationNotAvailableException_Logging ::
UserProfileApplicationProxy.ApplicationProperties ProfilePropertyCache does
not have d6514f8d-305e-41eb-ac86-530ee36009a4
At line:1 char:1
+ Update-SPProfilePhotoStore -CreateThumbnailsForImportedPhotos 1
-MySiteHostLocat …
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~
+ CategoryInfo : InvalidData: (Microsoft.Offic…ofilePhotoStore:
SPCmdletUserProfilePhotoStore) [Update-SPProfilePhotoStore], UserProfileAp
plicationNotAvailableException
+ FullyQualifiedErrorId : Microsoft.Office.Server.UserProfiles.PowerShell.
SPCmdletUserProfilePhotoStore
Any ideas?
02/11/2013 at 5:46 am
Bryan I had some problems.
Maybe my steps could help you:
http://social.technet.microsoft.com/Forums/en-GB/sharepointgeneral/thread/4acf8501-db0c-4fa6-b79d-239401ded789
02/11/2013 at 5:46 am
Bryan I had some problems also with Sharepoint 2013.
Here is the question from MS TECHNET and the steps that I have followed:
http://social.technet.microsoft.com/Forums/en-GB/sharepointgeneral/thread/4acf8501-db0c-4fa6-b79d-239401ded789
02/12/2013 at 12:31 pm
Hi Adam, first off this was a great bit of info that is missing from general SharePoint documentation everywhere I researched. I set this up and it worked great. A bit later I started noticing that updated photo’s were not showing up (the old photo was still displaying). After a bit of troubleshooting I found that I needed to run a full profile import and then re-run the powershell script in order to get the updated photo’s to show. Just thought I would throw that out there in case anyone else ran into the same issue.
02/12/2013 at 10:31 pm
Thank you, Sid. Glad that it helped you out and thanks for the tip!
03/21/2013 at 11:31 am
Hi, I have a problem with thjs powershell cmd Update-SPProfileStore.
Error return
The term ‘Update-SPProfileStore’ is not recognized as the name of a cmdlet, fun
ction, script file, or operable program. Check the spelling of the name, or if
a path was included, verify that the path is correct and try again.
SharePoint version is 14.0.6123.5000.
I can’t find any information about Update-SPProfileStore on MS technet.
My original problem is, when i use Update-SPProfilePhotoStore -MySiteHostLocation, SharePoint generate PictureUrl with AAM default of mysite. And my users use AAM intranet. So, they have a red cross …
If I use Update-SPProfilePhotoStore -MySiteHostLocation “AAM default” or Update-SPProfilePhotoStore -MySiteHostLocation “AAM MySite” same result.
Any ideas ?
06/13/2013 at 1:58 am
Hi Adam,
Nice Post ! However, have a query.. If I do not have MySite setup done.. then is it possible to get the user pictures from AD ? In my case , I just want to have an people search to be configured where want to show the picture of the user along with the details.
Thanks!
Krutika
06/28/2013 at 6:00 am
hase anybody get the same proccess for sharepoint 2013 , i didn’t get the picture from the AD , please if someone done it share the right methode for SP 2013, will be appriciate !
08/07/2013 at 8:34 pm
Great article, thks!
10/03/2013 at 5:15 am
Thanks! Found this another great step by step guide to Import User Pictures from Active Directory to SharePoint 2010 My Site: http://salaudeen.blogspot.com/2013/01/import-user-pictures-from-active-directory-to-sharepoint-2010-mysite.html
11/15/2013 at 3:55 am
Hey adam,
Everything worked fine except, the photo shows up a red X and when I try to access the location from red X. I get a 404.
Can you please help or hint with what the problem most likely could be
Regards
Vivek
05/12/2014 at 12:08 pm
Thanks for finally talking about >Import User Profile Photos from Active Directory into SharePoint 2010 | SharePoint Adam <Liked it!