Установка аргументов для QtWebEngineProcess - PullRequest
1 голос
/ 24 марта 2019

Я пишу приложение для запуска веб-приложения киоска с использованием QT, и у меня очень низкая производительность. Используя хром, я смог решить эту проблему, добавив некоторые аргументы командной строки (будучи --disable-gpu-blacklist одним из них).

Я полагаю, что эти аргументы могут быть переданы в QtWebEngineProcess, но я не могу найти способ сделать это, так как он автоматически запускается приложением Qt.

Итак, как я могу это сделать?

1 Ответ

1 голос
/ 24 марта 2019

Вы можете передать в качестве аргумента через командную строку:

your_app --ignore-gpu-blacklist

Или добавьте его в argc и argv:

#include <QApplication>
#include <QWebEngineView>

int main(int argc, char *argv[])
{
    // https://stackoverflow.com/a/43373070/6622587
    std::vector<char*> new_argv(argv, argv + argc);
    new_argv.push_back(const_cast<char *>("--ignore-gpu-blacklist"));
    new_argv.push_back(nullptr);
    argv = new_argv.data();
    argc = argc + 1;
    QApplication a(argc, argv);
    QWebEngineView w;
    w.load(QUrl("chrome://gpu"));
    w.show();
    return a.exec();
}
...