C# Sendkeys.send alt+;空间+;n组合

C# Sendkeys.send alt+;空间+;n组合,c#,.net,keyboard-shortcuts,combinations,sendkeys,C#,.net,Keyboard Shortcuts,Combinations,Sendkeys,这个标题很好地解释了这个问题。我想通过Senkeys.sendmethod来sen alt+space+n组合,如何实现?到目前为止,我已经尝试了SendKeys.Send(“%N”)但它不起作用。空格键不是传统的修改键,因此我相信您需要分别发送keyUp和keyDown事件 我对C#sendkeys不太熟悉,因为我使用AutoIt库来实现这类功能,使用AutoIt命令可能类似于: private void pressAltSpaceN() { AutoItX3Declarations.A

这个标题很好地解释了这个问题。我想通过
Senkeys.send
method来sen alt+space+n组合,如何实现?到目前为止,我已经尝试了
SendKeys.Send(“%N”)
但它不起作用。

空格键不是传统的修改键,因此我相信您需要分别发送keyUp和keyDown事件

我对C#sendkeys不太熟悉,因为我使用AutoIt库来实现这类功能,使用AutoIt命令可能类似于:

private void pressAltSpaceN()
{
   AutoItX3Declarations.AU3_Send("{alt down}", 0);
   AutoItX3Declarations.AU3_Send("{space down}", 0);
   AutoItX3Declarations.AU3_Send("{n down}", 0);
   AutoItX3Declarations.AU3_Send("{n up}", 0);
   AutoItX3Declarations.AU3_Send("{space up}", 0);
   AutoItX3Declarations.AU3_Send("{alt up}", 0);
}

希望其他人可以告诉你如何使用SendKeys发送keyUp和keyDown事件,否则你可以通过回答以下问题来学习如何将AutoIt集成到C中:。

你使用的字符串应该可以工作。也许默认日志钩子不适用于您试图最小化的应用程序。您可以尝试使用app.config和SendInput使用替代方法(请参阅)


解决此问题的更好方法是使用获取聚焦窗口的句柄,然后调用并传入值2。

是否尝试添加键触发器?我按下按钮,然后发生了什么事?或者您正在尝试向操作系统发送密钥组合?我的字符串仅在没有N个SendKeys的情况下工作。send(“%”);我得到一个菜单,最小化,还原下来。。。选项。所以这不是应用程序的错误。@user2412672“%n”(或n)对我来说很好。当您实际键入Alt+Space时,焦点应用程序是否包含带下划线“n”的最小化选项?@user2412672 Try SendKeys.SendWait(“%”);SendKeys.SendWait(“n”);