Warum bekomme ich Fehler bei Objekten mit dem Zeichen ':' im Namen?

Frage: Warum bekomme ich eine Fehlermeldung, wenn ich Objekte, z.B. Computer, anlegen will, die einen ':' im Namen haben. Auch das Anzeigen solcher Objekte mit Dir oder den spezifischen Cmdlets bereitet Probleme.


Antwort: Im Wesentlichen sind Objektnamen im Kontext der PowerShell Extensions for Ivanti DSM relative oder absolute Pfade. Als solche werden sie auch von der PowerShell behandelt.


D.h., die PowerShell versucht diese Pfade zu normalisieren und in ihre Bestandteile zu zerlegen. Analog zu Pfaden im "normalen" Dateisystem kann ein Pfad im Kontext der PSX7 ein Laufwerk enthalten, das durch das Zeichen ':' vom restlichen Pfad getrennt ist. Ein Objektname 'My:Computer' wird von der PowerShell in ein Laufwerk 'My' und ein Objekt 'Computer' zerlegt. Da es in der Regel aber weder dieses Laufwerk noch das Objekt gibt, wird eine Fehlermeldung erzeugt.


Um dieses Problem zu umgehen, kann der Objektname mit einem absoluten Pfad angegeben werden. Dieser absolute Pfad könnte im obigen Beispiel also 'emdb:/rootDSE/New Users & Computers/My:Computer' lauten. Besser ist es, ganz auf ':' und andere Trennzeichen als Namensbestandteil zu verzichten.