Você precisa definir que determinada tarefa deve ser executada no PC remoto quando terminar a sessão da Área de Trabalho Remota. Eu prefiro executar um arquivo de lote simples no computador remoto sob certas condições (veja abaixo). Este arquivo de lote usa a ferramenta de linha de comando 'klocks.exe':
klocks.exe -scroll +num -c
Esta linha apenas ativa o estado NUMLOCK (e desativa o estado SCROLL e CAPSLOCK). Infelizmente notei que o site de download original não está mais disponível ( link ), mas talvez você o encontre em algum lugar outro. Como uma ferramenta de linha de comando alternativa, você poderia usar a ferramenta numlock.exe ( link ), mas tenho certeza de que existe outra ferramentas de linha de comando como esta. Uma terceira possibilidade pode ser usar um pequeno script VBS para definir o estado NUMLOCK, mas eu não tentei ainda (consulte faq-o-matic.net ):
set WshShell = CreateObject("WScript.Shell")
WshShell.SendKeys "{NUMLOCK}"
Qualquer script que você escolher, ele será executado quando você 'terminar' a sessão RDP. Existem duas possibilidades para terminar uma sessão RDP:
- desconecte-se da sessão do usuário remoto apenas fechando a janela da área de trabalho remota
- encerre a sessão do usuário remoto efetuando logoff
Para uma simples "desconexão da sessão do usuário remoto", você deve usar o agendador de tarefas do Windows no PC remoto. Basta definir o gatilho "desconectar da sessão do usuário" e definir como uma ação o script "NUMLOCK-on".
Para 'fazer logoff' da sessão do usuário remoto, i. e. um término real da sessão, não é fácil usar o agendador de tarefas porque não existe um gatilho predefinido para 'logoff'. Em vez disso, você deve usar o editor de política de grupo local para definir um script de logoff (na configuração do usuário > Configurações do Windows > Scripts > logoff).
BTW Para ter certeza de que NUMLOCK sempre será ativado no computador remoto quando um usuário remoto estiver efetuando login (ou seja, não apenas inserindo uma sessão existente), há várias possibilidades:
- use o editor de política de grupo local para definir um script de logon
- use o agendador de tarefas para definir uma tarefa com o acionador 'logon'
- defina o valor do Registro InitialKeyboardIndicators como 2 (HKCU \ Control Panel \ Keyboard, consulte link )
- use as diferentes possibilidades de execução automática no registro