草庐IT

c# - 如何在 C# 中设置系统范围内的热键

在AutoItv3有一个名为HotKeySet的函数。它设置一个热键,按下时调用用户函数。这是一个系统范围的热键,这意味着设置热键后该键不能用于任何其他用途。基本上,我想捕获Esc或任何其他键,如$、`等,当用户在任何地方按下它时,即使在应用程序之外,它也应该让我知道。例如,我想在一个循环中执行HotKeySet({ESC}),当它完成时,程序会等待该键被按下。publicstaticvoidwork(){while(true){stringtask=null;lock(locker)if(tasks.Count>0){task=tasks.Dequeue();if(task==nul