`
jdw
  • 浏览: 162391 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

SendKeys 类(键盘码)

阅读更多

使用 SendKeys 将键击和组合键击发送到活动应用程序。此类无法实例化。若要发送一个键击给某个类并立即继续程序流,请使用 Send若要等待键击启动的任何进程,请使用 SendWait

每个键都由一个或多个字符表示。若要指定单个键盘字符,请使用该字符本身。例如,要表示字母 A,请将字符串“A”传递给方法。要表示多个字符,请将各个附加字符追加到它之前的字符的后面。要表示字母 A、B 和 C,请将参数指定为“ABC”。

加号 (+)、插入符号 (^)、百分号 (%)、波形符 (~) 以及圆括号 () 对 SendKeys 具有特殊含义。要指定这些字符中的某个字符,请将其放在大括号 ({}) 内。例如,要指定加号,请使用“{+}”。要指定大括号字符,请使用“{{}”和“{}}”。中括号 ([ ]) 对 SendKeys 没有特殊含义,但必须将它们放在大括号内。在其他应用程序中,中括号具有特殊含义,此含义可能会在发生动态数据交换 (DDE) 时起重要作用。

警告说明警告

如果应用程序用于键盘各不相同的国际用途,则使用 Send 可能产生不可预知的结果,应避免使用它。

要指定在按键(如 Enter 或 Tab)时不显示的字符,以及表示操作而不表示字符的键,请使用下表中的代码。

代码

Backspace

{BACKSPACE}、{BS} 或 {BKSP}

Break

{BREAK}

Caps Lock

{CAPSLOCK}

Del 或 Delete

{DELETE} 或 {DEL}

向下键

{DOWN}

End

{END}

Enter

{ENTER} 或 ~

Esc

{ESC}

Help

{HELP}

Home

{HOME}

Ins 或 Insert

{INSERT} 或 {INS}

向左键

{LEFT}

Num Lock

{NUMLOCK}

Page Down

{PGDN}

Page Up

{PGUP}

Print Screen

{PRTSC}(保留供将来使用)

向右键

{RIGHT}

Scroll Lock

{SCROLLLOCK}

Tab

{TAB}

向上键

{UP}

F1

{F1}

F2

{F2}

F3

{F3}

F4

{F4}

F5

{F5}

F6

{F6}

F7

{F7}

F8

{F8}

F9

{F9}

F10

{F10}

F11

{F11}

F12

{F12}

F13

{F13}

F14

{F14}

F15

{F15}

F16

{F16}

数字键盘加号

{ADD}

数字键盘减号

{SUBTRACT}

数字键盘乘号

{MULTIPLY}

数字键盘除号

{DIVIDE}

要指定与 Shift、Ctrl 和 Alt 键的任意组合一起使用的键,请在这些键代码之前加上以下一段或多段代码。

代码

Shift

+

Ctrl

^

Alt

%

要指定在按一些键时应同时按住 Shift、Ctrl 和 Alt 键的任意组合,请将这些键的代码放在括号内。例如,要指定按 E 和 C 时同时按住 Shift 键,请使用“+(EC)”。要指定按 E 时应按住 Shift,之后按 C 时不按住 Shift,请使用“+EC”。

要指定重复键,请使用格式 {key number}。键和数字之间必须放一空格。例如,{LEFT 42} 表示按向左键 42 次;{h 10} 表示按 H 10 次。

说明说明

因为没有可用来激活另一个应用程序的托管方法,所以可以在当前应用程序中使用此类,或使用本机 Windows 方法(如 FindWindowSetForegroundWindow)来强制聚焦到其他应用程序上。

说明说明

已针对 .NET Framework 3.0 更新了 SendKeys 类,以便在 Windows Vista 中运行的应用程序中使用该类。Windows Vista 的增强安全性(称为用户帐户控制或 UAC)可以防止以前的实现按预期工作。

SendKeys 类易出现计时问题,某些开发人员必须解决这些问题。更新的实现仍易出现计时问题,但它略快,可能需要对解决方法进行更改。SendKeys 类尝试先使用以前的实现,如果失败,则使用新实现。因此,���不同的操作系统上,SendKeys 类的行为可能不同。此外,如果 SendKeys 类使用新实现,则将消息发送到另一进程时,SendWait 方法不会等待处理这些消息。

如果无论操作系统如何应用程序都依赖一致的行为,则通过在 app.config 文件中添加下列应用程序设置,可以强制 SendKeys 类使用新实现。

<appSettings>

<add key="SendKeys" value="SendInput"/>

</appSettings>

要强制 SendKeys 类使用以前的实现,请改用值 "JournalHook"

继承层次结构
分享到:
评论

相关推荐

    SendKeys模拟键盘输入实例源代码

    1. 引入System.Windows.Forms命名空间:这是使用SendKeys的前提,确保你能访问到该类库。 ```csharp using System.Windows.Forms; ``` 2. 调用SendKeys.Send方法:这个方法接收一个字符串参数,代表你要发送的键盘...

    VBS 中Sendkey 键盘对应的码表

    在Visual Basic Scripting Edition(VBS)中,通过使用`SendKeys`函数可以模拟键盘输入操作,这对于自动化脚本编写非常有用。为了更好地理解和应用`SendKeys`函数,我们需要掌握一组特定的键码表。下面将详细介绍...

    SendKeys-0.3.zip

    《Pywinauto中的SendKeys模块:自动化键盘与鼠标操作详解》 在IT行业中,自动化测试和自动化运维已经成为提升效率的重要手段。Pywinauto,一个强大的Python库,专为Windows应用程序提供自动化控制,其中的SendKeys...

    selenium SendKeys-0.3

    "selenium SendKeys-0.3"可能是一个特定的版本或者模块,专注于处理输入操作,如在网页表单中输入文本,这在自动化测试中非常常见,特别是涉及到文件上传的场景。 Selenium库中的`SendKeys`方法是模拟用户在网页...

    sendkeys.zip

    `sendkeys.zip`这个压缩包提供了一个使用Python实现键盘监听和发送键盘命令的示例,主要依赖于第三方库`pyhook3`。现在我们将详细探讨这个知识点。 `pyhook3`是Python中的一个库,它允许我们创建全局钩子来监听系统...

    VBS语言如:wshshell.sendkeys "{F5}" 'F5按钮

    `SendKeys`方法允许VBS脚本模拟用户对键盘的按键操作。`"{F5}"`在这里是特殊的键码,代表F5功能键。当你调用`wshshell.sendkeys "{F5}"`时,实际上是在模拟用户按下F5键。这对于自动化某些需要频繁按F5刷新的场景...

    模拟VB的SendKeys函数

    本文将详细介绍如何使用Visual Basic (VB) 编写一个函数来模拟`SendKeys`功能,该函数能够向当前活动窗口发送指定的文本字符串,模拟用户键盘输入。 #### 关键知识点 1. **Windows消息机制**:在Windows操作系统中...

    键盘扫描码(获取键盘的硬件扫描码)

    例如,在C#中,可以使用`SendKeys`类,而在Python中,可以借助`pynput`库来模拟键盘输入。这种方法在自动化脚本、游戏控制或其他需要模拟人手操作的场景中十分常见。 至于【虚拟键盘应用】,则是指在屏幕上显示一个...

    VBS利用SendKeys输入中文字符的方法

    Author:Trajon.BWL今天在网上随便闲逛,逛到一个帖子,这位迷茫的朋友想知道该怎么使用SendKeys的vbs方法来输入中文字符

    精彩编程与编程技巧-用SendKeys来捉屏...

    ### 使用SendKeys与键盘事件实现屏幕捕捉 #### 标题解析 标题提到“精彩编程与编程技巧-用SendKeys来捉屏”,暗示了本文将探讨一种利用`SendKeys`技术来实现屏幕捕捉的方法。通常情况下,`SendKeys`是Windows API...

    C#模拟键盘鼠标事件

    我们首先将焦点设置到 richtextbox 中,然后使用 for 循环来遍历从 65 到 90 的 ASCII 码,分别对应 A-Z 的字母,然后使用 SendKeys.Send() 方法来模拟输入这些字母。最后,我们使用 Flush() 方法来清空 SendKeys 的...

    VBS sendkeys 模拟击键操作 问题解决

    在VBScript中,`SendKeys` 函数是一个非常实用的功能,它允许我们模拟键盘输入,就像用户手动在键盘上按下这些键一样。这对于与应用程序交互,特别是那些没有提供API或接口的应用程序来说,是非常有用的。 在描述中...

    SendKeys clip.exe 发送中文的代码

    然而,`SendKeys`在处理中文字符时可能会遇到问题,因为它默认只能发送ASCII码,而中文字符属于Unicode编码。标题提到的“SendKeys clip.exe 发送中文”就是解决这个问题的一种方法,它利用了`clip.exe`这个命令行...

    C# 区分键盘和红外线扫描枪输入 模拟扫描枪

    C#可以使用`System.Windows.Forms.SendKeys`类来模拟键盘输入。以下是一个简单的例子,模拟输入一个条形码字符串: ```csharp private void SimulateScan(string barcode) { foreach (char c in barcode) { Send...

    键盘扫描码

    7. **编程示例**:在C#中,可以使用`SendKeys.SendWait`方法模拟按键,虽然它不直接处理扫描码,但可以配合其他方法间接实现。而在Python中,可以使用`pynput`库来控制键盘输入,它提供了获取和发送扫描码的功能。 ...

    vbs SendKey 用法 Sendkey 键盘对应的码表

    `VBScript`中的`SendKeys`函数是一种强大的工具,它允许程序员模拟键盘操作,从而对应用程序进行自动化控制。这个函数可以用于发送各种按键指令到指定的Windows窗口,无论是简单的字母、数字,还是复杂的组合键或者...

    C# WPF 模拟键盘输入与UI控件进行交互

    接下来,你需要创建一个`INPUT`结构体实例,设置相应的键盘输入参数,如虚拟键码(VK)和扫描码(Scan),然后调用`SendInput`函数发送模拟的键盘事件。例如,模拟按下"A"键: ```csharp INPUT input = new INPUT()...

    开机自动启动小键盘的几种方法

    WshShell.SendKeys "{NUMLOCK}" ``` 将上述脚本保存为`.vbs`文件,执行该脚本即可自动启动小键盘。 #### Linux系统下的自动启动小键盘方法 在Linux系统中,可以通过编辑`rc.local`文件或使用`setleds`命令来实现小...

    C#模拟鼠标点击 键盘输入

    `SendKeys`类提供了一个简单的方法来发送键盘输入。它的工作原理是通过Windows消息队列模拟键盘输入。例如,以下代码将输入"A"字符: ```csharp using System.Windows.Forms; // 模拟输入"A" SendKeys.Send("A"); ...

Global site tag (gtag.js) - Google Analytics