Я прочитал OpenSSL FAQ и сделал попробуйте добавить код, который вызывает инициализацию функцию и / или включая applink.c (закомментированный ниже), но все безрезультатно.
Кодекс был составлен следующим образом:
cl.exe / NOLOGO / MD / GR / EHa / W3 / wd4068 test.cpp kernel32.lib user32.lib ssleay32.lib libeay32.lib / ссылка
[Test.cpp]
#включают
#включают
#включают
#включают
//#включают
используя патезрас;
ИНТ основной (интермедиат ARGC, символ * ARGV [])
{
// SSL_library_init ();
// CRYPTO_malloc_init ();
INT Num, bytes_read, bytes_written;
символ без знака входных данных, [AES_BLOCK_SIZE];
символ без знака OutData [AES_BLOCK_SIZE];
символ без знака CKEY [] = "thiskeyisverybad";
символ без знака ivec [] = "dontusethisinput";
AES_KEY ключ;
AES_set_encrypt_key (CKEY, 128, &ключ);
ifstream inpf ( "Икс", ИОС :: в | ИОС :: бинарные);
ofstream outf ( "Y", IOS :: из | ИОС :: бинарные);
в то время как (истина)
{
bytes_read = inpf.rdbuf () ->sgetn ((символ *) входные данные,, AES_BLOCK_SIZE);
AES_cfb128_encrypt (входные данные,, OutData, bytes_read, &ключ, ivec, &Num, AES_ENCRYPT);
bytes_written = outf.rdbuf () ->sputn ((символ *) OutData, bytes_read);
если (bytes_read < AES_BLOCK_SIZE)
ломать;
}
}
Если кто-то может увидеть какие-либо очевидные проблемы с этим кодом или опции компилятора, я действительно ценю головы.
С Уважением,
Ян.