Compartir a través de


VSProject2.GenerateKeyPairFiles (Método)

Genera un archivo de clave pública o privada que se emplea para formar un nombre seguro para el ensamblado.

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

Sintaxis

'Declaración
Sub GenerateKeyPairFiles ( _
    strPublicPrivateFile As String, _
    strPublicOnlyFile As String _
)
void GenerateKeyPairFiles(
    string strPublicPrivateFile,
    string strPublicOnlyFile
)
void GenerateKeyPairFiles(
    [InAttribute] String^ strPublicPrivateFile, 
    [InAttribute] String^ strPublicOnlyFile
)
abstract GenerateKeyPairFiles : 
        strPublicPrivateFile:string * 
        strPublicOnlyFile:string -> unit
function GenerateKeyPairFiles(
    strPublicPrivateFile : String, 
    strPublicOnlyFile : String
)

Parámetros

  • strPublicPrivateFile
    Tipo: String

    Nombre del archivo que se va a generar.

  • strPublicOnlyFile
    Tipo: String

    Si es true, solo se genera la clave pública.

Comentarios

Un nombre seguro está formado por la identidad del ensamblado (nombre de texto sencillo, número de versión e información de referencia cultural, si se proporciona), una clave pública y una firma digital. El par de claves pública y privada, que se utiliza para crear la firma digital, puede almacenarse en un archivo o en un contenedor del proveedor de servicios criptográficos. La Sn.exe (Herramienta de nombre seguro) crea el archivo o el contenedor. El nombre del contenedor lo especifica el usuario al ejecutar la herramienta y es el mismo nombre que se utiliza en esta propiedad. Para obtener más información, vea Ensamblados con nombre seguro.

Un proveedor de servicios criptográficos es un módulo de software independiente que ejecuta algoritmos criptográficos de autenticación, codificación y cifrado. Para obtener más información, vea Cryptographic Services.

Ejemplos

En este ejemplo se genera un archivo binario que contiene el par de claves. Para ver el archivo generado, utilice la Sn.exe (Herramienta de nombre seguro). Para ejecutar este ejemplo como complemento, vea Cómo: Compilar y ejecutar los ejemplos de código del modelo de objetos de automatización. Abra un proyecto de Visual Basic o Visual C# antes de ejecutar este ejemplo.

[Visual Basic]

' Add-in code.
Imports VSLangProj
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)
    GenerateKeyPairs(applicationObject)
End Sub
Sub GenerateKeyPairs(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)
    ' Replace <file path> with an actual file path.
    aVSProject.GenerateKeyPairFiles("<file path>\MyKeyText.bin", "0")
End Sub

[C#]

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;
    GenerateKeyPair((DTE2)applicationObject);
}
public void GenerateKeyPair(DTE2 dte)
{
    Project aProject = null;
    VSProject2 aVSProject = null;
    aProject = applicationObject.Solution.Projects.Item(1);
    aVSProject = ((VSProject2)( 
applicationObject.Solution.Projects.Item(1).Object));
    // Replace the <file path> with an actual path.
    aVSProject.GenerateKeyPairFiles
("<file path>\\MyKeyText2.bin", "0");
}

Seguridad de .NET Framework

Vea también

Referencia

VSProject2 Interfaz

VSLangProj80 (Espacio de nombres)