2

我的团队没有升级到 VS 2010 的选项,因此无法使用其 GatedCheckIn 功能。我正在开发一个 Visual Studio 插件来填补这个空白。我想知道是否有可能“破解”到 Visual Studio 中,而不是提供 Check In and Pending Changes 窗口的副本。实际上,内置窗口允许您做很多事情,包括通过带有复选框的树视图/列表视图仅签入具有待处理更改的文件子集。这种方法还将最小化该插件用户的学习曲线,因为当我们的插件在后台工作时,他们可以继续使用熟悉的界面。

如何捕获发送到 Visual Studio 工具窗口内部元素的事件?拦截 Check In 按钮单击(甚至是 Source Explorer 上的右键单击 -> Check In... 事件)很容易,但我没有找到答案。对话框本身可以通过

_applicationObject.Windows.Item("{2456BD12-ECF7-4988-A4A6-67D49173F564}")

但它不是 UIHierarchy,因此不支持获取具有待处理更改的文件的 Treeview 的方法。

BuddyBuild 虽然具有相同的目的,但有自己的 GUI,因此不能完全提供我们想要的东西。

太感谢了!

4

1 回答 1

1

有一个接口可以获取挂起的更改。

(每当此列表更改时,也会触发一个事件,但我认为没有必要对此进行挂钩。)

如果您的“签入前”事件是在单击签入按钮时发生的,那么您还需要在自动创建搁置集并对自动构建进行排队之前查询冲突并使其全部解决。

-萨默:)

于 2012-06-05T15:33:17.673 回答