chore: 导入旧记忆备份供恢复

This commit is contained in:
2026-09-23 22:38:40 +08:00
parent 5313fcee7a
commit 6a6a895eaf
638 changed files with 29816 additions and 1 deletions
@@ -0,0 +1,98 @@
---
title: WinUnLock 当前状态(截至 2026‑08‑20)
type: curated
permalink: main/projects/ea207d36-693c-4349-b3c8-7c40c8c889f5/curated/win-un-lock-当前状态截至-2026-08-20
stable_id: 8cf2657a-ec64-4715-88ab-281830560733
scope: project
project_id: ea207d36-693c-4349-b3c8-7c40c8c889f5
workspace_type: development
usage_profile_id: null
preference_context: development
document_type: current_state
revision: 4
source_memory_ids: []
source_checkpoint_ids:
- 037f0a1b-4e1a-464a-b90e-89760d92637b
- 648be109-d91c-4f4d-a336-c2f04432c3e3
source_file_ids: []
source_git_commit: null
source_git_commits: []
source_agent_sync_ids: []
model_connection: Sub2API
model_name: openai/gpt-oss-120b
source_count: 17
source_revisions:
memory:711881c1-544e-4195-9a1e-6439dbcd073a: '1'
memory:715e4eb8-48b7-4540-9a75-5be72eeb0c7e: '1'
memory:8d83fdf5-683a-41ce-94ed-da186cf32c71: '1'
memory:4163f161-0f27-476a-bf98-ba407de20919: '1'
memory:8db18267-0c12-4446-bfe8-f2f755752c09: '1'
memory:aafb5b5c-34b4-49fd-8aaf-e8933f7b424e: '1'
source_dispositions:
processed: 17
unchanged: 0
unsupported: 0
skipped: 0
cited_source_ids:
- curated_baseline:8cf2657a-ec64-4715-88ab-281830560733
- memory:8db18267-0c12-4446-bfe8-f2f755752c09
- memory:aafb5b5c-34b4-49fd-8aaf-e8933f7b424e
- memory:8d83fdf5-683a-41ce-94ed-da186cf32c71
- memory:4163f161-0f27-476a-bf98-ba407de20919
- memory:711881c1-544e-4195-9a1e-6439dbcd073a
- memory:715e4eb8-48b7-4540-9a75-5be72eeb0c7e
- curated_baseline:baa442ef-76f5-4390-a518-067156d17d3a
job_cited_source_ids:
- curated_baseline:8cf2657a-ec64-4715-88ab-281830560733
conflicts: []
supersedes: []
preferences: []
source_cursor: 103
source_hash: 4a64fd2a22cf52c37c2891c452140220e743d62d9ef477be0616d478b8794785
prompt_version: 2026-08-12.3
schema_version: '3'
curation_job_id: baa81064-94f7-44f6-b35a-2ea79347e1a8
created_at: '2026-08-20T02:26:16.121631+00:00'
updated_at: '2026-08-24T10:11:13.248874+00:00'
tags:
- development
- current_state
---
# WinUnLock 当前实现状态
## 基本信息
- **工作区路径**:`E:\code\WinUnLock`(Git 分支 `main`,HEAD `09662c8`,工作区干净)
- **安装方式**:Rust 编写的安装器 `winunlock-admin.exe`(已不再使用 PowerShell 脚本)
- **开发工具链**:`rustc 1.94.1`、`cargo 1.94.1`、`stable-x86_64-pc-windows-msvc`
## 构建产物
| 产物 | 大小 |
|------|------|
| `provider.dll` | 586 752 B |
| `client.exe` | 518 656 B |
| `setup.exe` | 647 680 B |
| `winunlock-admin.exe` | 279 552 B |
## 测试结果(2026‑08‑24)
- `cargo test --release --target x86_64-pc-windows-msvc`:全部 **14** 项测试通过(`common` 13、`provider` 1),0 失败。
- `cargo build --release --target x86_64-pc-windows-msvc`:构建成功。
- `winunlock-admin.exe --help` 与 `setup.exe --help` 均返回退出码 **0**,中文帮助信息正常显示。
## 关键验证要点(面向 VM 的端到端测试前复验)
1. **账户要求**:必须使用可手动解锁的本地文本密码,不能使用 PIN。推荐使用本地管理员账户。
2. **快照**:在安装 Credential Provider 前创建 VM 快照,以便失败后快速恢复。
3. **凭据文件**:`cred.bin` 必须在目标 VM 内由 `setup` 生成,禁止跨机器复制。
4. **安装/配置步骤**
- `winunlock-admin.exe install --unlock-time HH:MM`(管理员终端)
- `%PROGRAMDATA%\WinUnLock\bin\setup.exe --account ".\\用户名"`,交互输入密码生成 `cred.bin`。
- 锁屏(Win+L),约 3 分钟后观察自动解锁;成功后检查 `client.log` 与 `provider.log`。
5. **故障排查要点**
- 无 `provider.log` → DLL 未加载或未注册。
- `client.exe` 退出码 **10** → 命名管道不存在(通常是未锁屏的正常情况)。
- Provider 收到凭据但未提交 → 检查 `CredentialsChanged/GetCredentialCount` 链路。
- 提交后失败 → 检查账户格式、密码或认证包问题。
6. **卸载**:管理员运行 `winunlock-admin.exe uninstall`;如出现锁屏异常,可恢复 VM 快照或在安全模式/WinRE 删除对应 CLSID 注册项。
7. **ACL 注意**:安装器会收紧 `%PROGRAMDATA%\WinUnLock` 的 ACL,仅保留 `SYSTEM`/`Administrators`,后续 `setup` 必须在管理员终端执行。
*信息来源:`curated_baseline:8cf2657a-ec64-4715-88ab-281830560733`*