Pregunta

Estoy intentando crear un script de PowerShell completamente funcional que fusionará cuentas de usuario, recorrerá todas las colecciones de sitios y eliminará las 2 cuentas de usuario, luego ejecutará la compilación de audiencia.Tengo las partes 1 y 2 funcionando después de un poco de trabajo, pero estoy obsesionado con enganchar al público.He visto esta publicación por Per, y siempre aparece en la línea 3 con:

Nuevo objeto:Excepción al llamar a ".ctor" con argumentos "1":"Referencia a objeto no establecida como instancia de un objeto." En la línea: 3 char: 18 + $ upm = new-object <<<< Microsoft.Office.server.userProfiles.userProfilemanager ($ context);+ Información de categoría:Operación inválida:(:) [New-Object], MethodInVocationException + totalmente calificadoerRORID:ConstructorInvokedThrowException,Microsoft.PowerShell.Commands.NewObjectCommand

si hago un $context, me da un GUID de todos ceros.Estoy desarrollando esto en mi máquina local con Windows 7, acceso de administrador completo a todo.

$site = Get-SPSite "http://localhost" 
$context = Get-SPServiceContext $site; 
$upm = New-Object Microsoft.Office.Server.UserProfiles.UserProfileManager($context); 
$audmgr = New-Object Microsoft.Office.Server.Audience.AudienceManager($context)
$aud = $audmgr.GetAudience("Irvine")
¿Fue útil?

Solución

Bleh, no figuraba en los permisos de la aplicación de servicio a pesar de que figuraba como administrador.

enter image description here

Imagen y arreglo cortesía de obtener-spscripts

Otros consejos

Alguien en los foros de MSDN tuvo el mismo problema.Lo solucionaron cambiando la forma en que se creaba una instancia del contexto.Básicamente haz esto:

[Reflection.Assembly]::LoadWithPartialName("Microsoft.Office.Server")
$context = [Microsoft.Office.Server.ServerContext]::GetContext($mysite)
$upm =  New-Object Microsoft.Office.Server.UserProfiles.UserProfileManager($context)

Fuente: http://social.technet.microsoft.com/Forums/sharepoint/en-US/7acf5c34-798b-4cee-a219-96d1ba4832c9/create-user-profile-manager-class-instance-using-powershell?forum=sharepointgeneralprevious

Licenciado bajo: CC-BY-SA con atribución
scroll top