MVV писал(а):Интересно, что у тебя там используется такого, что 6-я не скомпилит.
А чёрт его знает, мне лень было разбираться.

И так четыре разные Студии подгонял друг под друга, в 2003-й само не скомпилировалось — ну я и забил. Может, и действительно, достаточно названных тобой исправлений, только я от шестой Студии уже практически полностью отказался. Хоть она мне и нравится до сих пор, слишком много накопилось в ней проблем, которые не решаются или решаются с большим напрягом.
MVV писал(а):Ещё можно попробовать в опциях проекта в 10 студии включить инструментальный набор от 9 версии. Но тогда возможно и библиотеки по умолчанию будут от 9-ки, т.е. особо заметной компактности не будет.
Смысла нет, для меня пока основная среда 2008, в 2010 я только перекомпилировал. А если поставить 9-й тулкит, то она и запустит тот же набор компиляторов-линкеров от 2008-й Студии.
MVV писал(а):И, конечно, есть плагин FileInfo, который позволяет сразу проверить, какие импорты отсутствуют в системе, не останавливаясь на каждой отдельно взятой функции. Но это уже проверять нужно на машине у Avada.
Так в этом-то и проблема.

У меня всё работало нормально, и проверять смысла не было. А версия, скомпилированная в 2008-й Студии работает даже под Win2000, это я проверил в виртуалке. Просто когда перекомпилировал в 2010-й и увидел, что размер файла получился меньше, решил распространять её, а перепроверить не удосужился. Тоже думал, что раз константы прописаны, то всё в порядке должно быть…
MVV писал(а):не думаю, что тебе нужны строки длиннее 1024 символов
Тут дело не столько в том, нужны или не нужны, сколько в том, что придётся возиться с условной компиляцией. Использовать sprintf везде я не хочу: будут ворнинги. Отключать ворнини не хочу: могу забыть об этой проблеме в другом месте, где строка приходит из Тотала и может иметь произвольную длину, и я из-за отсутствия ворнинга провороню дыру. По-хорошему надо переделать на шаблонный вариант вместо явного указания размера, а потом задефайнить sprintf_s на sprintf для старых Студий, но для этого придётся делать статическую инициализацию вместо new/delete, а пихать два килобайта в стек — не самая лучшая практика (а глобальные переменные недолюбливаю).
MVV писал(а):это неявный BUF_SZ для sprintf
В каком смысле "неявный"? У самого sprintf нет никаких ограничителей, будет писать, пока строка формата не кончится, а поместилось в буфер или нет, его не волнует. Потому и рекомендуется использование sprintf_s.