Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Visual C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 27.10.2014, 23:32   #11
sinestro
Пользователь
 
Регистрация: 24.02.2012
Сообщений: 88
По умолчанию

проблема решилась таким образом: нужно было создавать контекст провайдера и получать публичный ключ вот так
Код:
                                 if (!CryptAcquireContext(&hProv, "test",NULL, PROV_RSA_FULL, 0))
				 { 
					if (GetLastError() == NTE_BAD_KEYSET) 
					{
						if(!CryptAcquireContext(&hProv, "test", NULL, PROV_RSA_FULL, CRYPT_NEWKEYSET))
						{ 
							MessageBox::Show("не удаётся создать контекст");;
						}
					} 
				 } 
				 
				 // Получение ключа для экспорта ключа шифрования
				 if(!CryptGetUserKey( hProv,  AT_KEYEXCHANGE,  &hPublicKey))
				 {
					 if(NTE_NO_KEY == GetLastError())
					 {
						 // No exchange key exists. Try to create one.
						 if(!CryptGenKey( hProv,  AT_KEYEXCHANGE,  CRYPT_EXPORTABLE,  &hPublicKey))
						 {  
							 MessageBox::Show("не удалось создать публичный ключ"); 
						 }
					 } 
				 }
sinestro вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
WinCrypt и c++.net sinestro Общие вопросы C/C++ 3 26.10.2014 02:01
Ключ реестра KolaSh Общие вопросы Delphi 7 30.05.2013 08:37
Составить список стран, в которые экспортируется данный товар, и общий объем его экспорта - си - C++ kaizer131 Помощь студентам 0 21.02.2010 16:16
Ключ на ДЕЛФИ 5! sting Помощь студентам 1 28.03.2009 04:43