标题几乎解释了问题。我希望通过Senkeys.send
方法获得alt + space + n组合,如何做到这一点?到目前为止,我已经尝试了SendKeys.Send("% N");
,但它无效。
答案 0 :(得分:0)
空格键不是传统的修饰键,所以我相信你需要单独发送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#中:link。
答案 1 :(得分:0)
您正在使用的字符串应该可以使用。也许默认的日记钩子不适用于您尝试最小化的应用程序。您可以尝试使用app.config和SendInput使用备用方法(请参阅here)。
解决问题的更好方法是使用GetActiveWindow获取焦点窗口的句柄,然后调用ShowWindowAsync并传入ShowWindowCommand值为2。