Хорошо, я не могу это понять. Отладчик не дает много информации об этом конкретном исключении.Нарушение прав доступа: Плохая указка
Здесь функция вызывается:
NC_LIBEXPORT(VOID) ncKeyExpand(unsigned char* key, int initlen)
{
int abspos = initlen;
int curkpos = 0;
do
{
key[abspos] = key[curkpos];
++abspos;
++curkpos;
if(curkpos >= initlen)
curkpos = 0;
} while (curkpos < NC_KEY_MAX_LENGTH);
}
И нарушение прав доступа происходит на второй линии здесь:
unsigned char apkey[NC_KEY_MAX_LENGTH];
ncKeyExpand(&apkey[0], NC_PRIV_KEY_LENGTH);
Любое понимание, почему это происходит? Я ничего не делаю, это исправление.
Необработанное исключение в 0x776e7094 в тесте application.exe: 0xC0000005:
То есть точная ошибка.
Нарушение прав доступа.
Не имеют доступа к нарушениям, когда указатель указывает на недоступный адрес, например, если он был освобожден или вышел из сферы действия, или null и т. Д.? Если да, то почему он здесь поднимается? Массив символов прямо здесь.
Какие значения NC_KEY_MAX_LENGTH и NC_PRIV_KEY_LENGTH? –