Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/128.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 设置QtWebEngineProcess的参数_C++_Qt_Qtwebengine - Fatal编程技术网

C++ 设置QtWebEngineProcess的参数

C++ 设置QtWebEngineProcess的参数,c++,qt,qtwebengine,C++,Qt,Qtwebengine,我正在编写一个应用程序,用QT启动一个kioskweb应用程序,但性能非常低。通过使用chromium,我可以通过添加一些命令行参数来解决这个问题(即--禁用gpu黑名单其中之一) 我相信这些参数可以传递给QtWebEngineProcess,但我找不到这样做的方法,因为它是由Qt应用程序自动启动的 那么,我该怎么做呢?阅读: 可以通过以下命令行作为参数传递: your_app --ignore-gpu-blacklist 或者将其添加到argc和argv: #include <QApp

我正在编写一个应用程序,用QT启动一个kioskweb应用程序,但性能非常低。通过使用chromium,我可以通过添加一些命令行参数来解决这个问题(即
--禁用gpu黑名单
其中之一)

我相信这些参数可以传递给QtWebEngineProcess,但我找不到这样做的方法,因为它是由Qt应用程序自动启动的

那么,我该怎么做呢?

阅读:

可以通过以下命令行作为参数传递:

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();
}

qputenv(“QTWEBENGINE_铬_标志”,“忽略gpu黑名单”);
质量保证申请a(argc、argv);

@JosuGoñi不是我的代码添加了更多参数,而是Qt在内部添加了参数。正如我在上面找到的,在运行应用程序之前,您还可以使用环境变量,即,
export QTWEBENGINE\u chromiu FLAGS=“--autoplay policy=无需用户手势”
QTWEBENGINE_CHROMIUM_FLAGS="--ignore-gpu-blacklist" ./your_app