Compartir a través de


Reference3.StrongName (Propiedad)

Obtiene si la referencia está firmada con un par de claves privada y pública.

Espacio de nombres:  VSLangProj80
Ensamblado:  VSLangProj80 (en VSLangProj80.dll)

Sintaxis

'Declaración
ReadOnly Property StrongName As Boolean
    Get
bool StrongName { get; }
property bool StrongName {
    bool get ();
}
abstract StrongName : bool
function get StrongName () : boolean

Valor de propiedad

Tipo: System.Boolean
Valor boolean que indica si la referencia está firmada con un par de claves privada y pública.

Implementaciones

Reference2.StrongName

Comentarios

El valor devuelto depende del tipo de referencia.

Tipo de referencia

Valor devuelto

Ensamblado

True si la referencia tiene un nombre seguro.

COM

False; los objetos COM no tienen nombres seguros.

Sólo los ensamblados con nombres seguros pueden colocarse en la caché global de ensamblados. Para obtener más información sobre los nombres seguros y la caché global de ensamblados, vea Ensamblados con nombre seguro, Caché de ensamblados global y Trabajar con ensamblados y la Caché de ensamblados global.

Ejemplos

En este ejemplo se agrega un ensamblado y una referencia COM a un proyecto de Visual Basic o Visual C# abierto. A continuación, se determina si la referencia de ensamblado tiene un nombre seguro. Para la referencia COM, StrongName es false. Para ejecutar este ejemplo como complemento, vea Cómo: Compilar y ejecutar los ejemplos de código del modelo de objetos de automatización.

Las rutas de acceso predeterminadas para la referencia agregada son: <raíz de instalación>\Archivos de programa\Microsoft.NET\Primary Interop Assemblies for adodb.dll y <raíz de instalación>\Archivos de programa\Common Files\SpeechEngines\Microsoft for spcommon.dll. En el ejemplo, reemplace <file path> por éstas u otras rutas de acceso a archivos apropiadas.

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());
}

Seguridad de .NET Framework

Vea también

Referencia

Reference3 Interfaz

StrongName (Sobrecarga)

VSLangProj80 (Espacio de nombres)