如何防止在使用QWebEngineView时创建奇怪的文件夹?

时间:2016-06-12 13:39:34

标签: qt directory qtwebengine

我需要在我的应用程序中显示一些动态Web内容(让它成为应用程序帮助材料)。

我在那里使用Qt5.4和QWebView。但在切换到Qt5.6之后,我注意到了 QWebKit已被弃用且不再受支持。 因此,我决定将QWebKit功能替换为来自的QWebEngine功能 QWebView。用QWebEngineView替换tippen后 我调查了在启动我的应用程序后在用户文件夹中创建了一些空文件夹。例如:.QtWebEngineProcess文件夹和文件夹,在开头就像点我的应用程序一样调用。

这是正常的吗?如何防止创建此类文件夹?是否有禁用此类行为的选项?

1 个答案:

答案 0 :(得分:0)

QWebEngine需要此文件夹来存储一些临时文件:如cookie,缓存数据...有关详细信息,请参阅QWebEngineProfile(http://doc.qt.io/qt-5/qwebengineprofile.html#PersistentCookiesPolicy-enum)。您可以在某个地方选择默认文件夹:

QWebEngineProfile* defaultProfile = QWebEngineProfile::defaultProfile();
defaultProfile->setCachePath("your folder");
defaultProfile->setPersistentStoragePath("your folder");

或者您可以通过更改Cookie政策来禁用它:

QWebEngineProfile::defaultProfile()->setPersistentCookiesPolicy(QWebEngineProfile::NoPersistentCookies);

还有一件事,QWebEngine需要一些包含翻译文件,资源的文件夹......应该附带你的exe文件才能正常工作。您可以在exe文件夹中的Qt终端(Windows中的示例)中执行:

windeployqt .

和Qt将复制您需要的所有文件。有关详细信息,请参阅http://doc.qt.io/qt-5/windows-deployment.html =)