Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Dukungan untuk mendaftarkan fungsionalitas baru dalam registri sistem harus disediakan di DLL baru bersama dengan fungsi baru. Fungsi Dukungan OID memberikan bantuan terkait pendaftaran ini. Regsvr32.exe mendaftarkan fungsi baru. Alat ini disertakan dengan Windows.
DLL baru harus menyediakan titik masuk DllRegisterServer dan DllUnregisterServer untuk digunakan oleh Regsvr32.exe. Fungsi CryptoAPI , seperti CryptRegisterOIDFunction atau CryptUnregisterOIDFunction, dapat digunakan dalam titik masuk ini, seperti yang ditunjukkan dalam contoh berikut.
// 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;
}
Contoh ini harus dikompilasi dan ditautkan ke DLL baru. Kedua titik masuk ini, bersama dengan titik masuk fungsi, harus diekspor.
Untuk menginstal fungsionalitas baru di komputer, jalankan Regsvr32.exe dari prompt perintah, menentukan nama dan jalur DLL baru. Regsvr32.exe mengakses fungsi CryptRegisterOIDFunction melalui titik entri fungsi DllRegisterServer dan mendaftarkan fungsi baru dan DLL.