diff --git a/docs/FAQ.md b/docs/FAQ.md
index 3c01bdd6..b3fbd72e 100644
--- a/docs/FAQ.md
+++ b/docs/FAQ.md
@@ -36,6 +36,8 @@ Wayland 画面捕获依赖启用了 Wayland 支持的构建、宿主系统 PipeW
若电脑键盘可用,而搜狗等系统输入法不可用,请确认被控端已安装包含文本转发修复的新 Windows 构建,并一并更新客户端、服务与会话辅助程序。旧版的按键转发与输入法文本转发是不同通道,仅更新手机端不会修复旧 Windows 的文本通道。本次修复转发完整文本,保留大小写、符号、空格及中文等字符,不限于数字密码;仍需在更新后的 Windows 锁屏、登录界面验证。
+若日志出现 `Secure desktop text injection failed: error=unknown_command`,说明文本已到达 Windows 客户端,但服务或会话辅助程序不支持该指令。直接运行重新编译的 `CrossDesk.exe` 不会将已注册的服务切换到新构建目录;旧服务也可能导致解锁后的记事本无法接收文本。请按[开发构建的服务更新步骤](USER_GUIDE.md#windows-service-development-update),从完整的新构建目录重新注册并启动服务后再测试。
+
## 移动端连接后没有进入隐私屏
Android、iOS 和鸿蒙原生移动端可直接点击悬浮菜单的隐私屏按钮切换,按钮按电脑确认的状态显示“隐私屏已开启”或“隐私屏已关闭”,开启与关闭使用相同配色,无需进入详情页;开启时与桌面端一致屏蔽电脑本地键鼠,不提供独立屏蔽选项。自动开启还需要电脑勾选“被连接时开启隐私屏”,且电脑当前桌面支持遮罩;锁屏、登录界面或无人值守被控端不提供隐私遮罩。
diff --git a/docs/USER_GUIDE.md b/docs/USER_GUIDE.md
index 11ee4e2a..6ba48693 100644
--- a/docs/USER_GUIDE.md
+++ b/docs/USER_GUIDE.md
@@ -239,6 +239,26 @@ CrossDesk 已支持鸿蒙 PC、手机和平板,PC 与移动端分别构建 HAP
Windows 的“开机自启”在当前用户登录后启动客户端。安装版使用以最高权限运行的登录计划任务,后续登录无需再次确认 UAC;便携版和 Debug 构建使用当前用户的普通启动项。升级安装版或手动启动新版时,会自动迁移指向该程序的旧启动项。关闭自启会删除相应注册。登录前远控需要另外启用下面的无人值守模式。
+
+
+### 使用开发构建更新服务
+
+直接运行新编译的客户端只会尝试启动已经注册的服务,不会修改服务的程序路径,也不会重启正在运行的旧服务。若电脑键盘可用,但系统输入法在记事本与锁屏中均不可用,且日志显示 `Secure desktop text injection failed: error=unknown_command`,请先更新服务程序及其注册路径。
+
+在包含新版 `CrossDesk.exe`、`crossdesk_service.exe` 和 `crossdesk_session_helper.exe` 的完整构建目录中打开**管理员 PowerShell**,执行:
+
+```powershell
+$crossdeskExe = (Resolve-Path .\CrossDesk.exe).Path;
+foreach ($serviceAction in '--service-stop', '--service-install', '--service-start') {
+ $serviceProcess = Start-Process -FilePath $crossdeskExe -ArgumentList $serviceAction -Wait -PassThru;
+ if ($serviceProcess.ExitCode -ne 0) {
+ throw "$serviceAction failed: $($serviceProcess.ExitCode)"
+ }
+}
+```
+
+服务重启期间远控可能短暂中断。完成后重新连接,分别测试普通桌面和锁屏输入。服务将使用该构建目录中的程序,请保留该目录;恢复使用安装版时,重新安装完整安装包以恢复对应的服务注册。
+
### 开机后尚未登录时远控
安装版支持独立的无人值守被控端。在完整安装目录中打开**管理员 PowerShell**,一次性启用:
diff --git a/docs/USER_GUIDE_EN.md b/docs/USER_GUIDE_EN.md
index 79b9aedf..1d3f63ff 100644
--- a/docs/USER_GUIDE_EN.md
+++ b/docs/USER_GUIDE_EN.md
@@ -239,6 +239,26 @@ The installer registers an on-demand service by default. CrossDesk tries to star
On Windows, **Auto Start** launches the client after the current user signs in. Installed release builds use a logon scheduled task with highest privileges, so subsequent logons need no UAC confirmation; portable and Debug builds use a normal per-user startup entry. Upgrading the installed build or launching the new version manually migrates a legacy startup entry pointing to that executable. Turning Auto Start off removes its registration. Remote access before sign-in requires the separate unattended mode below.
+
+
+### Updating the service for a development build
+
+Launching a newly compiled client only tries to start the registered service. It does not change the service executable path or restart an older running service. If the computer keyboard works but the system IME fails in both Notepad and the lock screen, and the log contains `Secure desktop text injection failed: error=unknown_command`, update the service binaries and registration first.
+
+Open an **administrator PowerShell** in the complete new build directory containing `CrossDesk.exe`, `crossdesk_service.exe` and `crossdesk_session_helper.exe`, then run:
+
+```powershell
+$crossdeskExe = (Resolve-Path .\CrossDesk.exe).Path;
+foreach ($serviceAction in '--service-stop', '--service-install', '--service-start') {
+ $serviceProcess = Start-Process -FilePath $crossdeskExe -ArgumentList $serviceAction -Wait -PassThru;
+ if ($serviceProcess.ExitCode -ne 0) {
+ throw "$serviceAction failed: $($serviceProcess.ExitCode)"
+ }
+}
+```
+
+Remote control may briefly disconnect while the service restarts. Reconnect and test text input on both the ordinary desktop and lock screen. Keep this build directory in place because the service now uses its binaries. Reinstall the complete installer package to return to the installed release's service registration.
+
### Remote access before Windows sign-in
The installed release supports a separate unattended host. Open an **administrator PowerShell** in the complete installation directory and enable it once: