André Carlucci

Skeptic .net development

Controlando o mouse e teclado com MrWindows

Uma das primeiras coisas que comecei a fazer quando coloquei minhas mãos em uma câmera RealSense foi controlar o próprio Windows utilizando movimentos e gestos.

Para fazer isso, você precisa fazer chamadas para as APIs do Windows utilizando Platform Invocation Services (PInvoke), que nada mais é uma maneira de chamar código não gerenciado através de código gerenciado.

As principais dlls da API do Windows são:

Vamos ver um exemplo. Suponha que você queira setar a posição do ponteiro do mouse na tela. Esta função está na dll “user32.dll” e você acessa ela usando o código abaixo:

Para facilitar estes tipos de acesso, acabei criando um projeto open-source no github chamado MrWindows. Com ele, você não precisa se preocupar com o “p/invoke” e acessa a API desta forma:

É claro que você pode usar no seu projeto via NuGet:

Lembrando que pull-requests são muito bem-vindos!