如何以编程方式从C#获取最新的clearcase标签?

如何以编程方式从C#获取最新的clearcase标签?,c#,clearcase,C#,Clearcase,我试图将版本信息放入从最新ClearCase标签检索到的C#GUI框架中。这最初是由VisualSoursafe完成的,如下所示 vssDB = new VSSDatabaseClass(); vssDB.Open( databaseName, "vssadmin", "vssadmin" ); VSSItem item = vssDB.get_VSSItem( @"$\BuildDCP.bat", false ); foreach(VSSVersion vssVersion in item.g

我试图将版本信息放入从最新ClearCase标签检索到的C#GUI框架中。这最初是由VisualSoursafe完成的,如下所示

vssDB = new VSSDatabaseClass();
vssDB.Open( databaseName, "vssadmin", "vssadmin" );
VSSItem item = vssDB.get_VSSItem( @"$\BuildDCP.bat", false );
foreach(VSSVersion vssVersion in item.get_Versions(0))
{
  // Pull the first non-blank label and use that
  if ( vssVersion.Label != "" )
  {
    labelID = vssVersion.Label.ToString();
    break;
  }
}
我正在尝试使用ClearCase做一些类似的事情,因为我们将源代码控制从VSS更改为CC。任何帮助都将不胜感激


谢谢

我真的希望COM接口有更好的文档,或者更明显。或者ClearCase Explorer或Project Explorer的代码是开源的

我做了一些很酷的事情,但我基本上是从向我的C#项目添加COM引用开始的,然后开始胡乱处理我找到的接口


祝你好运

我相信这可以通过一个脚本更好地实现,这个脚本可以从您的C#程序中调用

但是,您可以通过ClearCase提供的接口直接调用一些COM对象

该接口的文档可以通过ClearCase帮助(Start>Programs>RationalClearCase>ClearCase帮助)访问,其中有一个“ClearCase自动化库(CAL)”条目。另一个路径是在ClearCase/bin目录中查找“cc_cal.chm

在VB中,使用CAL API,将给出如下内容:

Dim CC As New ClearCase.Application 
Dim labelID As String
Set aVersion = CC.Version("[Path-To]\BuildDCP.bat");
Set someLabels = Ver.Labels;
If (someLabels.Count > 0) Then 
    ' the first label listed is the most recently applied
    labelID = someLabels.Item(1).Type.Name
EndIf

我非常同意你的看法。在java项目中,我用一组java对象完全封装了cleartool命令行界面,制作了自己的API。。。。