В программе используется классическая схема с кодами ошибок. Дальше должен идти анализ кода ошибки. Все коды, кроме одного, меня не интересовали. Интересовал код номер 7 (у него ещё было символическое имя, но в данном тексте оно будет только мешать).
if(nRes==7)
{
//...
}
И в общем выяснилось, что nRes тут равен единице. Единица обозначала совсем другую ошибку, которая не возникала. А седьмая возникала -- и там в коде так и было написано -- return 7; Это озадачивало. Выходило, что семёрка при возврате конвертируется в единицу. Но почему? И почему именно единицу?
Ответ (увы, в телеграме будет виден сразу):
(открыть ответ)