powered by simpleCommunicator - 2.0.58     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Помогите разобраться с кодом. CryptoAPI.
9 сообщений из 9, страница 1 из 1
Помогите разобраться с кодом. CryptoAPI.
    #39880575
listtoview
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нужно по контексту сертификата получить открытый ключ в Base64.
Взял пример отсюда:
https://stackoverflow.com/questions/55151904/how-to-get-the-public-key-from-a-certificate-in-windows-system-certstore
После вызова декода в ansi получаю пустую ссылку на результат.
Скрин прикрепляю.
...
Рейтинг: 0 / 0
Помогите разобраться с кодом. CryptoAPI.
    #39880578
listtoview
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Правильно ли я понимаю?
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
CryptDecodeObjectEx(
    _In_ DWORD dwCertEncodingType,
    _In_ LPCSTR lpszStructType,
    _In_reads_bytes_(cbEncoded) const BYTE *pbEncoded,
    _In_ DWORD cbEncoded,
    _In_ DWORD dwFlags,
    _In_opt_ PCRYPT_DECODE_PARA pDecodePara,
    _Out_opt_ void *pvStructInfo,
    _Inout_ DWORD *pcbStructInfo
    );



функция последними двумя параметрами принимает указатели, а я передаю ссылки
может в этом проблема?
...
Рейтинг: 0 / 0
Помогите разобраться с кодом. CryptoAPI.
    #39880591
Фотография Cerebrum
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
listtoviewфункция последними двумя параметрами принимает указатели, а я передаю ссылки
может в этом проблема?
последними двумя параметрами ты передаешь указатели
у тебя же операция взятия адреса

Код: plaintext
1.
2.
3.
4.
int n = 3;
int& s = n; <- вот ссылка на n

int* pN = &n; <- указатель на n
...
Рейтинг: 0 / 0
Помогите разобраться с кодом. CryptoAPI.
    #39880594
Фотография Cerebrum
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
listtoviewПосле вызова декода в ansi получаю пустую ссылку на результат.
а проверять GetLastError не царское это дело, да ?
...
Рейтинг: 0 / 0
Помогите разобраться с кодом. CryptoAPI.
    #39880595
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
listtoview, очень странно что ты не интересуешся результатом который возвращает эта функция.
Почитай тут https://docs.microsoft.com/en-us/windows/win32/api/wincrypt/nf-wincrypt-cryptdecodeobjectex
И почитай как работает функция https://docs.microsoft.com/en-us/windows/win32/api/errhandlingapi/nf-errhandlingapi-getlasterror

Это основы разработки в Windows-API и любой трабл-шутинг надо начинать с анализа кода ошибки.
...
Рейтинг: 0 / 0
Помогите разобраться с кодом. CryptoAPI.
    #39880845
listtoview
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Cerebrumlisttoviewфункция последними двумя параметрами принимает указатели, а я передаю ссылки
может в этом проблема?
последними двумя параметрами ты передаешь указатели
у тебя же операция взятия адреса

Код: plaintext
1.
2.
3.
4.
int n = 3;
int& s = n; <- вот ссылка на n

int* pN = &n; <- указатель на n


да, все норм
...
Рейтинг: 0 / 0
Помогите разобраться с кодом. CryptoAPI.
    #39880862
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
listtoviewфункция последними двумя параметрами принимает указатели, а я передаю ссылки
может в этом проблема?
Ты передаешь указатели. Оператор & перед переменной это получение указателя на переменную. В параметрах & это ссылка.
Такой вот он С++
...
Рейтинг: 0 / 0
Помогите разобраться с кодом. CryptoAPI.
    #39881037
listtoview
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima Tlisttoviewфункция последними двумя параметрами принимает указатели, а я передаю ссылки
может в этом проблема?
Ты передаешь указатели. Оператор & перед переменной это получение указателя на переменную. В параметрах & это ссылка.
Такой вот он С++
а не звездочку в параметрах надо?
...
Рейтинг: 0 / 0
Помогите разобраться с кодом. CryptoAPI.
    #39881042
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
listtoviewDima Tпропущено...

Ты передаешь указатели. Оператор & перед переменной это получение указателя на переменную. В параметрах & это ссылка.
Такой вот он С++
а не звездочку в параметрах надо?
В параметрах звездочку
Код: plaintext
1.
foo(int *x)


для получения указателя &
Код: plaintext
1.
2.
int i = 7;
foo(&i);
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Помогите разобраться с кодом. CryptoAPI.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]