Проблема: я создал службу, которая должна работать с повышенными привилегиями. Теперь у меня есть приложение, доступное для пользователей. Приложение хочет связаться со службой через именованный канал. Именованный канал создается службой.
Однако я не могу открыть канал, потому что ERROR_ACCESS_DENIED. Вопрос: как настроить пайп в сервисе, чтобы приложение могло его писать-открывать?
Я прочитал это но это совсем не помогает. Буду рад увидеть подсказки или примеры кода.
Предыстория: мне нужно изменить настройки аудиоустройства, что можно сделать с помощью интерфейса IPropertyStore, полученного с помощью вызова IMMDevice::OpenPropertyStore. Однако в документации четко сказано, что я не могу этого сделать, если у меня нет прав администратора. Очевидно, я не хочу раздражать пользователя UAC каждый раз, когда он собирается повернуть ручку. поэтому для этого я создал вышеупомянутый сервис. Но опять не повезло.