12

有人可以帮我将以下 java 代码转换为 C#。

Robot robot = new Robot();
robot.keyPress(KeyEvent.VK_WINDOWS);
robot.keyPress(KeyEvent.VK_M);
robot.keyRelease(KeyEvent.VK_WINDOWS);
robot.keyRelease(KeyEvent.VK_M);

我知道我们必须使用'user32.dll'。但我不确定我们必须调用哪些方法。

4

3 回答 3

8

如果您尝试模拟键盘按键,以下文章应该可以帮助您: http: //www.codeproject.com/Articles/28064/Global-Mouse-and-Keyboard-Library

它有例子,所以它不应该太难理解。

于 2012-07-10T09:14:38.447 回答
2

InputSimulator 是 C# 中的绝佳选择 - NuGet 将其加载到项目中。

VS Studio 2019 中的工作示例:在身份验证弹出窗口中,将文本输入到具有焦点(光标)的用户名文本框中,浏览器 dev-tools/inspect 元素未检测到该焦点以使用 selenium 进行自动化:

InputSimulator sim = new InputSimulator(); 
// enter username: QAUser01 
sim.Keyboard.TextEntry("QAUser01"); 
// press Tab key 
sim.Keyboard.KeyPress(VirtualKeyCode.TAB); 
// Enter Password 
sim.Keyboard.TextEntry("acb@123"); 
// submit enter 
sim.Keyboard.KeyPress(VirtualKeyCode.RETURN);

更多可以参考这里:C#等价于Java Robot类

谢谢

于 2021-03-12T07:58:50.150 回答
0

JAVA Robot 类专为自动化测试而设计,在 HAL 层(硬件抽象层)或以下运行。简单地以编程方式生成键和鼠标移动与将键放入硬件键盘缓冲区或硬件鼠标电路不同。

于 2015-07-06T17:51:33.553 回答