SourceSafe 的开发人员针对这种错误提供了一个解决方案,这就是: SourceSafe 自执行组件。其中的对象提供了针对你自己程序的 SourceSafe 的处理方法,简单的在vb程序中添加一个Microsoft SourceSafe 6.0 类型库。
VSSDatabase 对象提供了一个针对 SourceSafe 的引用。对于将要操作的数据库,可以调用 Open 方法并将完整的文件名称传递给 Srcsafe.ini 文件。如下:
vssDatabase.Open(strSourceSafePath)
打开数据库之后,就可以操作数据库中的各个元素了。文件和项目都是用 VSSItem 对象来表示的。Type 属性用来识别某个元素是一个项目还是一个文件。为了得到一个 VSSItem ,通过这个元素在项目中的路径——Spec,并调用 VSSDatabase 中的 VSSItem 方法。Spec的书写方法如下:
$/ProjectName/Filename
你可以通过重用元素集合的方法,使某个VSSItem中的所有子元素可以重用。注意,下面是 vb.net 的例子,不过在vb6中也可以运行。
Dim vssItem As SourceSafeTypeLib.VSSItem
Dim vssChildItem As SourceSafeTypeLib.VSSItem
vssItem = vssDatabase.VSSItem(FileSpec)
For Each vssChildItem In vssItem.Items
If vssChildItem.Type = _
SourceSafeTypeLib.VSSItemType.VSSITEM_PROJECT
Then
'Do Something
End If
Next
通过使用 SourceSafe 自动化对象,你可以通过程序来代替耗时的手工操作来使用 SourceSafe。