与project 2016冲突 #95

Closed
xrxsh opened this Issue Aug 25, 2016 · 4 comments

Projects

None yet

3 participants

@xrxsh
xrxsh commented Aug 25, 2016

在打开.MPP文件后截图,选框扩大到project的工具栏后选框会卡住,不能使用任务管理器,无法退出选框,需要注销恢复。windows10 x64 14393,office Project 2016,Snipaste 1.5 64位

@liulex
Owner
liulex commented Aug 25, 2016

刚下载安装了 Project 2016 试用版,确实如此,我会尽快修复。

可以用任务管理器强制结束 Snipaste,需要在任务管理器的选项菜单勾选”置于顶层“,任务管理器窗口就不会被截图窗口挡住了。

@liulex liulex added the bug label Aug 25, 2016
@liulex
Owner
liulex commented Aug 25, 2016 edited

仔细调试了一下,应该是 Project 2016 这一块区域:
sp160825_180658
的 MSAA 接口实现有错,不断报告它还有 child,导致了 Snipaste 往下无尽地遍历,从而无响应。

使用微软的 Inspect Object 工具也可以确认这一行为,同样会导致 Inspect Object 无响应,但如果使用 UI Automation 方式,则无问题。

所以实际上是 Project 2016 的问题。

目前来说,可以通过限制最大的遍历深度/限制遍历用时来防止类似的问题(下一版增加)。
但毕竟 MSAA 比较旧了,以后有空会使用 UI Automation 方式来重新实现界面元素的自动选取。

非常感谢你的反馈。

@liulex
Owner
liulex commented Aug 25, 2016

另,防止以后有其他 bug 导致截图卡住,下一版开始,截图界面可见时点击托盘图标将强制退出 Snipaste.
比如,截图卡住时,按出开始菜单(因此建议不要左右 Win 键都屏蔽),即可点击托盘图标强制退出 Snipaste.

@xrxsh
xrxsh commented Aug 25, 2016

简直棒极了~

@liulex liulex added the fixed label Aug 28, 2016
@liulex liulex closed this Aug 28, 2016
@septs septs added this to the 1.7 milestone Sep 20, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment