我正在开发outlook addins 2010。 在调用上下文菜单附件项后,Outlook添加事件不起作用。 我使用outlook addins中的FMUtils.KeyboardHook创建了一个键盘快捷键。 它工作正常,但当我单击上下文菜单附件中的自定义项目时,它会打开我各自的窗体表格,但在我的outlook addins事件无效后。 键盘快捷键事件未触发。
private void ThisAddIn_Startup(object sender, System.EventArgs e)
{
var KeyboardHook = new Hook("Global Action Hook");
KeyboardHook.KeyDownEvent += KeyDown;
}
public void KeyDown(KeyboardHookEventArgs e)
{
if (e.isCtrlPressed && e.isAltPressed && e.Key == Keys.D)
{
//process code
}
}
请帮我解决此问题。
答案 0 :(得分:0)
您需要在全局范围内定义事件源对象,以防止它被垃圾收集器滑动。例如:
Hook KeyboardHook = null;
private void ThisAddIn_Startup(object sender, System.EventArgs e)
{
KeyboardHook = new Hook("Global Action Hook");
KeyboardHook.KeyDownEvent += KeyDown;
}
因此,当加载项运行时,对象将一直处于活动状态。