asasha,
Vivien для этого топика это оффтоп - предмет ветки по программированию, но, чтобы раз и навсегда закрыть эту тему, постараюсь популярно объяснить:
1. Все языки высокого уровня (VB, Foxpro, Delphi, MSC, BorlandC, VC, VC++..... .Net, java ...) для упрощения их использования имеют так называемые функции (набор команд, вызываемый одной строкой с определенными параметрами). Эти функции поставляются как в виде исходников, и могут быть скомпилированы "правильными и не ленивыми" программистами в исполняемый модуль самой программы (при этом компилируются только те функции, которые были использованы в данной программе), так и в виде отдельных, уже скомпилированных, так называемых runtime библиотек, содержащих полный набор функций для конкретной версии конкретного языка. При использовании этих библиотек сама программа может занимать совсем немного места, но без необходимой библиотеки она не запустится.
2. Разные версии языков имеют свои runtime библиотеки и программы, использующие их, ищут в системе именно свою версию - т.е. программа написанная на Visual C++ 2005 будет искать библиотеки именно для Visual C++ 2005, соответственно программа, написанная на Visual C++ 2008 аналогично будет искать библиотеки для Visual C++ 2008. Библиотеки эти будут иметь разные имена и содержать разные наборы функций. Таким образом, поставив только библиотеки от Visual C++ 2008 вы не закроете потребности программы, написанной на Visual C++ 2005 (даже функции с одинаковыми именами могут иметь различные наборы параметров и даже разный смысл, хотя этого и стараются избежать).
3. Различные SP содержат тот же набор функций, что и библиотеки без SP, но только с исправленными ошибками, поэтому, как правило, нет необходимости в установке и библиотек Visual C++ 2005, и Visual C++ 2005 SP1 - достаточно последнего набора.
4. Из пункта 3. вытекает, что Visual C++ 2005 SP1 при установке пытается снести Visual C++ 2005 без SP1 и ищет его msi-инсталлятор - почему не находит - это уже отдельная тема.
Программисты из M$, собирающие эти наборы, последнее время гонят откровенную лажу - при установке msi-файлы и остальные компоненты дистрибутива копируются зачем-то в корневой каталог диска, с которого идет установка (полные уроды
) и мусор за собой не убирают. А что касается msi-инсталляторов - так они и вовсе должны складываться в другое, строго отведенное для них место (например в \Windows\Downloaded Installations), а в реестре об этом оставлять запись.
Отсюда и все проблемы с этими библиотеками
.