Я создаю установщик элемента управления ActiveX в VS2008, в котором для установки используются модули слияния CRT и MFC. Когда мой элемент управления пытается зарегистрироваться в Windows 7, происходит сбой.
Dependency Walker говорит, что мне не хватает зависимостей mfc90u.dll, msvcr90.dll и msvcp90.dll при попытке зарегистрировать мой элемент управления, и установка не удалась. Должны ли модули слияния позаботиться об этом? Мой выходной OCX регистрируется с опцией vsdrpCOMSelfReg. Из того, что я читаю на других форумах, это может быть не самый лучший метод, что мне следует попробовать на этом этапе?
Установка отлично работает на Windows XP.
Обновление от 08.08.2010:
Изменилось на vsdrpCOM, и установка прошла (не удивительно), однако впоследствии msvcr90.dll не был найден. Я думал, что это было обработано модулем слияния для CRT (microsoft_vc90_crt_x86.msm)? В Windows XP Dependency Walker находит его в Windows / System32, а не в папке SxS, как я ожидал. В Windows 7 его просто нет. Должен ли я сам положить msvcr90.dll в Windows / System32? Это не похоже на это.
Обновление от 20.04.2010:
Похоже, что Dependency Walker находит msvcr90.dll в зависимости самого элемента управления на верхнем уровне, хотя msvcp90.dll и mfc90u.dll оба имеют неявные / перенаправленные зависимости и для msvcr90.dll, и они не могут быть решено в зависимости ходок. Элемент управления, однако, регистрируется нормально и выполняет загрузку этих библиотек. Это то, что можно игнорировать?