Я ищу способ получить все хранилища системных сертификатов в любом местоположении (CurrentUser
или LocalMachine
).
Перечисление StoreLocation
явно не будет включать пользовательские хранилища сертификатов, созданные с помощью X509Store(String)
или X509Store(String, StoreLocation)
. Также это не определяет другие стандартные магазины , такие как SPC
или Request
.
Я посмотрел на crypto32.dll
API и не увидел там ничего релевантного, кроме регистрации / отмены регистрации.
В реестре отображаются хранилища, не основанные на файловой системе (например, HKEY_CURRENT_USER\SOFTWARE\Microsoft\SystemCertificates\Root
). Поставщик сертификатов PowerShell может опрашивать магазины. Это - запрос реестра - что он делает под капотом? Будет ли такое ручное решение переносимым между XP / Vista / 7/8?