Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A következő függvények a bővíthető CryptoAPI-függvények közé tartoznak.
| CryptoAPI függvény | OID-függvénynév definiálása | OID függvénynév sztring |
|---|---|---|
| CryptEncodeObject | CRYPT_OID_ENCODE_ OBJECT_FUNC |
"CryptDllEncodeObject" |
| CryptDecodeObject | CRYPT_OID_DECODE_ OBJECT_FUNC |
"CryptDllDecodeObject" |
| CertOpenStore | CRYPT_OID_OPEN_ STORE_PROV_FUNC |
"CertDllOpenStoreProv" |
| CertVerifyCTLUsage | CRYPT_OID_VERIFY_ CTL_USAGE_FUNC |
"CertDllVerifyCTLUsage" |
| CertVerifyRevocation | CRYPT_OID_VERIFY_ REVOCATION_FUNC |
CertDllEllenőrizzeVisszavonást |
Normál használat esetén egy meglévő OID és kódolási típus esetén magát a CryptoAPI függvény kódját használják. Ha ezen függvények egyike olyan OID és kódolási típussal van meghívva, amelyet a CryptoAPI-függvényben lévő kód nem kezelésére terveztek, egy új függvényt kell létrehozni egy DLL-ben, amely tartalmazza az új funkciót. Ezt a DLL-t regisztrálni kell a beállításjegyzékben, vagy a memóriában kell telepíteni.
Ha a felsorolt függvények egyikét az újonnan kijelölt OID és kódolási típussal hívja meg, a rendszer az új DLL-ben lévő kódot használja a CryptoAPI függvény részeként megadott kód helyett.
Az újonnan kifejlesztett függvény neve lehet az előző táblázatban az "OID függvénynév sztringje" alatt felsorolt név, vagy az új függvénykód regisztrálásakor más nevet is megadhat.
Az új függvénynek megfelelő prototípust kell használnia. A CertOpenStorekivételével ez a prototípus minden esetben megegyezik az új függvényt meghívó CryptoAPI-függvénnyel. A CertOpenStore esetében a prototípus a következő.
#include <windows.h>
BOOL WINAPI CertDllOpenStoreProv(
IN LPCSTR lpszStoreProvider,
IN DWORD dwEncodingType,
IN HCRYPTPROV hCryptProv,
IN DWORD dwFlags,
IN const void *pvPara,
IN HCERTSTORE hCertStore,
IN OUT PCERT_STORE_PROV_INFO pStoreProvInfo
);
Jegyzet
Ha a prototípusok nem egyeznek, a rendszerverem megsérül.
Amellett, hogy egy DLL-ben megadja az új függvény kódját, a CryptEncodeObject vagy CryptDecodeObject funkcióinak kibővítéséhez szükség van egy típusdefinícióra, hogy az új C-adatstruktúra a felhasználói program fordításakor egy fejlécfájlba kerüljön.