Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Системное программирование и WinAPI > Работа с хранилищем сертификатов


Автор: xreal 17.10.2012, 12:04
Здравствуйте!

Возникла следующая проблема: я пишу dll-ку в ней мне нужна работа с хранилищем сертификатов, я подключаю 

Код
#pragma comment(lib,"crypt32.lib")

#include <wincrypt.h>

#include <windows.h>

Но вижу такие ошибки:

Код
error C2065: 'HCERTSTORE' : undeclared identifier

error C2146: syntax error : missing ';' before identifier 'hStore'

error C2065: 'hStore' : undeclared identifier

error C2065: 'PCCERT_CONTEXT' : undeclared identifier

error C2146: syntax error : missing ';' before identifier 'pMyCertContext'

и т.д.

Автор: xvr 17.10.2012, 12:12
Поставьте #include <wincrypt.h> после #include <windows.h> (а может и вообще выкинуть можно - windows.h много чего подключает  smile )

Автор: xreal 17.10.2012, 12:16
xvr, пробовал не помогало, сейчас сделал так:

Код
#pragma comment(lib,"crypt32.lib")

#define _WIN32_WINNT 0x0500

#include <windows.h>
#include <wincrypt.h>


И ошибок компиляции нет (благодаря этому #define _WIN32_WINNT 0x0500). 

Автор: xvr 17.10.2012, 12:19
Цитата(xreal @  17.10.2012,  12:16 Найти цитируемый пост)
(благодаря этому #define _WIN32_WINNT 0x0500).  

Это и так должно было стоять (сама VS должна была вставить). У вас видимо какая то древняя версия (или проект был безжалостно почикан ручками  smile  )

Автор: xreal 17.10.2012, 12:21
Ну да, стоит признаться, что компилирую старым SDK...

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)