私は Qt Creator を使用しており、.exe
ファイルをデフォルトで管理者として実行するのに苦労しています。
.pro
オンラインですべてのソリューションを読んで、ファイルに次の行を入れようとしました:
QMAKE_LFLAGS += /MANIFESTUAC:"level='requireAdministrator' uiAccess='false'"
しかし、まだ.exe
(メモ帳を使用して)確認すると、次のものが含まれています。
<requestedExecutionLevel level="asInvoker" uiAccess="false"></requestedExecutionLevel>
誰かが教えてくれますか、追加する方法はrequireAdministrator
?
一時的な解決策:
今まで解決策が見つからなかったので、一時的なハックを行いました。.exe
次のコードを使用して「main.exe」を起動する「LaunchAnother.exe」という名前を作成しました。
SHELLEXECUTEINFO shExInfo = {0};
shExInfo.cbSize = sizeof(shExInfo);
shExInfo.fMask = SEE_MASK_NOCLOSEPROCESS;
shExInfo.hwnd = 0;
shExInfo.lpVerb = _T("runas"); // Operation to perform
shExInfo.lpFile = _T("main.exe"); // Application to start
shExInfo.lpParameters = ""; // Additional parameters
shExInfo.lpDirectory = 0;
shExInfo.nShow = SW_SHOW;
shExInfo.hInstApp = 0;
if (ShellExecuteEx(&shExInfo))
{
WaitForSingleObject(shExInfo.hProcess, INFINITE);
CloseHandle(shExInfo.hProcess);
}
より良い解決策をまだ待っています。