mirror of
https://github.com/qTox/qTox.git
synced 2024-03-22 14:00:36 +08:00
parent
7c63594adf
commit
0a2e96ab07
|
@ -492,11 +492,14 @@ void AutoUpdater::installLocalUpdate()
|
|||
// Workaround QTBUG-7645
|
||||
// QProcess fails silently when elevation is required instead of showing a UAC prompt on Win7/Vista
|
||||
#ifdef Q_OS_WIN
|
||||
HINSTANCE result = ::ShellExecuteW(0, L"open", updaterBin.toStdWString().c_str(), 0, 0, SW_SHOWNORMAL);
|
||||
QString modulePath = qApp->applicationDirPath().replace('/', '\\');
|
||||
HINSTANCE result = ::ShellExecuteW(0, L"open", updaterBin.toStdWString().c_str(),
|
||||
0, modulePath.toStdWString().c_str(), SW_SHOWNORMAL);
|
||||
if (result == (HINSTANCE)SE_ERR_ACCESSDENIED)
|
||||
{
|
||||
// Requesting elevation
|
||||
result = ::ShellExecuteW(0, L"runas", updaterBin.toStdWString().c_str(), 0, 0, SW_SHOWNORMAL);
|
||||
result = ::ShellExecuteW(0, L"runas", updaterBin.toStdWString().c_str(),
|
||||
0, modulePath.toStdWString().c_str(), SW_SHOWNORMAL);
|
||||
}
|
||||
if (result <= (HINSTANCE)32)
|
||||
failExit();
|
||||
|
|
Loading…
Reference in New Issue
Block a user