| ||||
| ||||
Добрый день, не подскажете ли функцию, которая возвращает список всех сертификатов в хранилище? | ||||
Ответы: | ||||
| ||||
или хотябы получить их количество... | ||||
| ||||
Set st = CreateObject("CAPICOM.Store") Set Certificate = CreateObject("CAPICOM.Certificate") 'get user selected store name storeName = frmStore.storeName.options(frmStore.storeName.selectedIndex).value 'open selected store st.Open CAPICOM_CURRENT_USER_STORE, storeName, CAPICOM_STORE_OPEN_READ_WRITE | ||||
| ||||
Я, наверное не правильно что-то спросил... моя функция должна возвращать список сертификатов, которые лежат в личном хранилище... я делаю так PCryptoRecipients _CryptoService::GetAllCerts(){ PCCERT_CONTEXT nextCert = NULL; int countCerts = 0; // получаю количество сертификатов, но думаю, что это можно сделать красивее... while (!last){ nextCert = CertFindCertificateInStore(m_hCertStore, TYPE_DER, 0, CERT_FIND_ANY, NULL, nextCert); if (nextCert) countCerts++; } // это структура моя, которая содержит LPTCSTR массив и переменную с количеством массива PCryptoRecipients CertNames = AllocRecipients(countCerts); for(int i = 0; i<contCerts; i++) { nextCert = CertFindCertificateInStore(m_hCertStore, TYPE_DER, 0, CERT_FIND_ANY, NULL, nextCert); CertNames->recipients[i] = GetCertName(nextCert); // получаю имя сертификата } return CertNames; } Так вот вопрос: как мне не гонять целый цикл WHILE а узнать одним обращением, сколько сертификатов в моем хранилище? | ||||
| ||||
через CryptоAPI только перебором всех. | ||||
| ||||
Сердешно благодарю :-) | ||||
| ||||
eflb38h9azlqpil <a href = http://www.477944.com/695887.html > u0efmhsd </a> [URL=http://www.403552.com/781303.html] b253ldzks2 [/URL] f3ry2dvcsm | ||||
| ||||
eflb38h9azlqpil [URL=http://www.403552.com/781303.html] b253ldzks2 [/URL] f3ry2dvcsm | ||||
| ||||
eflb38h9azlqpil http://www.100159.com/172410.html f3ry2dvcsm | ||||
| ||||
eflb38h9azlqpil 5xhbs4zdx2f8krqhk f3ry2dvcsm | ||||