You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Delphi FMX集成OnGuard遇TLbKey未声明标识符问题求助

解决OnGuard组件中TLbKey未声明的问题

问题原因

TLbKey 是LockBox2框架专属类型,并非LockBox3的类型,且该类型定义在LbTypes单元中,而非你当前引入的LbCipher单元。同时,同时安装LockBox2和LockBox3可能引发单元引用冲突,导致编译器无法识别该类型。

解决步骤

  • 移除LockBox3(若项目未用到):LockBox3对类型系统做了重构,与OnGuard的适配性远不如LockBox2,保留两者易引发冲突。
  • 在窗体单元的uses列表中添加LbTypes单元:这是TLbKey类型的定义所在单元。
  • 确认代码类型一致性:你的CKey常量定义完全符合TLbKey的固定字节数组要求,赋值逻辑无需修改。

调整后的uses示例:

uses
  System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
  FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs,
  OnGuard, LbCipher, LbTypes; // 添加LbTypes单元

额外注意事项

若必须保留LockBox3,需明确指定引用LockBox2的单元(部分LockBox2版本会将单元放在独立命名空间或文件夹下),避免编译器优先加载LockBox3的同名单元。

内容的提问来源于stack exchange,提问作者Adel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.04 16:24:55