Fungsi CertOpenSystemStoreA (wincrypt.h)

Fungsi CertOpenSystemStore adalah fungsi yang disederhanakan yang membuka penyimpanan sertifikat sistem yang paling umum. Untuk membuka penyimpanan sertifikat dengan persyaratan yang lebih kompleks, seperti penyimpanan berbasis file atau berbasis memori, gunakan CertOpenStore.

Sintaks

HCERTSTORE CertOpenSystemStoreA(
  [in] HCRYPTPROV_LEGACY hProv,
  [in] LPCSTR            szSubsystemProtocol
);

Parameter

[in] hProv

Parameter ini tidak digunakan dan harus diatur ke 0.

Windows Server 2003 dan Windows XP: Handel penyedia layanan kriptografi (CSP). Atur hProv ke 0 untuk menggunakan CSP default. Jika hProv bukan 0, itu harus menjadi handel CSP yang dibuat dengan menggunakan fungsi CryptAcquireContext . Jenis data parameter ini adalah HCRYPTPROV.

[in] szSubsystemProtocol

String yang menamai penyimpanan sistem. Jika nama penyimpanan sistem yang disediakan dalam parameter ini bukan nama penyimpanan sistem yang ada, penyimpanan sistem baru akan dibuat dan digunakan. CertEnumSystemStore dapat digunakan untuk mencantumkan nama penyimpanan sistem yang ada. Beberapa contoh penyimpanan sistem tercantum dalam tabel berikut.

Nilai Makna
CA
Sertifikat otoritas sertifikasi .
MY
Penyimpanan sertifikat yang menyimpan sertifikat dengan kunci privat terkait.
AKAR
Sertifikat akar.
SPC
Sertifikat Penerbit Perangkat Lunak.

Mengembalikan nilai

Jika fungsi berhasil, fungsi mengembalikan handel ke penyimpanan sertifikat.

Jika fungsi gagal, fungsi akan mengembalikan NULL. Untuk informasi kesalahan yang diperluas, hubungi GetLastError.

Catatan Kesalahan dari fungsi yang disebut CertOpenStore disebarkan ke fungsi ini.
 

Keterangan

Hanya sertifikat pengguna saat ini yang dapat diakses menggunakan metode ini, bukan penyimpanan komputer lokal.

Setelah penyimpanan sistem dibuka, semua fungsi penyimpanan sertifikat standar dapat digunakan untuk memanipulasi sertifikat.

Setelah digunakan, toko harus ditutup dengan menggunakan CertCloseStore.

Untuk informasi selengkapnya tentang penyimpanan yang dimigrasikan secara otomatis, lihat Migrasi Penyimpanan Sertifikat.

Contoh

Contoh berikut menunjukkan metode yang disederhanakan untuk membuka penyimpanan sertifikat sistem yang paling umum. Untuk contoh lain yang menggunakan fungsi ini, lihat Contoh Program C: Operasi Penyimpanan Sertifikat.

//--------------------------------------------------------------------
// Declare and initialize variables.

HCERTSTORE  hSystemStore;              // system store handle

//--------------------------------------------------------------------
// Open the CA system certificate store. The same call can be
// used with the name of a different system store, such as My or Root,
// as the second parameter.

if(hSystemStore = CertOpenSystemStore(
    0,
    "CA"))
{
  printf("The CA system store is open. Continue.\n");
}
else
{
  printf("The CA system store did not open.\n");
  exit(1);
}

// Use the store as needed.
// ...

// When done using the store, close it.
if(!CertCloseStore(hSystemStore, 0))
{
  printf("Unable to close the CA system store.\n");
  exit(1);
}

Catatan

Header wincrypt.h mendefinisikan CertOpenSystemStore sebagai alias yang secara otomatis memilih versi ANSI atau Unicode dari fungsi ini berdasarkan definisi konstanta pra-prosesor UNICODE. Mencampur penggunaan alias encoding-netral dengan kode yang tidak mengodekan-netral dapat menyebabkan ketidakcocokan yang mengakibatkan kesalahan kompilasi atau runtime. Untuk informasi selengkapnya, lihat Konvensi untuk Prototipe Fungsi.

Persyaratan

   
Klien minimum yang didukung Windows XP [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2003 [hanya aplikasi desktop]
Target Platform Windows
Header wincrypt.h
Pustaka Crypt32.lib
DLL Crypt32.dll

Lihat juga

CertAddEncodedCertificateToStore

CertCloseStore

CertGetCRLContextProperty

CertOpenStore

CertSaveStore

Fungsi Penyimpanan Sertifikat