首页  / qmllocalstorageplugin.dll
qmllocalstorageplugin.dll
运行环境:windows10
更新时间:2026-08-26
软件分类:系统文件
软件大小:30 KB
软件语言:简体中文
软件类型:国产软件
软件授权:免费软件
软件版本:6.2.2.0
选择系统
windows10
选择版本
{{item.label}}
暂无版本
选择位数
64位
选择子版本
立即下载

qmllocalstorageplugin.dll:QML 本地存储的加载入口

一、模块定位与文件构成

qmllocalstorageplugin.dll 是 Qt 官方 QtQuick.LocalStorage 模块的 QML 插件动态库,通常位于 Qt 安装目录的 qml/QtQuick/LocalStorage/ 文件夹内,与 qmldir、plugins.qmltypes 等文件配套存在。在 Windows 平台上,它并非被程序直接链接的普通库,而是在 QQmlEngine 解析 import QtQuick.LocalStorage 语句时按需加载的扩展插件。

二、核心功能

  • QML 类型注册:插件入口派生自 QQmlExtensionPlugin,在 registerTypes() 中向 QML 类型系统注册 LocalStorage 单例,使 QML 文档可直接调用 LocalStorage.openDatabaseSync()。
  • SQLite 数据持久化:内部封装 SQLite 引擎,依据 identifier、version、description、estimatedSize 参数创建或打开数据库文件,默认落盘到 QStandardPaths::AppDataLocation 下的 OfflineStorage/Databases 目录。
  • 事务与查询抽象:把 Database、SQLTransaction、Statement 映射为 QML 可访问对象,提供 transaction()、executeSql()、rows.length 等同步接口。
  • 版本迁移与连接缓存:处理数据库版本号比对与升级回调,并缓存已打开的连接,避免重复打开引发文件锁冲突。
部署提示
该 DLL 必须与 qmldir、plugins.qmltypes 一同拷贝,缺一不可;同时其 32 位 / 64 位版本要与主程序及 Qt 库保持一致。

三、缺少该 DLL 可能带来的影响

  • 模块加载失败:QML 引擎抛出 module QtQuick.LocalStorage is not installed 或 plugin cannot be loaded,import 语句无法完成。
  • 对象不可用:openDatabaseSync 返回 undefined,后续 transaction、executeSql 调用触发 TypeError,业务逻辑中断。
  • 界面异常:若该 import 位于启动页或主 QML,程序可能白屏、闪退;若位于延迟加载页面,则切换到该页面时崩溃。
  • 数据功能失效:本地缓存、离线草稿、用户偏好、历史记录等依赖 LocalStorage 的能力全部不可用,且不会自动降级到其他存储方式。
  • 发布事故:使用 windeployqt 打包时遗漏 qml 目录,或误删插件目录,会在目标机器上集中复现上述故障。

四、排查方向

设置环境变量 QML_IMPORT_TRACE=1 可打印插件实际搜索路径;检查 qmldir 中 plugin 声明与文件名是否一致;用 dumpbin /dependents 验证 Qt5Core、Qt5Qml、Qt5Sql 等依赖是否齐全;确认 qsqlite 驱动与插件版本匹配,避免驱动缺失导致的二次失败。