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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> UAC, Запустить прогу от админа 
:(
    Опции темы
Racer
Дата 13.8.2010, 20:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Добрый вечер. Помогите пожалуйста в моем вопросе. У меня есть программа. ее необходимо иногда обновлять. для этого есть  2ой ехе который качает  и заменяет файлы. НО на висте и 7 папка Програм Файлс защищена и вносить туда просто  так изменения нельяз. Если запущу от имена админа- то  все хорошо. вопрос: как заставить  программц запускаться от  имени админа. лазию по инету 2 день, не могу решить  проблему. пробовал манифест - не выходит. Очень надо, помогите пожалуйста.
PM MAIL   Вверх
CodeMonkey
Дата 13.8.2010, 22:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1839
Регистрация: 24.6.2008
Где: Россия, Тверь

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



Ваш установщик, который ставит программу, будет работать от админа. Так вот он должен добавить вашу обновлялку в планировщик заданий для периодического запуска из под админа.


--------------------
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы.
PM MAIL WWW ICQ Skype GTalk Jabber   Вверх
Racer
Дата 13.8.2010, 23:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Как это  сделать, я собирал все InnoSetup ом?
PM MAIL   Вверх
Racer
Дата 13.8.2010, 23:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



И еще. Планировщик заданий может быть  выключен. Надо  что  другое, конкретно вызвать  это  окно UAC на повышение прав.
У Jedi есть  такое. там спец аналог шелекезкют. но я не смог сделать, т.к. не вышло поставить все о  него на delphi 2010.

Помогите пожалуйста, горю
PM MAIL   Вверх
CodeMonkey
Дата 14.8.2010, 05:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1839
Регистрация: 24.6.2008
Где: Россия, Тверь

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



Цитата(Racer @  14.8.2010,  00:03 Найти цитируемый пост)
Как это  сделать, я собирал все InnoSetup ом?


Я не знаю. InnoSetup позволяет запустить программу во время установки или там есть скриптовый язык какой-то? 

Проще всего создать задачу через командную строку, но не уверен, есть ли там все возможности. Метод посложнее - через API (под Delphi в JCL есть оболочка в JclTasks).

Цитата(Racer @  14.8.2010,  00:47 Найти цитируемый пост)
Планировщик заданий может быть  выключен


Это в Висте-то и выше? Ну тогда с таким же успехом могут отключить и вашу индивидуальную обновлялку.

Цитата(Racer @  14.8.2010,  00:47 Найти цитируемый пост)
Надо  что  другое, конкретно вызвать  это  окно UAC на повышение прав.


Т.е. вас устроит всплывающее окошко каждый раз, когда ваша программа решит обновиться? Я-то вам пытаюсь предложить способ без окошка.

Цитата(Racer @  14.8.2010,  00:47 Найти цитируемый пост)
У Jedi есть  такое. там спец аналог шелекезкют. но я не смог сделать, т.к. не вышло поставить все о  него на delphi 2010.


Ещё раз и по-русски.


--------------------
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы.
PM MAIL WWW ICQ Skype GTalk Jabber   Вверх
Racer
Дата 14.8.2010, 09:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Я уже разобрался. а вообще то  каждый раз окошка не будет. для этого у меня специальный алгоритм. сама программа проверяет апедйт. если есть, то  выдает мессагу на перегруз проги. она выключается и запускает апдейтер. он с правами админа. все заменяет и опять  запускает прогу. 
PM MAIL   Вверх
Akella
Дата 14.8.2010, 16:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

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



Цитата(Racer @  13.8.2010,  23:03 Найти цитируемый пост)
Как это  сделать, я собирал все InnoSetup ом? 

А разве при запуске дистрибутива, сделанного тобой, винда не предлагает запустить его с правами админа?
Кстати, в настройках ISTool есть переключатель, типа "Требуются права администратора".
PM MAIL   Вверх
drkot
Дата 24.8.2010, 00:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ищущий
***


Профиль
Группа: Завсегдатай
Сообщений: 1042
Регистрация: 5.5.2006

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



Цитата(Racer @  14.8.2010,  09:13 Найти цитируемый пост)
меня специальный алгоритм

ох уж эти алгоритмы...

Цитата(CodeMonkey @  13.8.2010,  22:22 Найти цитируемый пост)
добавить вашу обновлялку в планировщик

планировщик не лучшее решение, если не худшее. 
- требует отдельный апдейтер
- крутится даже если программа не используется (что не всегда хорошо)
- для создания задания типа run as понадобится вводить пароль приего создании, что тоже не зер гуд


Цитата(Racer @  13.8.2010,  20:20 Найти цитируемый пост)
Програм Файлс защищена и вносить туда просто  так изменения нельяз

зя... но нужно хитряй пируэт проделать

А в целом тема очень интересна, тк решения пока на форуме НЕТ, да и в инете тоже не особо...


--------------------
Ошибка не становится истиной по причине широкого распространения,
как и Истина не становится Ошибкой из-за того, что никто её не видит.
PM   Вверх
CodeMonkey
Дата 24.8.2010, 00:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1839
Регистрация: 24.6.2008
Где: Россия, Тверь

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



Цитата(drkot @  24.8.2010,  01:24 Найти цитируемый пост)
планировщик не лучшее решение, если не худшее. 


Планировщик - отличное решение:

Цитата(drkot @  24.8.2010,  01:24 Найти цитируемый пост)
- требует отдельный апдейтер


Кто мешает запустить MyApp.exe /checkupdate?

Цитата(drkot @  24.8.2010,  01:24 Найти цитируемый пост)
- крутится даже если программа не используется (что не всегда хорошо)


Вы хотели сказать: "запускается раз в месяц и не грузит систему в остальное время"?

Цитата(drkot @  24.8.2010,  01:24 Найти цитируемый пост)
- для создания задания типа run as понадобится вводить пароль приего создании, что тоже не зер гуд


Какой пароль? Установщик программы создаёт задание в планировщике, чтобы он выполнял обновление от имени Local System. Хотите сказать, что у установщика может не быть админских прав? Ну так они тогда не нужны будут и для обновления - тогда и вопрос не стоит.



--------------------
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы.
PM MAIL WWW ICQ Skype GTalk Jabber   Вверх
drkot
Дата 24.8.2010, 02:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ищущий
***


Профиль
Группа: Завсегдатай
Сообщений: 1042
Регистрация: 5.5.2006

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



CodeMonkey, это уже религия... и спорить смысла нет.
но в жизни не все так радужно... и узать планировщик удобно краене редко (это имхо)
для нормальной работы системы обновления надо проверять раз в день, чтобы гарантированно обновиться сразу, тк программа может быть завязана на сервер либо другие звенья, а тянуть за собой совместимость не есть хорошее решение (ms именно за это и жалуют, хотя и пользуют).

например я не встречал программ которые так делают...
+ меня раздражает когда какаято га...сь прописалась кудато там и вдруг (спустя месяц а то и больше после того как я ее запускал) кудато там лезет...
вот если она мне понадобится когда нибудь, тогда и проверим обновление если надо... а может меня и старая версия устраивает... или это способ напомнить мне что я вовремя не снес надоедливую программу?


Другое дело это обновление в корпоративных сетях. Где нужно делать все массово и тихо, чтоб админ по этажам не бегал и юзверей не дергал...
юзверь запустил арм, он тут же подтялул обновление и порядок (тоесть по необходимости), а не тогда когда планировщик решит... может к тому времени на сервере приложений уже новый набор комманд будет... тогда юзеру обломинся, а админ совершит пробежку в лучшем случае на соседний этаж в худшем на другой конец города. А когда вернется с пониманием причин происходящего не постесняется изложить все мысли, которые пришли в его светлую голову в пробках, уважаемым програмерам; при этом не навязчиво стараясь узнать кто же все таки придумал такуюсистему обновления, чтобы выразить глубокое уважение и отрубить этому резвому бойцу доступ к корпоративной порнухе...
много букв... много слов, но все та же религия...
нет универсальных решений. под каждую задачу свое решение.

Добавлено через 3 минуты и 57 секунд
к стати, пароль все же нужен...
причем его нужно именно указать, и не достаточно находится под админской учеткой...
или Вы занаете другой способ?


--------------------
Ошибка не становится истиной по причине широкого распространения,
как и Истина не становится Ошибкой из-за того, что никто её не видит.
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

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

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

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


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

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


 




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


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

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