Hallo,
ich richte über ein PowerShell Skript von circa 3500 Zeilen eine SharePoint Umgebung ein.
Am Ende des Skriptes rufe ich eine Funktion auf, welche nicht funktioniert.
Nach etwas herumprobieren habe ich etwas seltsames festgestellt:
Wenn ich die SharePoint Management Shell erneut als Administrator ausführe und nur die betroffene Methode einfüge funktioniert sie.
Alle Variablen, welche die nicht funktionierende Methode betreffen habe ich geschlossen.
Habe extra neue Variablen deklariert, damit diese wirklich eindeutig sind.
Ebenfalls für alle Möglichen Variablen die Dispose Methode aufgerufen und alle Filestreams mit der Close() Methode geschlossen.
Ebenfalls habe ich Probiert einen Sleep vor der Methode auszuführen, da ich gedacht hatte dass das System im Hintergrund noch arbeitet und die Methode deshalb nicht ausgeführt werden kann.
Aber ich werde um eine neue Session nicht drum herum kommen wie es den Anschein macht.
Die Management Shell hat ja als Dateiziel Startoptionen gegeben, welche die normale PowerShell nicht besitzt ( C:\Windows\System32\WindowsPowerShell\v1.0\PowerShell.exe -Version 2.0 -NoExit " & ' C:\Program Files\Common #Files\Microsoft Shared\Web Server Extensions\14\CONFIG\POWERSHELL\Registration\\sharepoint.ps1 ). Das sieht man wenn man die Management Shell auf Rechtsklick -> Eigenschaften -> Ziel ändern klickt.
Um mein Problem zu lösen habe ich also nun folgende Möglichkeiten:
1. - Aus meinem Skript ein zweites Skript mit nur dieser ausgelagerten Methode aufzurufen
2. - Die "aktuelle Session" innerhalb meines Powershell Skriptes zurücksetzen/löschen
Ich würde gerne den ersten der beiden Vorschläge nachgehen, leider muss ich für die Start-Process Methode eine Argumentliste füllen. Wegen dem '&' Zeichen für den Verweis auf die SharePoint Bibliothek ist dies leider nicht ohne weiteres Möglich.
Daher wollte ich fragen ob jemand weiß wie man die Aktuelle Session in SharePoint zurücksetzt (mit Skriptbefehl) um quasi den Stand einer neu geöffneten Management Shell zu simulieren.
Danke im vorraus an die aufmerksamen Leser!
PS: Ich hätte für dieses Anliegen eher in ein PowerShell Forum geschrieben, allerdings tritt dieses Problem nur im Kontext mit der SharePoint Shell auf. Insofern hoffe ich, dass wenn dieses Problem erneut bei jemandem auftritt hier ebenfalls eine Hilfe darstellen zu können.