小编Flo*_*ffl的帖子

原生窗口:关闭时释放句柄

我目前正在为Microsoft Outlook开发C#.NET加载项. 加载项的目标是从Outlook即时搜索中捕获搜索输入,并在自定义窗格中显示我自己的搜索结果.

它运行得很好,并且通过使用本机窗口将Outlook窗口子类化,我得到了搜索字符串,它已经将它传递到我的面板中.

现在的问题是,当您关闭加载项时(通过" 文件 - >选项 - >加载项 - > COM加载项 ",而不是窗格中的X),加载项立即终止我不能searchboxWindow.ReleaseHandle()事先打电话 来恢复我的WndProc链.Outlook只是崩溃而没有任何明显的错误.

protected override void WndProc(ref Message m)
{
    base.WndProc(ref m);

    switch ((uint)m.Msg)
    {
        case WindowMessages.WM_DESTROY:
        case WindowMessages.WM_QUIT:
        case WindowMessages.WM_NCDESTROY:
            this.ReleaseHandle();
            return;

        case WindowMessages.WM_KEYUP:
        case WindowMessages.WM_LBUTTONDOWN:
        case WindowMessages.WM_RBUTTONDOWN:
            OnKeyUp();
            break;

        case WindowMessages.WM_EXITSIZEMOVE:
            OnResize();
            break;
    }
}
Run Code Online (Sandbox Code Playgroud)

我已经尝试收听一些应该在加载项关闭时调用的窗口消息,但这些消息仅在我以正常方式关闭Outlook时出现.

此外,主外接源文件中的事件,如AppDomain.CurrentDomain.ProcessExit,this.Shutdown((Outlook.ApplicationEvents_10_Event)this.Application).Quit不会被调用.

当加载项终止时,我可以听到什么事件(可靠地)被触发?有一些吗?如果没有,我有什么替代方案来解决我的问题?

c# outlook wndproc outlook-addin nativewindow

7
推荐指数
1
解决办法
490
查看次数

我可以在 cloud9-ide 中恢复删除的文件吗?

晚上好,

几周前我发现了cloud9-ide,我发现它在 projetc 团队中工作的可能性令人难以置信。

当我在我们的团队会议上提出它时,我提到了它,我的同事问了一个问题
你可以看到更改的内容并且可以还原它是非常好的,但是这也可以恢复已删除的文件吗?

我站在那里,尴尬,不得不承认我不知道这是否有效,如果有效,如何?

有人可以帮我吗?是否可以恢复已删除的文件?如果没有,这将是一个巨大的矛盾。

backup restore cloud9-ide

5
推荐指数
1
解决办法
1638
查看次数