Внешний исполняемый файл Delphi с правами администратора сведен к минимуму в Windows 8

У меня есть проблема, при которой всплывающее окно контроля учетных записей Windows (UAC) минимизируется при выполнении вспомогательной программы командной строки, которая запрашивает привилегии администратора в своем манифесте. Всплывающее окно UAC просто мигает желтым цветом на панели задач Windows, что вызывает путаницу в работе пользователя:

Минимизированный UAC

После нажатия на значок панели задач, предупреждение UAC показывает:

UAC Alert

В Windows 7 предупреждение UAC не свернуто, а отображается на переднем плане. Любые мысли о том, как это исправить в Windows 8?

Для справки, мое основное приложение запускается с правами пользователя и выполняет вспомогательную программу с ShellExecuteEx, Я устанавливаю ShellExecuteEx"s TShellExecuteInfo.nShow в SW_SHOW,

1 ответ

Решение

MSDN говорит: "... вы должны передать родительский HWND с ShellExecute .." и объясняет,

Механизм повышения UAC использует HWND как часть определения того, является ли высота фоновым или передним уровнем. Если приложение определено как фоновое приложение, высота отображается на панели задач как мигающая кнопка...

Обязательно предоставьте ручку окна переднего плана ShellExecuteEx,

Другие вопросы по тегам