PSEventing Plus 1.0

Rating: No reviews yet
Downloads: 967
Change Set: 73933
Released: May 19, 2011
Updated: Nov 9, 2011 by oisin
Dev status: Stable Help Icon

Recommended Download

Application PSEventingPlus 1.0.0.1
application, 11K, uploaded May 19, 2011 - 862 downloads

Other Available Downloads

Application PSEventingPlus 1.0.0.2 Debug
application, 22K, uploaded Nov 9, 2011 - 105 downloads

Release Notes

About

Eventing extensions for PowerShell 2.0 Console Host. This module integrates with PowerShell 2.0 Eventing infrastructure. HotKey events can have a scriptblock action, or can put events in the event queue just like the OOTB eventing cmdlets.

Installation

  • Download zip, right click, properties, unblock.
  • Extract into ~\documents\windowspowershell\modules\pseventingplus\

What's New?

Cmdlet(s)

  • Register-HotKeyEvent
NAME
    Register-HotKeyEvent

SYNTAX
    Register-HotKeyEvent [-SourceIdentifier] <string> [-Global] [-PassThru] [[-Action] <scriptblock>] [-MessageData <psobject>] [-SupportEvent] [-Forward] [<CommonParameters>]

Examples

import-module pseventingplus

# clear screen in response to ctrl+L, unix style
register-hotkeyevent "ctrl+L" -action { cls; write-host -nonewline (prompt) }

# kill all jobs
register-hotkeyevent "ctrl+shift+j" -action { get-job | stop-job -verbose }

# put events in the queue for alt+f, no action and hide the event registration
register-hotkeyevent "alt+f" -supportevent

# respond to hotkeys even if powershell window is not focused ;-)
register-hotkeyevent "ctrl+alt+h" -action { start-process -verb runas notepad "$env:windir\system32\drivers\etc\hosts" }  -global

Known Issues

  • Hot key registrations only work in the last console to load this module. fixed
  • Concurrent consoles will be supported in 1.1 fixed
  • Global hotkeys will not work if they were registered in an elevated instance of PowerShell and you have UAC enabled. Use an unelevated instance of PowerShell.

Reporting Problems

If you have any problems, e.g. the hotkeys don't work at all then you may be running into a limitation for global hooks. Windows only allows a maximum of 32 distinct DLLs to hook into the global hooks chain. Download the specially annotated debug build and run Microsoft DbgView to view verbose debugging output. Start DbgView before you load the module and register any hotkeys. Post the output to the issue tracker along with any other comments and I'll do my best to get back to you.

Enjoy.

Reviews for this release

No reviews yet for this release.