Windows: Como bloqueio a área de trabalho (remota) do prompt de comando?

1

Título diz tudo.

O

explorer não está em execução, por isso não consigo pegar o comando de bloqueio no menu Iniciar.

shutdown.exe não parece ter nenhuma opção adequada para isso (shutdown -l is log off).

O Windows-L trabalharia na máquina local, mas seria capturado pela máquina local antes de ter a chance de passar pelo RDP para a máquina remota.

Deve ter uma tag windows-core, mas ela não existe.

    
por joshudson 22.10.2015 / 21:22

2 respostas

1

Não tendo recebido nenhuma resposta que a do art. Vandelay05, que é rundll32.exe user32.dll,LockWorkStation , o que é uma má ideia Jogando lixo na calçada: A triste história do programa rundll32 , cheguei à conclusão de que não há um bom caminho conhecido.

Por isso vou implantar este programa em C:

#include <windows.h>
DWORD CALLBACK RawEntryPoint(void) { return !LockWorkStation(); }

Um pequeno programa que precisa apenas de kernel32.dll e user32.dll.

    
por 23.10.2015 / 04:55
2

Execute a API do Win32 LockWorkStation função no prompt de comando:

rundll32.exe user32.dll,LockWorkStation

Fonte: Alterando o estado do computador na seção PowerShell do MSDN

Observe que isso não é oficialmente aceito porque LockWorkStation tem uma assinatura diferente de as assinaturas de funções que rundll32.exe suporta , que leva à corrupção da pilha do processo .

Desde o Windows Vista, rundll32.exe contém um hack para conter corrupção de pilha razoavelmente pequena e recuperar dele . Ainda assim, isso não é licença livre para abusar de rundll32 . Tal abuso leva a hacks similares, que geralmente complicam as coisas e seriam desnecessários.

Use isso por sua conta e risco, ou melhor, nada disso.

    
por 22.10.2015 / 21:27