Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Win Api
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.03.2014, 20:47   #1
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию Запуск с правами дминистратора и получение кода завершения программы

Доброго времени суток!

Есть некое самописное ПО, требующее прав. администратора, по завершению работы возвращает специфический код ответа.

В ПО уже включен манифест адм. прав.

Пробовал ShellExecuteEx:
Код:
var
  ExtApp: string;
  SEI: TShellExecuteInfo;
  aCode: DWORD;
begin
  ExtApp := '';
  ZeroMemory(@SEI, SizeOf(TShellExecuteInfo));
  SEI.cbSize := SizeOf(TShellExecuteInfo);
  SEI.lpFile := PChar(ExtApp);
  SEI.lpDirectory := PChar(ExtractFilePath(PluginsWeb));
  SEI.lpParameters := PChar('"' + '"');
  SEI.lpVerb := PChar('runas');
  SEI.fMask := SEE_MASK_DEFAULT;
  SEI.nShow := SW_HIDE;
  Result := ShellExecuteEx(@SEI);
  if Result then
  begin
    aCode := 777;
    WaitForSingleObject(SEI.hProcess, INFINITE);
    GetExitCodeProcess(SEI.hProcess, aCode);
  end;
  Result := (aCode = NO_ERROR);
end;
Запускается с адм. правами но код возврата всегда > 0, хотя это не так. Судя по результату, ПО записало куда надо значение, и вернуло код возврата = 0.

В качестве lpVerb был и open, итог тот же.


С CreateProcess ситуация сложнее:
ПО вообще не просит адм. прав при запуске(визуально никаких подтверждений), и как следствие не делает то, на что запрограммировано, но возвращает код возврата оО.

Не использовать адм. привилегии нельзя. Тупик.


Проблема решена. SEE_MASK_NOCLOSEPROCESS

Последний раз редактировалось Человек_Борща; 16.03.2014 в 21:13.
Человек_Борща вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Запуск приложения с правами Администратора tarakan1983 Общие вопросы Delphi 1 21.06.2013 21:24
Delphi7/C# Запуск программы с повышенными правами (Win7) Eminem Помощь студентам 4 22.04.2013 12:56
Запуск приложения с правами Администратора volod3000 Общие вопросы Delphi 13 25.04.2011 18:36
Запуск конкретной программы из кода и передача файла в нее almostdj Общие вопросы .NET 0 07.12.2010 17:37
запуск программы под правами администратора jihot Общие вопросы Delphi 2 06.12.2010 16:27