使用全局热键调用powershell函数

时间:2014-04-29 08:39:35

标签: powershell scripting hotkeys registerhotkey

我想通过触发我的脚本注册和取消注册的全局热键(组合Ctrl + Shift + F12)来使用我的Powershell脚本中的函数。我需要访问由我的脚本创建的.NET对象。在伪代码中:

$object_i_need = New-Object SomeClass
register_hotkey "Ctrl+Shift+F12" hotkey_func

function hotkey_func { do_something_with $object_i_need }

wait_for_keypress
unregister_hotkey

这有可能吗?

1 个答案:

答案 0 :(得分:0)

如果.Net对象支持Add_Keydown(如System.Windows.Forms.Form),你可以这样做......

$objWhatever.KeyPreview = $True
$objWhatever.Add_KeyDown({
     if ($_.KeyCode -eq "Enter"){
         hotkey_func{}
      } 
})