在光标位置插入文本

时间:2015-06-25 14:43:47

标签: c# vba

我需要在光标位置的变量中插入文本,无论它位于哪个窗口/程序中,因此每当C#或VBA(最好是C#)代码运行时,它只会从变量中写入该文本。

PD:即时通讯使用VoiceBot创建自定义脚本,C#默认脚本如下所示:

using System;
using System.Drawing;

public static class VoiceBotScript
{
public static void Run(IntPtr windowHandle)
{
    var myText = "This is a simple text";
    //how to add this text variable to cursor position? 
}
}

澄清: VoiceBot可以在语音命令上运行C#或Visual Basic脚本,在编写脚本后,它将由语音触发。 https://www.voicebot.net/我需要运行此脚本,例如在玩游戏并选择聊天时,向玩家发出关于X的警告。

1 个答案:

答案 0 :(得分:0)

您可以使用SendKeys模拟键盘并将键击发送到当前活动的应用程序。例如:

SendKeys.Send("+This is a simple text");

请注意,在模拟键盘时,需要显式调用 Shift 键(使用+字符,如示例所示)以获取大写字符。还有其他一些注意事项,包括你必须逃避的其他角色,所以不要简单地将此方法提供给用户提供的字符串而不先处理它。有关详细信息,请参阅the documentation