chore: 导入旧记忆备份供恢复
This commit is contained in:
+40
@@ -0,0 +1,40 @@
|
||||
---
|
||||
title: Checkpoint 2026-08-24 09:44:26 UTC [db6a638039]
|
||||
type: checkpoint
|
||||
permalink: main/projects/ea207d36-693c-4349-b3c8-7c40c8c889f5/checkpoint-2026-08-24-09-44-26-utc-db6a638039
|
||||
stable_id: 648be109-d91c-4f4d-a336-c2f04432c3e3
|
||||
scope: project
|
||||
memory_type: checkpoint
|
||||
project_id: ea207d36-693c-4349-b3c8-7c40c8c889f5
|
||||
usage_profile_id: 7aee455b-24cc-4008-bdaf-443721e6f939
|
||||
status: active
|
||||
revision: 1
|
||||
request_id: winunlock-cpus-logon-fix-20260825
|
||||
created_at: '2026-08-24T09:44:26.393747+00:00'
|
||||
updated_at: '2026-08-24T09:44:26.393747+00:00'
|
||||
tags:
|
||||
- bugfix
|
||||
- vm-test
|
||||
- credential-provider
|
||||
---
|
||||
|
||||
# 修复锁屏 LogonUI 场景兼容性(2026-08-25)
|
||||
|
||||
## 根因
|
||||
VM 日志显示 `SetUsageScenario` 收到场景值 1(CPUS_LOGON),而旧代码只接受值 2(CPUS_UNLOCK_WORKSTATION),返回 E_NOTIMPL。因此 LogonUI 不调用 Advise,命名管道没有创建,client 31 次重试全部失败。手动解锁正常,说明账户密码本身无误。
|
||||
|
||||
## 修复
|
||||
- provider 现在同时接受 CPUS_UNLOCK_WORKSTATION 和 CPUS_LOGON,保存场景并记录兼容日志。
|
||||
- 改密/CredUI 等场景仍拒绝。
|
||||
- 未收到管道凭据时仍不请求自动登录,避免冷启动/普通登录抢占默认磁贴。
|
||||
- README 同步说明 Windows 版本差异。
|
||||
- 新增场景判定单元测试。
|
||||
|
||||
## 验证
|
||||
- `cargo test --release --target x86_64-pc-windows-msvc`:16 个测试通过(common 13、provider 2、其余 0)。
|
||||
- `cargo build --release --target x86_64-pc-windows-msvc`:成功,无警告。
|
||||
- `git diff --check`:通过。
|
||||
- 提交:`a0f5ff0 fix: 兼容锁屏 LogonUI 场景`。
|
||||
|
||||
## VM 下一步
|
||||
必须把新构建的 `provider.dll`、`client.exe`、`setup.exe`、`winunlock-admin.exe` 复制到 VM。推荐先在 VM 管理员终端运行 `winunlock-admin.exe uninstall`,重启 VM,再安装新产物;随后 setup 使用真实账户名(如 `.+Administrator` 的正确 PowerShell 字面量为 `'.\Administrator'` 或 `".\$env:USERNAME"`),把计划任务设为未来 2-3 分钟,Win+L 后检查 provider.log 是否出现 `Advise: 启动命名管道监听`。
|
||||
Reference in New Issue
Block a user