From dd9a809a58d55c4ee32aa101b2e6e6eaf4bf8a2e Mon Sep 17 00:00:00 2001 From: hakril Date: Thu, 15 May 2025 09:33:17 +0200 Subject: [PATCH] Add CertificateStore.from_user_store --- windows/crypto/certificate.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/windows/crypto/certificate.py b/windows/crypto/certificate.py index 9570dc5..7576c75 100644 --- a/windows/crypto/certificate.py +++ b/windows/crypto/certificate.py @@ -152,6 +152,14 @@ class CertificateStore(gdef.HCERTSTORE): res = winproxy.CertOpenStore(gdef.CERT_STORE_PROV_SYSTEM_A, DEFAULT_ENCODING, None, gdef.CERT_SYSTEM_STORE_LOCAL_MACHINE | gdef.CERT_STORE_READONLY_FLAG, store_name) return ctypes.cast(res, cls) + @classmethod + def from_user_store(cls, store_name, user=True): + """Create a new :class:`CertificateStore` from system store ``store_name`` + (see `System Store Locations `_) + """ + res = winproxy.CertOpenStore(gdef.CERT_STORE_PROV_SYSTEM_A, DEFAULT_ENCODING, None, gdef.CERT_SYSTEM_STORE_CURRENT_USER | gdef.CERT_STORE_READONLY_FLAG, store_name) + return ctypes.cast(res, cls) + @classmethod def new_in_memory(cls): """Create a new temporary :class:`CertificateStore` in memory"""