| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: WinAPI и системное программирование > Запуск от имени администратора |
| Автор: Tokagero 25.7.2010, 06:12 |
| Доброго времени суток, интересует следующий вопрос: Как сделать автоматический запуск программы от имени администратора? В WinXP все было нормально, не так давно перешел на 7 и ознакомился с новыми приколами... Так вот нужно чтоб программа при старте запускалась от администратора (можно даже со стандартным окошком безопасности) Так как иначе не получается создать файл на диске. Или нет доступа. Нашел кучу старых исходников на тему "запуск чужого приложения от имени администратора" со всякими вводами паролей и т.д, но нужно всего навсего в программе сделать такое требование по умолчанию. Можно? И пойдет ли Delphi 7 для этого? Ведь тогда небыло Win7 вообще |
| Автор: xkor 25.7.2010, 13:32 | ||||
начиная с висты для того чтобы программа запускалась с правами администратора при включенном UAC надо чтобы в манифесте программы присутствовало:
тогда при запуске программы винда покажет окно безопасности с вопросов выдавать ли программе права, но вот если UAC отключен то не уверен что права при этом будут получены... для того чтобы запихнуть в программу манифест можно включить в проект файл "manifest_add.rc" (имя любое, главное расширение rc) со следующим содержанием: "1 24 manifest.xml" (без кавычек) ну а сам манифест соответственно должен быть в manifest.xml:
Да и надо отключить в дельфи включение стандартного манифеста а то наверно конфликтовать будут, в 7ке для этого компонент манифеста удаляем если кинули на форму и удаляем его модуль из uses формы, а в более старших версиях просто отключаем галочку "Enable runtime themes" в секции Application настроек проекта |
| Автор: Tokagero 25.7.2010, 18:27 |
| Окей а где это впихнуть? Я краем глаза видел нечто подобное но не нашел куда это пихать |
| Автор: xkor 26.7.2010, 01:24 |
| Tokagero, я вроде написал что куда пихать... |