Adaugarea pozelor in AD folosind Exchange Management Shell

By Vitalie Ciobanu - Last updated: Tuesday, May 31, 2011 - Save & Share - 2 Comments

Ma jucam azi cu un coleg cu Exchange si AD si am ajuns la pasul de import poze pentru useri. Am cerut poze, le-am modificat cum ne trebuie si hai sa facem bulk upload. Pac-pac! Minunat! Smile

 

Bun, hai sa vedem ce si cum am facut. Pentru inceput, cerinte:

  1. modificam schema de AD
  2. facem rost de poze
  3. cunostinte minime powershell sau Gugl

Pentru modificarea schemei de AD rulam urmatoarea comanda intr-un cmd cu Run As Administrator:

Regsvr32 schmmgmt.dll

Facem rost de poze ale utilizatorilor. Le modificam sa fie sub 10 KB, 96×96 px si le salvam ca .JPG

Acum, punem pozele intr-un director (sa zicem C:\Emp_Pictures) si le redenumim in alias.jpg de exemplu. Teoretic, calea catre poza mea va fi C:\Emp_Pictures\vitalie.ciobanu.jpg

Daca vrem sa importam poza pentru un singur utilizator, rulam comanda de mai jos in Exchange Management Shell:

Import-RecipientDataProperty -Identity vitalie.ciobanu -Picture -FileData ([Byte[]]$(Get-Content -path C:\Emp_Pictures\vitalie.ciobanu.jpg -Encoding Byte -ReadCount 0))

Daca vrem sa importam pozele pentru suta de utilizatori, trebuie sa cream un fisier CSV cu datele despre utilizatori si calea catre poza fiecaruia. Fisierul CSV trebuie sa aiba doar doua coloane: alias si calea catre fisier. Mai jos e un exemplu de fisier csv:

alias, cale,

vitalie.ciobanu, C:\Emp_Pictures\vitalie.ciobanu.jpg

prenume.nume,C:\Emp_Pictures\prenume.nume.jpg

Tip:

Ca sa nu va chinuiti sa faceti copy/paste la alias in calea catre poza userului, deschideti un excel si in celula B2 scrieti: ="C:\Emp_Pictures\"&A2&".jpg" si copiati formula in jos cat aveti inregistrari (aliasuri) in coloana A. Pentru celula B3, evident, stringul va fi ="C:\Emp_Pictures\"&A3&".jpg" si tot asa mai departe…

Salvati fisierul excel ca Emp_Pictures.csv pe discul C: de exemplu.

Pentru a adauga poze mai multor utilizatori, rulam comanda de mai jos in Exchange Management Shell:

Import-CSV C:\Emp_Pictures.csv | % {Import-RecipientDataProperty -Identity $_.alias -Picture -FileData ([Byte[]]$(Get-Content -Path $_.cale -Encoding Byte -ReadCount 0)) }

Daca vreti sa vedeti ce mai fac si unii MVP (din afara, evident Smile), intrati aici http://www.mikepfeiffer.net/2010/05/manage-exchange-2010-thumbnail-photos-with-a-powershell-based-gui/ 

 

Disclaimer:

This weblog contains my personal opinions, offered in good faith, but also come with no guarantees or warrantees. These opinions does not necessarily reflect those of my employer nor the committees I’m member of.

Posted in Exchange • Tags: , Top Of Page

2 Responses to “Adaugarea pozelor in AD folosind Exchange Management Shell”

Comment from Andrei Ungureanu
Time June 1, 2011 at 9:13 pm

Asta merge parca numai in Exchange 2010, nu? Pe vremuri nu eram de acord sa tii poza in AD si preferam un link catre poza care era stocata de regula pe un webserver. Unul din motive era ca nimeni nu vroia sa tina mii de poze in AD si sa creasca dimensiunea bazei fara rost. Dar cum azi overhead-ul asta a devenit foarte mic, cred ca poti sta linistit si cu informatia asta in AD.
Alt motiv mai era ca daca tineai pozele pe un web server le puteai accesa foarte usor si din alte aplicatii, pentru ca de multe ori dezvoltatorii aveau probleme in a se intelege cu informatia stocata in AD.

Comment from Vitalie Ciobanu
Time June 2, 2011 at 10:56 am

Si da si nu… Atributul thumbnailPhoto parca era de ceva vreme in AD, dar cica doar Outlook 2010 “iti arata poza” din AD. Exchange 2010 vine cu comenzile de powershell care te ajuta sa faci asta mai usor

Write a comment