![]() |
Модераторы: Snowy, bartram, MetalFan, bems, Poseidon, Riply |
![]() ![]() ![]() |
|
lollollollol |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 287 Регистрация: 12.3.2013 Репутация: нет Всего: нет |
Добрый вечер. Не могу запустить на Win 7 не могу запустить программу от имени администратора.
Когда правой кнопкой нажимаете, есть Запуск от имени админа. Вот как запустить с админ правами программно? пока получилось лишь вызвать окно свойства, и эмуляцией нажатия клавишь, но это как-то криво. Перешарил все коды инета, у меня вообще ругается на runas, говорит что незнает такой команды. |
|||
|
||||
Poseidon |
|
||||
![]() Delphi developer ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 5273 Регистрация: 4.2.2005 Где: Гомель, Беларусь Репутация: 10 Всего: 133 |
Вот, изучай: Запуск приложения в Windows 7 с правами администратора -------------------- Если хочешь, что бы что-то работало - используй написанное, если хочешь что-то понять - пиши сам... |
||||
|
|||||
lollollollol |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 287 Регистрация: 12.3.2013 Репутация: нет Всего: нет |
Оно всегда пишет что неверный логн или пароль, я пытался так уже.
|
|||
|
||||
lollollollol |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 287 Регистрация: 12.3.2013 Репутация: нет Всего: нет |
shExecInfo^.lpVerb := 'runas';
Почему не раотает? runas не знакомая команда, а если заменить на open то открывает. но без прав |
|||
|
||||
lollollollol |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 287 Регистрация: 12.3.2013 Репутация: нет Всего: нет |
1326: resultstring:='wrong username or password';
непонимаю какое имя нужно этой функции! Уже всё перепробывал. |
|||
|
||||
Poseidon |
|
|||
![]() Delphi developer ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 5273 Регистрация: 4.2.2005 Где: Гомель, Беларусь Репутация: 10 Всего: 133 |
Ты издеваешься? Я же тебе дал направление где искать.
Скачивай unitIsAdmin.pas и добавляей его к проекту. Потом рисуй код:
Это сообщение отредактировал(а) Poseidon - 8.5.2013, 21:21 -------------------- Если хочешь, что бы что-то работало - используй написанное, если хочешь что-то понять - пиши сам... |
|||
|
||||
lollollollol |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 287 Регистрация: 12.3.2013 Репутация: нет Всего: нет |
lpVerb := 'runas';
я же сказал что комп ругается, не знает он такой команды. Если тут прописат open, запустит но без прав. А иначе на нессответствие ругается |
|||
|
||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: нет Всего: 329 |
runas это не команда
|
|||
|
||||
lollollollol |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 287 Регистрация: 12.3.2013 Репутация: нет Всего: нет |
Впринципе я уже с помощью манифеста сделал, но всё таки не пойму почему с runas не работает
|
|||
|
||||
Poseidon |
|
|||
![]() Delphi developer ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 5273 Регистрация: 4.2.2005 Где: Гомель, Беларусь Репутация: 10 Всего: 133 |
Скинь скрин этой "ругни"
-------------------- Если хочешь, что бы что-то работало - используй написанное, если хочешь что-то понять - пиши сам... |
|||
|
||||
Dik0n |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 153 Регистрация: 11.5.2011 Репутация: 1 Всего: 10 |
100% - рабочий код, в своем приложении использую.
Это сообщение отредактировал(а) Dik0n - 9.5.2013, 19:44 --------------------
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓ ◄◄◄ Сотри монеткой защитный слой |
|||
|
||||
Poseidon |
|
|||
![]() Delphi developer ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 5273 Регистрация: 4.2.2005 Где: Гомель, Беларусь Репутация: 10 Всего: 133 |
Dik0n, чем он принципиально отличается от того, что привел я? И хотелось бы увидеть использование этой функции, а конкретно обработку ситуации, когда пользователь сам выбирает в контекстном меню "Запуск от имени администратора".
-------------------- Если хочешь, что бы что-то работало - используй написанное, если хочешь что-то понять - пиши сам... |
|||
|
||||
northener |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1361 Регистрация: 2.9.2010 Репутация: нет Всего: 20 |
А какая разница чем он отличаеися Пусть сначала "ололо" ответит какую ошибку выдаёт его проект без манифеста. -------------------- Но только лошади летают вдохновенно. Иначе лошади разбились бы мгновенно! |
|||
|
||||
lollollollol |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 287 Регистрация: 12.3.2013 Репутация: нет Всего: нет |
Уважаемый northener, ололо здесть если и есть, то вы. Не стоит коверкать ники.
Poseidon, небыло возможности заскринить сразу так как на компе с которого писал нет делфи. Вот скрин. ![]() А если прописать open вместо runas, то нет этого сообщения, но и запуск без прав Dik0n, а твой код ошибки не выдаёт, но и не запускает. |
|||
|
||||
Poseidon |
|
|||
![]() Delphi developer ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 5273 Регистрация: 4.2.2005 Где: Гомель, Беларусь Репутация: 10 Всего: 133 |
lollollollol, пройдись отладчиком и покажи строчку, которая вызывает это сообщение.
-------------------- Если хочешь, что бы что-то работало - используй написанное, если хочешь что-то понять - пиши сам... |
|||
|
||||
Dik0n |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 153 Регистрация: 11.5.2011 Репутация: 1 Всего: 10 |
Что то мне кажется что расширение у файла не .ехе, в этом и проблема. Это сообщение отредактировал(а) Dik0n - 10.5.2013, 16:40 --------------------
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓ ◄◄◄ Сотри монеткой защитный слой |
|||
|
||||
lollollollol |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 287 Регистрация: 12.3.2013 Репутация: нет Всего: нет |
Да я сам себя запустить с правами пытаюсь, ParamStr(0) , расширение точно .exe.
Отладчиком пройтись не могу, у компа с делфи только в ПН буду, тогда и сделаю |
|||
|
||||
kami |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1806 Регистрация: 25.8.2007 Где: Санкт-Петербург Репутация: 15 Всего: 72 |
||||
|
||||
Poseidon |
|
|||
![]() Delphi developer ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 5273 Регистрация: 4.2.2005 Где: Гомель, Беларусь Репутация: 10 Всего: 133 |
lollollollol, покажи именно свой код. Потому как я искренне не понимаю людей, которым вылаживаешь кусок рабочего кода, они его коверкают и потом отписываются "не работает". Я это о твоем ParamStr(0). У меня в примере его нет. Да, я понимаю что это то же самое, что и мое Application.ExeName, но все же наличие чего-то, что не приводилось в примере, наводит на мысли о еще каких-нибудь "доработках".
-------------------- Если хочешь, что бы что-то работало - используй написанное, если хочешь что-то понять - пиши сам... |
|||
|
||||
lollollollol |
|
||||||||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 287 Регистрация: 12.3.2013 Репутация: нет Всего: нет |
Р.S. Application.ExeName = ParamStr(0) - Полный путь до запущеного файла Добавлено через 9 минут и 52 секунды Добрался до делфи. Для чстоты эксперемента вместо привычного ParamStr(0) использую Application.ExeName Ошибка на строке
Как я и ожидал. КОд не менял вообще за исключением
Если оставить как было, компилятор ругается
В Uses добавил только ShellAPI Это сообщение отредактировал(а) lollollollol - 11.5.2013, 08:45 |
||||||||
|
|||||||||
Dik0n |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 153 Регистрация: 11.5.2011 Репутация: 1 Всего: 10 |
Попробуй манифест добавь если его нет.
--------------------
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓ ◄◄◄ Сотри монеткой защитный слой |
|||
|
||||
lollollollol |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 287 Регистрация: 12.3.2013 Репутация: нет Всего: нет |
С манифестом, как я уже выше говорил, работает.
Я не могу понять почему программно не запускается |
|||
|
||||
Dik0n |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 153 Регистрация: 11.5.2011 Репутация: 1 Всего: 10 |
Я привел пример манифеста, без админ прав! После чего, перезапускаете себя уже с правами. --------------------
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓ ◄◄◄ Сотри монеткой защитный слой |
|||
|
||||
lollollollol |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 287 Регистрация: 12.3.2013 Репутация: нет Всего: нет |
Извиняюсь, невнимательность, вечером попробую
P.S. Что обозначают эти строки, почему именно эти знаечния задаются?
Это сообщение отредактировал(а) lollollollol - 12.5.2013, 07:51 |
|||
|
||||
lollollollol |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 287 Регистрация: 12.3.2013 Репутация: нет Всего: нет |
С манифестом тоже не работает запуск
|
|||
|
||||
Dik0n |
|
||||||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 153 Регистрация: 11.5.2011 Репутация: 1 Всего: 10 |
Это на Delphi 7 так было выставлено, главное здесь это
С моим примером кода ? --------------------
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓ ◄◄◄ Сотри монеткой защитный слой |
||||||
|
|||||||
lollollollol |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 287 Регистрация: 12.3.2013 Репутация: нет Всего: нет |
угу
А вот с таким манифестом
пытается под админом запустить. Но проблема в том что при запуске сразу запрос UAC, и если пользователь нажмёт НЕТ, приложение не запустится. Как можно запустить себя с правами администратора? |
|||
|
||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: нет Всего: 329 |
||||
|
||||
lollollollol |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 287 Регистрация: 12.3.2013 Репутация: нет Всего: нет |
Я хотел пр запуске, если нет прав администратора показать информационное сообщение, с информацией о том что программе необходимы права. И повторно выполнить запуск с правами.
Вариант с манифестом не позволяет это сделать. А запуск через runas не работает. |
|||
|
||||
Dik0n |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 153 Регистрация: 11.5.2011 Репутация: 1 Всего: 10 |
level="requireAdministrator" заменить на level="asInvoker"
Потом запускать через 'runas' но UAC все равно появится при перезапуске, для того он и разработан, иначе бы все трояны втихаря, перезапускали себя под админом. Это сообщение отредактировал(а) Dik0n - 12.5.2013, 21:12 --------------------
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓ ◄◄◄ Сотри монеткой защитный слой |
|||
|
||||
lollollollol |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 287 Регистрация: 12.3.2013 Репутация: нет Всего: нет |
Я не против UAC, мне главное чтобы runas работал. завтра попробую снова.
Хотя я уже пытался это сделать с Вашим манифестом. Там как раз level="asInvoker", но не работает. Это сообщение отредактировал(а) lollollollol - 12.5.2013, 21:14 |
|||
|
||||
Poseidon |
|
|||
![]() Delphi developer ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 5273 Регистрация: 4.2.2005 Где: Гомель, Беларусь Репутация: 10 Всего: 133 |
А как по-твоему, в чем вообще заключается функция UAC? Так, от нечего делать ее привязали? Это и есть ее работа. Если пользователь не хочет что бы твоя программа получала админ-права (нажимает "НЕТ", то UAC и не даст их твоей программе. -------------------- Если хочешь, что бы что-то работало - используй написанное, если хочешь что-то понять - пиши сам... |
|||
|
||||
lollollollol |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 287 Регистрация: 12.3.2013 Репутация: нет Всего: нет |
это само собой, но смысл в том, что я хочу перед этим НЕТ вывести информационное сообщение, где поясню зачем именно нужны амин права приложению.
Это сообщение отредактировал(а) lollollollol - 13.5.2013, 05:58 |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Delphi: WinAPI и системное программирование" | |
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, bartram, MetalFan, bems, Poseidon, Rrader, Riply. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Delphi: WinAPI и системное программирование | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |