В чем разница билдингов между 2000 и до 7. Прото что собраные приложения под xp и выше на 2000 не идут я знаю. Но главный вопрос, если сборка происходит под 2000 на скорость работы в более поздних версиях это сказывается?
В общем случае ни в чём. Не идут только если заюзать экспорт, которого нет в 2000. Например. Код (Text): #if (NTDDI_VERSION >= NTDDI_WS03SP1) NTKERNELAPI VOID FASTCALL KeInitializeGuardedMutex ( __out PKGUARDED_MUTEX Mutex ); #endif GuardedMutex нет в 2000 и в ХР. Если заюзать KeInitializeGuardedMutex и собрать в окружении Server 2003, всё соберется т.к. NTDDI_VERSION >= NTDDI_WS03SP1. Но т.к. такого экспорта нет в 2000 и ХР загрузчик просто не сможет его разрешить и откажется грузить на этих системах. В общем случае нет.
InterlockedIncrement в старых хидерах приведет к вызову функции, а в новых к lock inc. Компиляторы тоже разные, новые делают более качественный и быстрый код.