C#SendKeys.Send

mil*_*lot 5 c# sendkeys

我正在使用C#SendKeys.Send方法运行一个问题.我试图用其他键替换键盘键,例如当我在键盘上按"a"时,我希望该键为"s",例如,当我在我的代码中执行此操作时:

if ((Keys)keyCode== Keys.A)
{                    
    SendKeys.Send("s");                    

}
Run Code Online (Sandbox Code Playgroud)

现在,我得到的只有"山"字在我的记事本印刷,但不是印刷"SA"我需要在这种情况下,只得到"S"字符,因为当我按下"是"我的键盘上,"一个"必须被替换与"s".

我尝试通过添加以下行删除最后一个字符:

SendKeys.Send("{BS}");
Run Code Online (Sandbox Code Playgroud)

但我得到的只是"s"字符被移除,而"a"字符就在那里.

我怎样才能防止这种情况发生?

mil*_*lot 0

我通过注册全局热键解决了这个问题。谢谢。 是我用来解决问题的资源。