VSProject2.GenerateKeyPairFiles-Methode (String, String)
Generiert eine öffentliche/private Schlüsseldatei, die zum Bilden eines starken Namens für die Assembly verwendet wird.
Namespace: VSLangProj80
Assembly: VSLangProj80 (in VSLangProj80.dll)
Syntax
'Declaration
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
)
Parameter
- strPublicPrivateFile
Typ: System.String
Der Name der zu generierenden Datei.
- strPublicOnlyFile
Typ: System.String
Ist der Wert true, wird nur der öffentliche Schlüssel generiert.
Hinweise
Ein starker Name setzt sich aus der Identität der Assembly – dem einfachen Textnamen, der Versionsnummer und Kulturinformationen (sofern vorhanden) – sowie einem öffentlichen Schlüssel und einer digitalen Signatur zusammen.Das öffentliche/private Schlüsselpaar, mit dem die digitale Signatur erstellt wird, kann in einer Datei oder in einem Container im Kryptografiedienstanbieter gespeichert werden.Die Datei oder der Container wird mit dem Sn.exe (Strong Name-Tool) erstellt.Der Containername wird vom Benutzer beim Ausführen des Tools angegeben, und dieser Name wird auch in dieser Eigenschaft verwendet.Weitere Informationen finden Sie unter Assemblys mit starkem Namen.
Ein Kryptografiedienstanbieter ist ein unabhängiges Softwaremodul, das kryptografische Algorithmen zur Authentifizierung, Codierung und Verschlüsselung ausführt.Weitere Informationen finden Sie unter Cryptographic Services.
Beispiele
In diesem Beispiel wird eine Binärdatei generiert, die das Schlüsselpaar enthält.Um die generierte Datei anzuzeigen, verwenden Sie das Sn.exe (Strong Name-Tool).Um dieses Beispiel als Add-In auszuführen, informieren Sie sich unter Gewusst wie: Kompilieren und Ausführen der Codebeispiele für das Automatisierungsobjektmodell.Öffnen Sie ein Visual Basic- oder ein Visual C#-Projekt, bevor Sie dieses Beispiel ausführen.
[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");
}
.NET Framework-Sicherheit
- Volle Vertrauenswürdigkeit für den unmittelbaren Aufrufer. Dieser Member kann von nur teilweise vertrauenswürdigem Code nicht verwendet werden. Weitere Informationen finden Sie unter Verwenden von Bibliotheken aus teilweise vertrauenswürdigem Code.