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.
Az új funkciók rendszerregisztrációs adatbázisban való regisztrálásának támogatását az új DLL-ben és az új függvényben kell megadni. OID támogató funkciók nyújtanak segítséget ehhez a regisztrációhoz. Regsvr32.exe új függvényeket regisztrál. Ez az eszköz a Windows részét képezi.
Az új DLL-nek meg kell adnia DllRegisterServer és DllUnregisterServer belépési pontokat a Regsvr32.exeszámára. CryptoAPI függvények, például CryptRegisterOIDFunction vagy CryptUnregisterOIDFunction, használhatók ezeken a belépési pontokon, ahogy az alábbi példában is látható.
// The DllRegisterServer Entry Point
STDAPI DllRegisterServer(void)
{
if(!CryptRegisterOIDFunction(
X509_ASN_ENCODING, // Encoding type
CRYPT_OID_ENCODE_OBJECT_FUNC, // Function name
szOID_NEW_CERTIFICATE_TYPE, // OID
L"NewCert.dll", // Dll name
L"NewCertificateTypeEncodeObject" // Override function
)) // name
{
return E_FAIL;
}
else
{
return S_OK;
}
}
// The DllUnregisterServer Entry Point
STDAPI DllUnregisterServer(void)
{
HRESULT hr = S_OK;
if(!CryptUnregisterOIDFunction(
X509_ASN_ENCODING, // Encoding type
CRYPT_OID_ENCODE_OBJECT_FUNC, // Function name
szOID_NEW_CERTIFICATE_TYPE // OID
))
{
if(ERROR_FILE_NOT_FOUND != GetLastError())
hr = E_FAIL;
}
return hr;
}
Ezt a példát az új DLL-be kell lefordítani és csatolni. Ezt a két belépési pontot a függvény belépési pontjával együtt exportálni kell.
Az új funkciók számítógépre való telepítéséhez futtassa a Regsvr32.exe egy parancssorból, és adja meg az új DLL nevét és elérési útját. Regsvr32.exe a CryptRegisterOIDFunction függvényt a DllRegisterServer függvény belépési pontján keresztül éri el, és regisztrálja az új függvényt és a DLL-t.