2013-09-26 4 views
1

Итак, я потратил большую часть своего дневного времени на обработку Qt 4.8.5 MANIFESTUAC для VS2008. В конечном итоге я получил это исправление, избегая специальных (читайте: , разбитый) обработки в msvc_objectmodel.cpp. Я отправлю свое решение в качестве ответа, но я хотел бы знать, если кто-то еще сталкивался с этим раньше (и имеет лучшее решение).Невозможно установить MANIFESTUAC с Qt 4.8.5 и VS2008

Похожие: Qt (on Windows) setting privilege-level to "requireAdministrator"

ответ

5

Линии 1352-1371 в источнике оптимизировали синтаксический для MANIFESTUAC флага. Я не уверен, что они сделали неправильно, но если вы разрешите запуск этого кода, ничего не будет исправлено. Я заметил, что EnableUAC не был установлен вообще для случая уровня. Я экспериментировал с установкой флага самостоятельно, но безрезультатно.

Просто добавив дополнительное пространство для этой опции, вы можете пропустить сломанную обработку и добавить опцию в качестве дополнительного параметра. Уф!

Обход следующим образом:

QMAKE_LFLAGS += " /MANIFESTUAC:level=\'requireAdministrator\'" 

Там должен быть более элегантным решением, но это, кажется, работает в настоящее время.