如果出现错误 1053,如何在 Windows 10 上重新启动远程桌面服务?

如果出现错误 1053,如何在 Windows 10 上重新启动远程桌面服务?

我一直有一个问题重启Windows 10 上的 Windows 远程桌面服务 - 特别是,当远程桌面服务尝试停止时,重启过程会挂起。

更具体地说:启动后,我可以打开services.msc,然后右键单击那里的“远程桌面服务”,然后单击“重新启动” - 它(以及“远程桌面服务用户模式端口重定向器”)重新启动(意味着它停止,然后重新启动)。

然后,我与 Windows 10 计算机建立远程桌面会话,几个小时内一切都正常运行,然后无论出于何种原因,服务器都会断开我与会话的连接 - 并且之后无法通过远程桌面登录到 Windows 10 计算机。

在 Windows 10 计算机断开与我的 RDP 会话的连接后,我返回该计算机,尝试再次通过重新启动services.msc,然后右键单击那里的“远程桌面服务”,然后单击“重新启动” - 但是这次它挂在“停止”部分,最终(大约一分钟后)失败,并显示:

服务

Windows 无法在本地计算机上启动远程桌面服务。
错误 1053:该服务未及时响应启动或控制请求。

然后,无法重试“远程桌面服务”的“重新启动”,因为它显示为灰色,并且服务仍然停留在“停止”状态。

此时我该怎么做才能恢复“远程桌面服务”?

答案1

远程桌面会话崩溃后,Windows 10 RDP“主机”计算机在管理员命令提示符中显示以下内容:

C:\WINDOWS\system32>qwinsta
 SESSIONNAME       USERNAME                 ID  STATE   TYPE        DEVICE
 services                                    0  Disc
>console           user                      1  Active
 31c5fffffffff...                        65536  Listen
 7a78fffffffff...                        65537  Listen
 rdp-tcp                                 65538  Listen

我尝试过rwinsta重新启动这些,但没有效果:

C:\WINDOWS\system32>rwinsta 65536
If you reset this session, all users using this protocol will be logged off,
continue (n=no)? y
Could not reset session ID 65536, Error code 2
Error [2]:The system cannot find the file specified.

C:\WINDOWS\system32>rwinsta 65537
If you reset this session, all users using this protocol will be logged off,
continue (n=no)? y
Could not reset session ID 65537, Error code 2
Error [2]:The system cannot find the file specified.

C:\WINDOWS\system32>rwinsta 65538
If you reset this session, all users using this protocol will be logged off,
continue (n=no)? y

C:\WINDOWS\system32>qwinsta
 SESSIONNAME       USERNAME                 ID  STATE   TYPE        DEVICE
 services                                    0  Disc
>console           user                      1  Active
                                         65536  Down
                                         65537  Down
 rdp-tcp                                 65538  Listen

然后,尝试右键单击/“重新启动”远程桌面服务后,当停止过程卡住时,状态如下:

C:\WINDOWS\system32>qwinsta
 SESSIONNAME       USERNAME                 ID  STATE   TYPE        DEVICE
 services                                    0  Disc
>console           user                      1  Active

我还没有真正证实这一点,但我认为如果该rdp-tcp部件消失,那么您就无法建立远程桌面连接。

在管理员 PowerShell 中,这是可见的(通过以下方式找到https://green.cloud/docs/how-to-restart-remote-desktop-services-without-restarting-windows-server/):

PS C:\WINDOWS\system32> Restart-Service -Force -Name "TermService"
Restart-Service : Service 'Remote Desktop Services (TermService)' cannot be stopped due to the following error: Cannot
stop TermService service on computer '.'.
At line:1 char:1
+ Restart-Service -Force -Name "TermService"
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : CloseError: (System.ServiceProcess.ServiceController:ServiceController) [Restart-Service
   ], ServiceCommandException
    + FullyQualifiedErrorId : CouldNotStopService,Microsoft.PowerShell.Commands.RestartServiceCommand

在这里我使用了我在以下文章中找到的方法:

返回管理员命令提示符:

C:\WINDOWS\system32>sc query TermService

SERVICE_NAME: TermService
        TYPE               : 30  WIN32
        STATE              : 3  STOP_PENDING
                                (STOPPABLE, NOT_PAUSABLE, ACCEPTS_SHUTDOWN)
        WIN32_EXIT_CODE    : 0  (0x0)
        SERVICE_EXIT_CODE  : 0  (0x0)
        CHECKPOINT         : 0x1
        WAIT_HINT          : 0xea60

注意sc query没有给出 PID,所以使用sc queryex

C:\WINDOWS\system32>sc queryex TermService

SERVICE_NAME: TermService
        TYPE               : 30  WIN32
        STATE              : 3  STOP_PENDING
                                (STOPPABLE, NOT_PAUSABLE, ACCEPTS_SHUTDOWN)
        WIN32_EXIT_CODE    : 0  (0x0)
        SERVICE_EXIT_CODE  : 0  (0x0)
        CHECKPOINT         : 0x1
        WAIT_HINT          : 0xea60
        PID                : 17372
        FLAGS              :

明白了——PID 是 17372——因此只需终止这个任务即可:

C:\WINDOWS\system32>taskkill /PID 17372 /F
SUCCESS: The process with PID 17372 has been terminated.

...并再次检查服务状态:

C:\WINDOWS\system32>sc queryex TermService

SERVICE_NAME: TermService
        TYPE               : 30  WIN32
        STATE              : 4  RUNNING
                                (STOPPABLE, NOT_PAUSABLE, ACCEPTS_SHUTDOWN)
        WIN32_EXIT_CODE    : 0  (0x0)
        SERVICE_EXIT_CODE  : 0  (0x0)
        CHECKPOINT         : 0x0
        WAIT_HINT          : 0x0
        PID                : 11340
        FLAGS              :

C:\WINDOWS\system32>qwinsta
 SESSIONNAME       USERNAME                 ID  STATE   TYPE        DEVICE
 services                                    0  Disc
>console           user                      1  Active
 31c5fffffffff...                        65536  Listen
 7a78fffffffff...                        65537  Listen
 rdp-tcp                                 65538  Listen

确实,现在又有一个正在运行的服务,并且有一个新的 PID。

此时,我也可以右键单击/“重新启动”远程桌面服务services.msc- 然后它就可以再次正常工作。

相关内容