SignedCode.Sign-Methode
[Die Sign-Methode ist für die Verwendung in den im Abschnitt Anforderungen angegebenen Betriebssystemen verfügbar. Verwenden Sie stattdessen Platform Invocation Services (PInvoke), um die Win32-API-Funktionen SignerSignEx, SignerTimeStampExund WinVerifyTrust auf aufruft, um Inhalte mit einer digitalen Authenticode-Signatur zu signieren. Weitere Informationen zu PInvoke finden Sie unter Tutorial zu Plattformaufrufen. .NET und CryptoAPI über P/Invoke: Teil 1 und .NET und CryptoAPI über P/Invoke: Teil 2 der Unterabschnitte Extending .NET Cryptography with CAPICOM and P/Invoke (Erweitern der .NET-Kryptografie mit CAPICOM und P/Invoke) können ebenfalls hilfreich sein.]
Die Sign-Methode erstellt eine digitale Authenticode-Signatur und signiert die ausführbare Datei, die in der SignedCode.FileName-Eigenschaft angegeben ist.
Syntax
SignedCode.Sign( _
[ ByVal Signer ] _
)
Parameter
-
Signer [ in, optional]
-
Ein Signer-Objekt, das Zugriff auf den privaten Schlüssel des Zertifikats hat, das zum Signieren des Codes verwendet wird. Der Standardwert ist NULL.
Rückgabewert
Diese Methode gibt keinen Wert zurück.
Bemerkungen
Bevor die Sign-Methode aufgerufen wird, muss die Datei, die den Code enthält, in der FileName-Eigenschaft angegeben werden.
Wenn die ausführbare Datei bereits signiert ist, überschreibt diese Methode die vorhandene Signatur.
Die folgenden Ergebnisse gelten für den Signer-Parameterwert:
- Wenn der Signer-Parameter nicht NULL ist, verwendet diese Methode den privaten Schlüssel, auf den das zugeordnete Zertifikat verweist, um die Signatur zu verschlüsseln. Wenn der private Schlüssel, auf den das Zertifikat verweist, nicht verfügbar ist, schlägt die Methode fehl.
- Wenn der Signer-Parameter NULL ist und genau ein Zertifikat im SPEICHER CURRENT USER MY enthalten ist, das Zugriff auf einen privaten Schlüssel mit Codesignaturfunktion hat, wird dieses Zertifikat verwendet, um die Signatur _ zu erstellen.
- Wenn der Signer-Parameter NULL ist, Einstellungen. Der EnablePromptForCertificateUI-Eigenschaftswert ist true, und es gibt mehr als ein Zertifikat im Speicher CURRENT USER MY mit einem verfügbaren privaten Schlüssel mit Codesignaturfunktion. Es wird ein Dialogfeld angezeigt, in dem der Benutzer auswählen kann, welches Zertifikat verwendet _ wird.
- Wenn der Signer-Parameter NULL ist und die Einstellungen. Die EnablePromptForCertificateUI-Eigenschaft ist false, die Methode schlägt fehl.
- Wenn der Signer-Parameter NULL ist und im SPEICHER CURRENT USER MY keine Zertifikate mit einem verfügbaren privaten Schlüssel mit Codesignaturfunktion vorhanden sind, schlägt die _ Methode fehl.
Diese Methode verwendet den SHA-1-Hashalgorithmus.
Requirements (Anforderungen)
| Anforderung | Wert |
|---|---|
| Verteilbare Komponente |
CAPICOM 2.0 oder höher auf Windows Server 2003 und Windows XP |
| DLL |
|