Предположим, я хочу сменить раздел реестра на следующий скрипт.Повышающая привилегия для сценариев C#
RegistryKey myKey = Registry.LocalMachine.OpenSubKey("SOFTWARE\\Company\\SomeFolder", true);
if(myKey != null)
{
myKey.SetValue("NameXYZ", "1", RegistryValueKind.String);
myKey.Close();
}
Значение не изменяется, потому что у меня нет привилегий. Одним из способов изменения значения ключа реестра является, например, запустите VS с правами администратора, а затем запустите сценарий. Но есть ли способ установить повышенную привилегию для любых скриптов C# (.csx), а затем выполнить этот скрипт, например. VS с нормальными привилегиями?
Нет, не совсем. Зависит от выполнения сценария. Если вы сделаете это из интерактивного окна C#, вы должны выполнить VS повышенный уровень. Если вы сделаете это с помощью csi.exe, тогда вы должны запустить программу, которая запрашивает возвышение с помощью своего манифеста или runas и разрешить запуск csi.exe. –