Полагаю, что вы можете, но если вам не нужна эта конкретная версия, самое простое - загрузить последнюю версию Windows SDK вместо:
Это более поздняя версия и может (IIRC) автоматически интегрироваться в VS2005.
Если возникнет проблема с этим или с SDK VS2010, то это будет потому, что файлы .lib несовместимы, например, через изменение формата объектного файла или через изменение промежуточного представления оптимизации всей программы. Однако большинство, если не все .libs в SDK, будут просто заголовками DLL, так что это не должно быть проблемой. (В примечаниях к выпуску SDK есть ссылка на поддерживаемое исправление , которое улучшает совместимость между объектами VS2005 и VS2008, но, похоже, VS2005 SP1 обычно будет достаточно.)
Существует небольшая вероятность того, что заголовочные файлы могут не работать (или могут предполагать другой набор определений по умолчанию), но в целом заголовочные файлы Windows очень осторожны с определениями и тестированием версий, и я сомневаюсь, что это будет проблемой.
Если вы спрашиваете, можете ли вы использовать ATL + MFC из более поздней версии, тогда я думаю, что это менее очевидно и может потребовать перекомпиляции их исходных кодов в более старом компиляторе. В этом случае я думаю, что лучшим вариантом может быть обновление до VS2010, если это возможно.