Не могу получить доступ к Windows Input Simulator в моем проекте C # - PullRequest
1 голос
/ 08 мая 2019

После изучения того, как управлять другими приложениями с помощью имитации клавиатуры, многие люди предложили мне использовать «inputimulator» CodePlex

Я разархивировал папку и искал файл .dll для ссылки вмой проект C #, но я не смог найти файл inputimulator.dll.

Вот что у меня есть:

    using System;
    using System.Runtime.InteropServices;
    using System.Windows.Forms;
    using WindowsInput;

    public class WindowHandling
    {
        [DllImport("user32.dll")]
        public static extern IntPtr FindWindow(string lpClassName, string lpWindowName);

        [DllImport("user32.dll")]
        private static extern bool SetForegroundWindow(IntPtr hWnd);

    static void Main()
    {        
            InputSimulator.SimulateKeyDown(VirtualKeyCode.SHIFT);
    }
    }

И это сообщение об ошибке:

'InputSimulator' does not contain a definition for 'SimulateKeyDown'

The name 'VirtualKeyCode' does not exist in the current context

Как ссылаться InputSimulator?

1 Ответ

0 голосов
/ 08 мая 2019

Лучший способ внести такую ​​зависимость в ваш проект - это использовать NuGet

Install-Package InputSimulator -Version 1.0.4

. Вы также можете использовать опцию «Управление пакетами NuGet» из контекстного меню в файле проекта или решения.

NuGet загрузит пакет, разархивирует его и добавит DLL в ваш проект.Он также может сообщить вам, когда пакет обновляется.

Кроме того, указанная вами документация слишком далека.Вот пример.

Вам понадобится оператор using:

using WindowsInput;

А в вашем коде вам нужен экземпляр:

var inputSim = new InputSimulator();
inputSim.Keyboard.KeyDown(WindowsInput.Native.VirtualKeyCode.RETURN);
...