Инструмент обслуживания, поставляемый в комплекте с онлайн-установщиками для приложений Qt, предположительно может быть запущен без управления с флагом «--checkupdates», который возвращает информацию об обновлении, если она доступна (см. Qt Installer Framework: автоматическое обновление). К сожалению, я не могу заставить эту команду что-либо вернуть, даже если доступно известное обновление. Я могу запустить средство обслуживания из командной строки, и обновление будет видно, но попытка использовать флаг --checkupdates ничего не дает.
QProcess update;
update.setWorkingDirectory(QDir::currentPath());
update.start("maintenancetool --checkupdates");
// Wait until the maintenancetool is finished
update.waitForFinished();
// Read the output
QByteArray data = update.readAllStandardOutput();
Я могу заставить этот код открыть инструмент обслуживания, если уберу флаг --checkupdates, но данные всегда пусты, даже если есть обновление. Если я попытаюсь запустить процесс в командной строке, он также ничего не даст, поэтому я не думаю, что это проблема с кодом. Любые идеи? Похоже, что информации об этом не так много.