Metodo IVSSItem.Share
Crea un collegamento di condivisione tra due progetti per un file o un progetto.
Spazio dei nomi: Microsoft.VisualStudio.SourceSafe.Interop
Assembly: Microsoft.VisualStudio.SourceSafe.Interop (in microsoft.visualstudio.sourcesafe.interop.dll)
Sintassi
'Dichiarazione
Sub Share ( _
<InAttribute> pIItem As VSSItem, _
<InAttribute> <OptionalAttribute> Optional Comment As String = "", _
<InAttribute> <OptionalAttribute> Optional iFlags As Integer = 0 _
)
'Utilizzo
Dim instance As IVSSItem
Dim pIItem As VSSItem
Dim Comment As String
Dim iFlags As Integer
instance.Share(pIItem, Comment, iFlags)
void Share (
[InAttribute] VSSItem pIItem,
[OptionalAttribute] [InAttribute] string Comment,
[OptionalAttribute] [InAttribute] int iFlags
)
void Share (
[InAttribute] VSSItem^ pIItem,
[InAttribute] [OptionalAttribute] String^ Comment,
[InAttribute] [OptionalAttribute] int iFlags
)
void Share (
/** @attribute InAttribute() */ VSSItem pIItem,
/** @attribute InAttribute() */ /** @attribute OptionalAttribute() */ String Comment,
/** @attribute InAttribute() */ /** @attribute OptionalAttribute() */ int iFlags
)
function Share (
pIItem : VSSItem,
Comment : String,
iFlags : int
)
Parametri
- pIItem
Rappresenta un file o un progetto da condividere.
- Comment
Facoltativo. Una stringa contenente un commento. Il valore predefinito è una stringa vuota.
- iFlags
Facoltativo. Il valore predefinito è 0. Per ulteriori informazioni, vedere VSSFlags.
Note
[IDL]
HRESULT Share ([in]IVSSItem *pIItem, [in,defaultvalue(0)]BSTR Comment, [in,defaultvalue(0)]long iFlags);
Nel caso di cartelle o file condivisi, le modifiche vengono applicate in tutti i progetti che li condividono. Ogni file e cartella dispone di almeno un collegamento a se stesso.
Quando si condivide un progetto, vengono condivisi tutti i file all'interno del progetto (i progetti non vengono condivisi). Se si utilizza il flag VSSFLAG_RECURSYES, verranno condivisi anche tutti i file inclusi nei sottoprogetti.
Se si tenta di condividere un file in un progetto che contiene già un file con lo stesso nome o si tenta di condividere in modo ricorsivo un progetto in una delle relative derivazioni, verrà generato un errore di run-time.
Esempio
Nell'esempio riportato di seguito viene illustrato come utilizzare il metodo Share per condividere un file tra due progetti. Per eseguire l'esempio:
Creare due cartelle, $/A e $/B.
La cartella $/A deve contenere un file a.txt.
[C#]
using System;
using Microsoft.VisualStudio.SourceSafe.Interop;
public class IVSSTest
{
public static void Main()
{
// Create a VSSDatabase object.
IVSSDatabase vssDatabase = new VSSDatabase();
// Open a VSS database using network name
// for automatic user login.
vssDatabase.Open(@"C:\VSSTestDB\srcsafe.ini",
Environment.UserName, "");
// Get IVSSItem references to the project and the file objects.
IVSSItem vssFolder = vssDatabase.get_VSSItem("$/B", false);
VSSItem vssFile1 = vssDatabase.get_VSSItem("$/A/a.txt", false);
DisplayLinks(vssFile1);
// Share a file between two folders.
vssFolder.Share(vssFile1, "Comment for share", 0);
DisplayLinks(vssFile1);
IVSSItem vssFile2 = vssDatabase.get_VSSItem("$/B/a.txt", false);
// Break the shared link between folders $/A and $/B on file a.txt.
vssFile2.Branch("Branch comment", 0);
DisplayLinks(vssFile1);
// Destroy file a.txt in folder $/B:
vssFile2.Destroy();
}
private static void DisplayLinks(IVSSItem vssFile)
{
Console.Write("\n{0} contains links:", vssFile.Spec);
foreach(IVSSItem vssItem in vssFile.Links)
Console.Write(" {0}", vssItem.Spec);
}
}
Output:
$/A/a.txt contains links: $/A/a.txt
$/A/a.txt contains links: $/B/a.txt $/A/a.txt
$/A/a.txt contains links: $/A/a.txt
Vedere anche
Riferimenti
Interfaccia IVSSItem
Membri IVSSItem
Spazio dei nomi Microsoft.VisualStudio.SourceSafe.Interop