Я столкнулся с этой довольно часто упоминаемой проблемой, но даже после просмотра почти всех источников я не получил ответа. Проблема заключается в следующем:
Я написал небольшой инструмент обновления, который подключается к серверу, чтобы проверить наличие новых версий приложения, а затем копирует новую версию на клиентскую машину. Итак, картина такова:
Клиент устанавливает программу обновления, предварительно настроенную мной для конкретного приложения. Так что в основном программа обновления находится где-то в папке Program Files. Затем запускается программа обновления, подключается к нашему серверу, получает самую новую версию и устанавливает ее в тот же каталог, в котором установлена программа обновления. Таким образом, клиент не знает, что есть два приложения. средство обновления и основное приложение, для которого предназначено средство обновления. Я надеюсь, вы поняли идею.
Так вот почему мне нужен доступ к папке Program Files.
Я занимаюсь разработкой под Windows 7, и программное обеспечение должно работать и на 7.
Есть ли способ убедиться, что администратор запускает программу обновления? Нужны ли мне права администратора для доступа к нему? Что еще, так как он запрещает доступ, даже если у меня есть права администратора? Есть ли способ проверить в коде, какие права имеет пользователь?