Поскольку вы планируете использовать извлекаемое вами значение, а не отображать его, нет необходимости использовать что-то вроде "format-wide", которое только делает вывод понятным для человека и является причиной вашего типа данных FormatStartData.
Вы можете просто использовать:
$PrimaryUser = (Get-WmiObject -class CCM_UserAffinity -computername $computer -namespace $namespace).ConsoleUser
, который возвращает строку и принимается аргументом -Member Add-LocalGroupMember
Следует иметь в виду, что в теориибыть более чем одним ConsoleUser на машину.Таким образом, ConsoleUser может быть массивом или нет.Если вы можете гарантировать, что в вашей среде всегда есть только один пользователь на одну машину (в момент запуска ts), вы можете просто использовать его как есть.В противном случае вам придется указать, какого пользователя вы хотите использовать, и я, конечно, не могу сказать вам, каким будет хорошее правило для этого для вашей среды.
Также я надеюсь, что вы проверили, что класс WMI CCM_UserAffinity ужеЯ не могу сказать вам, так ли это на том этапе, когда вы хотите запустить этот скрипт.