Home > Sandboxed Solutions, SharePoint > Sandboxed Solutions die ersten Schritte

Sandboxed Solutions die ersten Schritte

Der SPUCWorkerProcess bildet das technische Herz einer jeden Sandboxed Solution, da er die Ausführung des Sanboxed Codes übernimmt. Was also tun, wenn Visual Studio nicht in der Lage ist sich mit dem Prozess zu verbinden, um zum Beispiel einen sandboxed Webpart zu debuggen?

Im ersten Schritt empfiehlt es sich einen Blick in die Zentraladministration zu werfen. In der Rubrik ”Services on Server” sollte der Dienst ”Microsoft SharePoint Foundation User Code Service” gestartet sein.

Microsoft SharePoint Foundation User Code Service

Danach sollten die drei Prozesse  SPUCHostService.exe, SPUCWorkerProcessProxy.exe und SPUCWorkerProcess.exe stabil laufen. In meinem Fall starb der SPUCWorkerProcessProxy in einem Intervall von ca. 30 Sekunden und der SPUCWorkerProcess kam nie zur Ausführung.

Dieses Verhalten begründet sich in der Tatsache, dass meine Entwicklungsmaschine nebenbei auch noch die Domain Controller Rolle inne hat. In dieser Konstellation wird Usern, also auch dem Account mit dem die Sandbox Prozesse ausgeführt werden, das Recht entzogen auf den ComputerName Schlüssel in der Registry zuzugreifen. Die Installationsanleitung für SP2010 Beta von Jie Li enthält unter Punkt 10 ein PowerShell Script mit dem der “Users” Gruppe das “full control” Recht für diesen Schlüssel zugewiesen wird.

$acl = Get-Acl HKLM:\System\CurrentControlSet\Control\ComputerName
$person = [System.Security.Principal.NTAccount]"Users"
$access = [System.Security.AccessControl.RegistryRights]::FullControl
$inheritance = [System.Security.AccessControl.InheritanceFlags]"ContainerInherit, ObjectInherit"
$propagation = [System.Security.AccessControl.PropagationFlags]::None
$type = [System.Security.AccessControl.AccessControlType]::Allow
$rule = New-Object System.Security.AccessControl.RegistryAccessRule($person, $access, $inheritance, $propagation, $type)
$acl.AddAccessRule($rule)
Set-Acl HKLM:\System\CurrentControlSet\Control\ComputerName $acl

Nach dem Ausführen des Scripts sollte das System neu gestartet werden. Siehe da, alle SPUC* Prozesse laufen stabil und es kann munter los gehen mit der Entwicklung der ersten Sandboxed Webparts. Hallo Welt etc.

  1. Es gibt noch keine Kommentare.
  1. Keine Trackbacks bisher.

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Log Out / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Log Out / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Log Out / Ändern )

Verbinde mit %s

Follow

Get every new post delivered to your Inbox.