| ||||
| ||||
Доброго времени суток. При выполнении следующего кода возникает ошибка: ERROR_ADAP_HDW_ERR. Подскажите, пожалуйста, возможную причину появления оной. if ((pRcpCert = read_cert_from_file(CertFileName)) == NULL) { printf("Error %x during read_cert_from_file()!\n", GetLastError()); goto done; } ContainerName = NULL; ContainerMode = 0; if(!MyAcquireContext(&hProv, ContainerName, ContainerMode, &vTable)) { printf("Error %x during CryptAcquireContext(OpenKeySet)!\n", GetLastError()); goto done; } if(!MyGetUserKey(hProv, AT_KEYEXCHANGE, &hExchangeKeyPair)) { printf("Error %x during CryptGetUserKey!\n", GetLastError()); goto done; } if (!CryptImportPublicKeyInfoEx(hProv, X509_ASN_ENCODING | PKCS_7_ASN_ENCODING, &pRcpCert->pCertInfo->SubjectPublicKeyInfo, CALG_GR3410, 0, NULL, &hPublicKey)) { printf("Error %x during CryptImportPublicKey!. 1.\n", GetLastError()); goto done; } | ||||
Ответы: | ||||
| ||||
Похоже, речь идёт об ошибке 0x57 = ERROR_INVALID_PARAMETER, а не 57 = ERROR_ADAP_HDW_ERR (которая совсем не в тему). | ||||
| ||||
У меня тоже такая-же проблема. Хотя вроде все параметры правельно заданы. Как определить какие крипто провайдеры есть на моей машине? | ||||
| ||||
Получить список криптопровайдеров можно функцией CryptEnumProviders. | ||||
| ||||
Да провайдеры установлены. Всё равно выдаётся эта ошибка. А как на счёт "Microsoft Cryptography API May Not Work If the Default CSP Has Been Set Incorrectly" Может кто сталкивался? | ||||