extraction VSS par etiquette
bonjours,
je viens ici pour poser une question assez précise, sur l'extraction ou juste l'obtention d'une version d'une fichier ou dossier de VSS en me basant sur une étiquette passée au préalable.
J’ai une arborescence pour un projet, sur le dossier source on a mis une étiquette SP1, et on a continue d’archiver les version comme d’habitude.
Maintenant je désirerais extraire toute mon arborescence comme elle l’était lors de la pose de l’étiquette.
Cela fonctionne très bien lorsque je le fais manuellement sur VSS, mais je dois l’inclure a un automate qui le fera en automatique.
Voici le code que j’ai essayé mais qui ne fonctionne pas, il me récupère la dernière version quoi qu’il arrive
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| public void getRecursifVSS(string sFolder, string copydir, string label, ref string sErrmsg)
{
try
{
IVSSItem vssFolder = vssDatabase.get_VSSItem(sFolder, false);
if ((label != null) && (label.Trim() != ""))
{
foreach (IVSSVersion ver in vssFolder.get_Versions(0))
if ((((SourceSafeTypeLib.VSSItemClass)(ver.VSSItem)).Name == vssFolder.Name) && (ver.Label == label))
ver.VSSItem.Get(ref testFile, (int)(VSSFlags.VSSFLAG_RECURSYES | VSSFlags.VSSFLAG_FORCEDIRNO | VSSFlags.VSSFLAG_TIMEMOD | VSSFlags.VSSFLAG_USERRONO));
}
else
vssFolder.Get(ref testFile, (int)(VSSFlags.VSSFLAG_RECURSYES | VSSFlags.VSSFLAG_FORCEDIRNO | VSSFlags.VSSFLAG_TIMEMOD | VSSFlags.VSSFLAG_USERRONO));
}
catch (Exception ex)
{
Elog.Insert_Log(ex);
}
} |