KeePass可以通过“触发器”实现自动保存,在KeePass 2.39版本之前,触发器中有一个“用户界面状态已更新(User interface state updated)”的事件,该事件在会在KeePass中的条目更新后触发,利用触发器的这个事件可以轻松实现自动保存。但自2.39版本开始弃用了“用户界面状态已更新”事件,官网给出了说明和替代方案 ,2.39版本以后,我们可以通过下面两种方式实现自动保存。
1、通过设置开启编辑后自动保存
在“工具”-“选项”-“高级”中勾选“在使用记录编辑对话框更改记录后自动保存”,勾选后,通过记录编辑对话框添加、更改的记录,会自动保存,而通过“KeePassHttp”插件等自动添加的记录不会自动保存,复制、删除记录也不会自动保存。显然,无法满足我们的需求。
2、通过触发器实现定时自动保存
打开“工具”-“触发器”,勾选“启用触发系统”,这里提供两种方法创建触发器,(方法1):直接导入,复制下方的“KeePass自动保存触发器配置代码”,点击触发器窗口下方的“工具”-“从剪贴板粘贴触发器”即可。(方法2):点击右侧的“添加”,按照下方设置四个标签:属性、事件、条件和动作。
属性标签:输入名称,如“auto-save”,其余保持默认。
事件标签:点击“添加”,“事件”选择“事件 - 周期性”,下方“间隔(s)”中输入时间(多少秒钟触发一次)如:30,勾选“在KeePass有动作时重置计时器”。
条件标签:点击“添加”,“条件”选择“数据库存在未保存的更改”,“数据库”选择“激活”。
动作标签:点击“添加”,“动作”选择“保存当前数据库”。
KeePass自动保存触发器配置代码 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 <?xml version="1.0" encoding="utf-8"?> <TriggerCollection xmlns:xsd ="http://www.w3.org/2001/XMLSchema" xmlns:xsi ="http://www.w3.org/2001/XMLSchema-instance" generator ="rmnof.com" > <Triggers > <Trigger > <Guid > jsCKhqd3Sk69D8ArhmtUjw==</Guid > <Name > auto-save</Name > <Events > <Event > <TypeGuid > bES7XfGLTA2IzmXm6a0pig==</TypeGuid > <Parameters > <Parameter > 30</Parameter > <Parameter > True</Parameter > </Parameters > </Event > </Events > <Conditions > <Condition > <TypeGuid > 08r67ygqRkqZkNhl/OAW7Q==</TypeGuid > <Parameters > <Parameter > 0</Parameter > </Parameters > <Negate > false</Negate > </Condition > </Conditions > <Actions > <Action > <TypeGuid > 9VdhS/hMQV2pE3o5zRDwvQ==</TypeGuid > <Parameters /> </Action > </Actions > </Trigger > </Triggers > </TriggerCollection >
参考