Я ищу способ получить все хранилища системных сертификатов в любом местоположение (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?