Partilhar via


Propriedade Reference3.StrongName

Obtém se a referência é assinada com um par de chaves pública/particular.

Namespace:  VSLangProj80
Assembly:  VSLangProj80 (em VSLangProj80.dll)

Sintaxe

'Declaração
ReadOnly Property StrongName As Boolean
bool StrongName { get; }
property bool StrongName {
    bool get ();
}
abstract StrongName : bool
function get StrongName () : boolean

Valor de propriedade

Tipo: System.Boolean
A boolean valor que indica se a referência é assinada com um par de chaves pública/particular.

Comentários

O valor retornado depende do tipo de referência.

Tipo de referência

Valor retornado

Assembly

True se a referência tem um nome forte.

COM

False; Objetos COM não têm nomes de alta segurança.

Somente assemblies com nomes de alta segurança podem ser colocados no cache global de assemblies.Para obter mais informações sobre nomes de alta segurança e o cache global de assemblies, consulte Assemblies de nomes fortes, Cache global de assemblies, e Trabalhando com Assemblies e o Cache Global de assemblies.

Exemplos

Este exemplo adiciona um Assembly e uma referência COM uma abertura Visual Basic ou Visual C# project.Em seguida, ele determina se a referência do assembly tem um nome forte.Para referência COM, StrongName é false.Para executar este exemplo como um add-in, consulte Como: compilar e executar os exemplos de código de modelo de objeto de automação.

Os caminhos padrão para a referência adicional são: < raiz da instalação >\Program Files\Microsoft.NET\Primary Interop Assemblies para adodb.dll, e < raiz da instalação >\Program Files\Common Files\SpeechEngines\Microsoft para spcommon.dll.Substituir < caminho do arquivo > no exemplo com esses ou outros caminhos de arquivo apropriado.

Imports VSLangProj
Imports VSLangProj2
Imports VSLangProj80
Public Sub OnConnection(ByVal application As Object, _
 ByVal connectMode As ext_ConnectMode, ByVal addInInst As Object, _
 ByRef custom As Array) Implements IDTExtensibility2.OnConnection
    applicationObject = CType(application, DTE2)
    addInInstance = CType(addInInst, AddIn)
    DisplayStrongNameValue(applicationObject)
End Sub
Sub DisplayStrongNameValue(ByVal dte As DTE2)
    Dim aProject As Project
    Dim aVSProject As VSProject2
    aProject = applicationObject.Solution.Projects.Item(1)
    aVSProject = _
    CType(applicationObject.Solution.Projects.Item(1).Object, _
    VSProject2)
    ' Add an Assembly reference and display its strong name value.
    Dim newRef As Reference3
    ' Replace the <file path> with an actual file path.
    newRef = CType(aVSProject.References.Add("<file path>\adodb.dll"), _
    Reference3)
    MsgBox("Added an assembly reference, named: " & newRef.Name)
    MsgBox("The StrongName value of " & newRef.Name & " is " _
    & newRef.StrongName.ToString())
    ' Add a COM reference and display its strong name value.
    ' Replace <file path> with an actual file path.
    newRef = CType(aVSProject.References.Add
("<file path>\spcommon.dll"), Reference3)
    MsgBox("Added a COM reference, named: " & newRef.Name)
    MsgBox("The StrongName value of " & newRef.Name & " is " _
    & newRef.StrongName.ToString())
End Sub
using System.Windows.Forms;
using VSLangProj;
using VSLangProj2;
using VSLangProj80;
public void OnConnection(object application,
 ext_ConnectMode connectMode, object addInInst, ref Array custom)
{
    applicationObject = (DTE2)application;
    addInInstance = (AddIn)addInInst;
    DisplayStrongNameValue(((DTE2)applicationObject));
}
public void DisplayStrongNameValue(DTE2 dte)
{
    // The first project is a Visual Basic or C# project.
VSProject2 vsProject =
((VSProject2)(applicationObject.Solution.Projects.Item(1).Object));
    Reference3 aRef = null;
    // Add an Assembly reference and display its strong name value.
    ' Replace the <file path> with an actual file path.
    aRef = (Reference3)vsProject.References.Add(@"<file path>\adodb.dll");
    MessageBox.Show("Added an Assembly reference, named: "
+ aRef.Name);
MessageBox.Show("The StrongName value of " + aRef.Name + " is "
+ aRef.StrongName.ToString());
    // Add a COM reference and display its strong name value.
    ' Replace <file path> with an actual file path.
aRef = (Reference3)vsProject.References.Add
(@"<file path>\spcommon.dll");
    MessageBox.Show("Added a COM reference named: " + aRef.Name);
    MessageBox.Show("The StrongName value of " + aRef.Name + " is "
+ aRef.StrongName.ToString());
}

Segurança do .NET Framework

Consulte também

Referência

Reference3 Interface

Sobrecargas StrongName

Namespace VSLangProj80