我有一个Visual Source Safe(VSS)项目,我需要将行附加到“.sql”文件。 我试图使用明显的代码:
using (StreamWriter sw = File.AppendText(lblSourceFile.Text))
{
sw.WriteLine("text here");
}
但我收到“文件访问”错误,因为该文件未在VSS中签出。 有没有办法以编程方式签出文件进行编辑,并在完成后重新检查? 我找到的所有链接都使用VSSDatabaseClass,我不知道如何为SourceSafetypelib dll添加引用并使用VSSDatabaseClass ...
答案 0 :(得分:1)
您可以添加ssapi.dll(可以在VSS的安装文件夹中找到)作为参考,然后您可以使用SourceSafetypelib。 Here您可以看到示例。
答案 1 :(得分:0)
感谢Rachel提供的ssapi.dll文件。 这是适用于我的代码:
using SourceSafeTypeLib;
VSSDatabaseClass vssDatabase = new VSSDatabaseClass();
vssDatabase.Open("VSS database path", "userName", "password");
VSSItem item = vssDatabase.get_VSSItem("file path as shown in vss", false);
item.Checkout("Comments", item.LocalSpec, 0);
using (StreamWriter sw = File.AppendText(lblSourceFile.Text))
{
sw.WriteLine("text");
}
item.Checkin("Comments", item.LocalSpec, 0);
vssDatabase.Close();