Я уже задавал связанный вопрос, но, к сожалению, ответы, хотя и правильные, на самом деле не решили мою проблему.
Я использую WMI API ManagementClass / ManagementObject (потому что он лучше справляется с удаленным администрированием, чем API DirectoryEntry). Я хотел бы полностью удалить существующие карты сценариев из
Использование решения с использованием строкового формата, похоже, работает для VBS, но не для API ManagementClass. Итак, я пытался написать что-то, что могло бы создать правильный массив объектов карты сценариев, например
foreach (var extension in extensions) {
var scriptMap = scriptMapClass.CreateInstance();
SetWmiProperty(scriptMap, "ScriptMap.Extensions", "." + extension);
К сожалению, не представляется возможным реализовать функцию SetWmiProperty. Если я попробую следующее
wmiObject.Properties.Add(propertyName, CimType.SInt32);
Я получаю «Операция недействительна из-за текущего состояния объекта.». С другой стороны, если я просто пытаюсь установить свойство, мне говорят, что свойство не существует. Класс scriptMap имеет путь «ScriptMap», который отображают существующие объекты.
Есть ли у кого-нибудь рабочий код, который манипулирует ScriptMaps с помощью API ManagementClass?