Модераторы: Snowy, bartram, MetalFan, bems, Poseidon, Riply
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Запуск от имени администратора 
:(
    Опции темы
Tokagero
Дата 25.7.2010, 06:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 112
Регистрация: 25.10.2006

Репутация: нет
Всего: нет



Доброго времени суток, интересует следующий вопрос:
Как сделать автоматический запуск программы от имени администратора?
В WinXP все было нормально, не так давно перешел на 7 и ознакомился с новыми приколами...
Так вот нужно чтоб программа при старте запускалась от администратора (можно даже со стандартным окошком безопасности)
Так как иначе не получается создать файл на диске. Или нет доступа.

Нашел кучу старых исходников на тему "запуск чужого приложения от имени администратора" со всякими вводами паролей и т.д,
но нужно всего навсего в программе сделать такое требование по умолчанию. Можно? И пойдет ли Delphi 7 для этого? Ведь тогда небыло
Win7 вообще
PM MAIL   Вверх
xkor
Дата 25.7.2010, 13:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 51
Регистрация: 8.1.2007
Где: Питер

Репутация: нет
Всего: 4



начиная с висты для того чтобы программа запускалась с правами администратора при включенном UAC надо чтобы в манифесте программы присутствовало:
Код

  <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
    <security>
      <requestedPrivileges>
        <requestedExecutionLevel
          level="requireAdministrator"
          uiAccess="false"/>
      </requestedPrivileges>
    </security>
  </trustInfo>

тогда при запуске программы винда покажет окно безопасности с вопросов выдавать ли программе права, но вот если UAC отключен то не уверен что права при этом будут получены...
для того чтобы запихнуть в программу манифест можно включить в проект файл "manifest_add.rc" (имя любое, главное расширение rc) со следующим содержанием: "1 24 manifest.xml" (без кавычек)
ну а сам манифест соответственно должен быть в manifest.xml:
Код

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
  <assemblyIdentity
    type="win32"
    name="DelphiApplication"
    version="1.0.0.0"
    processorArchitecture="*"/>
  <dependency>
    <dependentAssembly>
      <assemblyIdentity
        type="win32"
        name="Microsoft.Windows.Common-Controls"
        version="6.0.0.0"
        publicKeyToken="6595b64144ccf1df"
        language="*"
        processorArchitecture="*"/>
    </dependentAssembly>
  </dependency>
  <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
    <security>
      <requestedPrivileges>
        <requestedExecutionLevel
          level="requireAdministrator"
          uiAccess="false"/>
      </requestedPrivileges>
    </security>
  </trustInfo>
</assembly>

Да и надо отключить в дельфи включение стандартного манифеста а то наверно конфликтовать будут, в 7ке для этого компонент манифеста удаляем если кинули на форму и удаляем его модуль из uses формы, а в более старших версиях просто отключаем галочку "Enable runtime themes" в секции Application настроек проекта
PM MAIL WWW ICQ Skype GTalk Jabber   Вверх
Tokagero
Дата 25.7.2010, 18:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 112
Регистрация: 25.10.2006

Репутация: нет
Всего: нет



Окей а где это впихнуть? Я краем глаза видел нечто подобное но не нашел куда это пихать
PM MAIL   Вверх
xkor
Дата 26.7.2010, 01:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 51
Регистрация: 8.1.2007
Где: Питер

Репутация: нет
Всего: 4



Tokagero, я вроде написал что куда пихать...
PM MAIL WWW ICQ Skype GTalk Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: WinAPI и системное программирование"
Snowybartram
MetalFanbems
PoseidonRrader
Riply

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Delphi обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • 99% ответов по WinAPI можно найти в MSDN Library, оставшиеся 1% здесь

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, bartram, MetalFan, bems, Poseidon, Rrader, Riply.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: WinAPI и системное программирование | Следующая тема »


 




[ Время генерации скрипта: 0.0706 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.