Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Podpora registrace nových funkcí v systémovém registru musí být k dispozici v nové knihovně DLL spolu s novou funkcí. podpůrné funkce OID poskytují pomoc s touto registrací. Regsvr32.exe zaregistruje nové funkce. Tento nástroj je součástí Windows.
Nová knihovna DLL musí poskytovat DllRegisterServer a DllUnregisterServer vstupní body pro použití Regsvr32.exe. funkce CryptoAPI, jako jsou CryptRegisterOIDFunction nebo CryptUnregisterOIDFunction, lze použít v těchto vstupních bodech, jak ukazuje následující příklad.
// 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;
}
Tento příklad musí být zkompilován a propojen do nové knihovny DLL. Tyto dva vstupní body spolu s vstupním bodem funkce musí být exportovány.
Pokud chcete nainstalovat nové funkce do počítače, spusťte Regsvr32.exe z příkazového řádku a zadejte název a cestu nové knihovny DLL. Regsvr32.exe přistupuje k funkci CryptRegisterOIDFunction prostřednictvím vstupního bodu funkce DllRegister Server a zaregistruje novou funkci a knihovnu DLL.