无法在我的C#项目中访问Windows输入模拟器

时间:2019-05-08 19:07:45

标签: c# dll window dllimport inputsimulator

研究了如何通过模拟键盘来控制其他应用程序后,许多人建议我使用“ inputsimulator” CodePlex

我解压缩了文件夹,并在我的C#项目中寻找要引用的.dll文件,但是找不到inputsimulator.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 :(得分:0)

将这种依赖关系引入项目的最佳方法是使用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);