У меня есть среда, в которой мне нужно часто менять параметры программы, которая запускается при входе пользователя на сервер терминалов. На данный момент мы открываем оснастку «Управление компьютером», редактируем вкладку «Среда» для пользователя и вручную меняем параметры в разделе «Запустить следующую программу при входе в систему:». Я хотел бы автоматизировать процесс.
Я смотрю на System.DirectoryServices и System.DirectoryServices.AccountManagement и читаю все, что могу об этом. Пока что я думаю, что информация, которую мне нужно отредактировать, хранится в свойствах «Параметры» (наихудшее имя для свойства, поиск в руинах). Причина такого предположения заключается в том, что когда я перечисляю все свойства, которые я получаю
(...)
Name: HomeDirDrive
Value:
Name: Parameters
Value: P☺CtxCfgPresent????☺CtxCf
gFlags1????☺CtxShadow????*☻☺CtxMinEncryptionLevel? @☺CtxWorkDirectory???????????
?????????????????????"C☺CtxInitialProgram???????????????????????????????????????
????????????????????????????????????????????????????????????????????????????????
???????????????
Name: PrimaryGroupID
Value: 513
(...)
CtxInitialProgram и CtxWorkDirectory имеют отношение к тому, с чем я работаю.
Теперь я застрял, так как не могу понять, как или найти ресурсы, чтобы помочь мне, правильно читать и записывать значения.
Любая помощь будет принята с благодарностью.
РЕДАКТИРОВАТЬ -
Я нашел этот ответ в другом месте в Интернете
Спросив в другом месте в Интернете, я нашел ответ:
К сожалению, эти данные кодируются в проприетарном формате. Единственный поддерживаемый способ программного управления - использование интерфейса ADSI IADsTSUserEx, который поставляется с терминальными службами. В основном вы просто приводите свойство NativeObject к этому COM-интерфейсу (после создания необходимой ссылки COM) и затем получаете доступ к свойствам, предоставляемым интерфейсом.
Теперь мой вопрос: как мне установить эту ссылку COM, я никогда раньше такого не делал.