3
A
回答
10
using System;
using System.Collections.Generic;
using SourceSafeTypeLib;
namespace YourNamespace
{
public class SourceSafeDatabase
{
private readonly string dbPath;
private readonly string password;
private readonly string rootProject;
private readonly string username;
private readonly VSSDatabaseClass vssDatabase;
public SourceSafeDatabase(string dbPath, string username, string password, string rootProject)
{
this.dbPath = dbPath;
this.username = username;
this.password = password;
this.rootProject = rootProject;
vssDatabase = new VSSDatabaseClass();
}
public List<string> GetAllLabels()
{
List<string> allLabels = new List<string>();
VSSItem item = vssDatabase.get_VSSItem(rootProject, false);
IVSSVersions versions = item.get_Versions(0);
foreach (IVSSVersion version in versions)
{
if (version.Label.Length > 0)
{
allLabels.Add(version.Label);
}
}
return allLabels;
}
public void GetLabelledVersion(string label, string project, string directory)
{
string outDir = directory;
vssDatabase.get_VSSItem(rootProject, false).get_Version(label).Get(ref outDir, (int)VSSFlags.VSSFLAG_RECURSYES + (int)VSSFlags.VSSFLAG_USERRONO);
}
public void Open()
{
vssDatabase.Open(dbPath, username, password);
}
public void Close()
{
vssDatabase.Close();
}
}
// some other code that uses it
SourceSafeDatabase sourceControlDatabase = new sourceControlDatabase(...);
sourceControlDatabase.Open();
sourceControlDatabase.GetLabelledVersion(label, rootProject, projectDirectory);
sourceControlDatabase.Close();
2
有一个命令行SS.EXE程序,您可以调用来执行源代码管理操作。然而,它依赖于全局的SourceSafe配置,所以有时很难做到你想做的。
2
你可能想看看this discussion.
相关问题
- 1. 如何以编程方式从iDisk获取文件?
- 2. 如何以编程方式获取PowerPoint文件格式
- 3. 如何以编程方式从HyperLinkField控件获取DataNavigateUrlFields属性
- 4. 如何以编程方式获取.app文件名?
- 5. 如何以编程方式获取user.config文件的位置?
- 6. 以编程方式从BitBucket的“Downloads”部分获取文件。
- 7. 以编程方式从Crystal Reports .rpt文件中获取报表
- 8. 以编程方式获取表控件
- 9. 如何执行Pub从Dart程序以编程方式获取
- 10. 如何以编程方式从TFS获取完整文件夹历史记录?
- 11. 如何以编程方式从* .dll(*。exe,*。msi)文件获取签名列表?
- 12. 如何以编程方式从库文件获取产品密钥标记?
- 13. Eclipse RCP:如何以编程方式从产品文件中获取版本号?
- 14. 以编程方式读取.resx文件
- 15. 如何以编程方式从Instagram获取ACCESS_TOKEN?
- 16. 如何以编程方式从UIView获取约束
- 17. 如何以编程方式从AnthillPro获取源配置?
- 18. 如何以编程方式从IE获取响应信息?
- 19. 如何以编程方式从iPhone获取IMEI号码?
- 20. 如何以编程方式从IHTMLDocument获取documentMode?
- 21. Android:以编程方式获取Google文档文件
- 22. 如何以编程方式通过Mylyn获取更改事件?
- 23. 如何以编程方式获取Android的固件版本?
- 24. 如何以编程方式(C#)从POP3邮件中获取附件?
- 25. 如何以编程方式获取文档库中子文件夹的GUID
- 26. 以编程方式从FF4获取确认对话框文本
- 27. 如何以编程方式获取Windows进程的线程数?
- 28. 如何以编程方式从Android应用程序读取gradle文件属性
- 29. 以编程方式获取内容文件和主要输出
- 30. 在webapp中以编程方式获取tomcat日志文件
这个评论是一种强制性的,但得到从SourceSafe走为上就可以了,如果可能的话。 – MusiGenesis 2008-11-13 14:38:18
几周后,我会的! :) – 2008-11-13 14:45:33