jackbsoder
Junior Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Для тех, у кого ранее был установлен Outpost v9.x и вы пытаетесь обновить до последней версии. Внимание: есть шанс, что вы потеряете статус "возможно обновление поверх старой версии с сохранением всей конфигурации" и попадете в статус "возможна установка только с нуля, с созданием новой конфигурации" Например, на одной из моих систем были установлены куча Microsoft Visual C++ Redistributable packages, просто штук 15 разных версий. Но нас интересуют основные вот эти: Microsoft Visual C++ 2013 Redistributable (x64) - 12.0.30501 Microsoft Visual C++ 2013 Redistributable (x64) - 12.0.40660 Microsoft Visual C++ 2013 Redistributable (x86) - 12.0.30501 Microsoft Visual C++ 2013 Redistributable (x86) - 12.0.40660 Казалось бы по прошлым инструкциям, что надо просто перед установкой новой версии Outpost (обновлением или просто установкой) деинсталлировать эти пакеты и все пройдет успешно? Но не так-то было. Я деинслалировал их все и все равно по итогу словил ситуацию, что висит окно установки этого пакета от Outpost и ничего не происходит, по таймауту возвращается -1 и установка обламывается. Более того, как оказалось, если делать обновление Outpost, то после такого "облома" обновления, он удаляет весь Outpost из реестра (файлы остаются) и все последующие запуски инсталлятора не будут ловить, что предыдущая версия установлена и возможно обновление (с обновлением конфигурации, а не созданием с нуля). Как оказалось, причина в том, что на этой системе было установлено еще приложение (у вас в теории оно может быть другим, не как у меня), к которому в базе MSI Installer числился ЗАВИСИМОСТЬ от 12.0.40660 redistributable. И из-за этого, хотя в базе Programs визуально доступной, деинсталляция прошла успешно, фактически это было не так! Вот, что писалось в логе установки vcredist из установщика Outpost (в %TEMP% системном лог типа dd_vcredist_amd64_20240224040502.log): Код: [0740:1AA8][2024-02-24T04:03:14]i001: Burn v3.7.2829.0, Windows vX.X (Build XXXX: Service Pack X), path: C:\ProgramData\Package Cache\{050d4fc8-5d48-4b8f-8972-47c82c46020f}\vcredist_x64.exe, cmdline: '/uninstall -burn.unelevated BurnPipe.{9E013C5F-1B7A-4DFB-B7CA-E6FE233015B2} {25048780-44CC-4A1D-931C-9EF3510AE88A} 6492' [0740:1AA8][2024-02-24T04:03:14]i000: Setting string variable 'WixBundleLog' to value 'C:\Users\ADMINI~1\AppData\Local\Temp\dd_vcredist_amd64_20240224040314.log' [0740:1AA8][2024-02-24T04:03:14]i100: Detect begin, 2 packages [0740:1AA8][2024-02-24T04:03:14]i108: Detected compatible package: vcRuntimeMinimum_x64, provider: Microsoft.VS.VC_RuntimeMinimumVSU_amd64,v12, installed: {CB0836EC-B072-368D-82B2-D3470BF95707}, version: 12.0.40660, chained: {A749D8E6-B613-3BE3-8F5F-045C84EBA29B} [0740:1AA8][2024-02-24T04:03:14]i103: Detected related package: {CB0836EC-B072-368D-82B2-D3470BF95707}, scope: PerMachine, version: 12.0.40660.0, language: 0 operation: Downgrade [0740:1AA8][2024-02-24T04:03:14]i108: Detected compatible package: vcRuntimeAdditional_x64, provider: Microsoft.VS.VC_RuntimeAdditionalVSU_amd64,v12, installed: {5740BD44-B58D-321A-AFC0-6D3D4556DD6C}, version: 12.0.40660, chained: {929FBD26-9020-399B-9A7A-751D61F0B942} [0740:1AA8][2024-02-24T04:03:14]i103: Detected related package: {5740BD44-B58D-321A-AFC0-6D3D4556DD6C}, scope: PerMachine, version: 12.0.40660.0, language: 0 operation: Downgrade [0740:1AA8][2024-02-24T04:03:14]i101: Detected package: vcRuntimeMinimum_x64, state: Obsolete, cached: None [0740:1AA8][2024-02-24T04:03:14]i101: Detected package: vcRuntimeAdditional_x64, state: Obsolete, cached: None [0740:1AA8][2024-02-24T04:03:14]i052: Condition 'VersionNT64 >= v6.0 OR (VersionNT64 = v5.2 AND ServicePackLevel >= 1)' evaluates to true. [0740:1AA8][2024-02-24T04:03:14]i199: Detect complete, result: 0x0 [0740:1AA8][2024-02-24T04:03:15]i200: Plan begin, 2 packages, action: Uninstall [0740:1AA8][2024-02-24T04:03:15]w327: Will not uninstall package: {5740BD44-B58D-321A-AFC0-6D3D4556DD6C}, found dependents: 1 [0740:1AA8][2024-02-24T04:03:15]w328: Found dependent: {71688083-99e8-4e10-9522-8e98a130c438}, name: Microsoft Visual Studio Ultimate 2013 with Update 3 [0740:1AA8][2024-02-24T04:03:15]w327: Will not uninstall package: {CB0836EC-B072-368D-82B2-D3470BF95707}, found dependents: 1 [0740:1AA8][2024-02-24T04:03:15]w328: Found dependent: {71688083-99e8-4e10-9522-8e98a130c438}, name: Microsoft Visual Studio Ultimate 2013 with Update 3 | Т.е. зависимость была ("found dependents: 1") у "Microsoft Visual Studio Ultimate 2013 with Update 3" от этих библиотек и поэтому uninstall отказывался их сносить фактически ("Will not uninstall package"), а "старый" redist отказывался реально ставиться, т.к. по его мнению это "downgrade". Я поковырялся вручную с базой MSI, поудалял всякое (с бэкапом), но не помогло. Долго ковыряться с этим не хотелось, поэтому проще оказалось на этой машине снести Visual Studio полностью, тогда зависимости исчезли. После этого инсталлятор Outpost заработал без проблем. Так же опишу, как можно было восстановить статус "обновления" Outpost, после того, как инсталлятор уже обломался разок вот так из-за библиотек. Во-первых, перед всеми манипуляциями я полностью сохранил каталог Outpost со всеми конфигами и файлами. Во-вторых, у меня был дистрибутив старой версии, которая была установлена и которую я обновлял. Соответственно, что я сделал, чтобы подцепить старые конфиги. (Да, я знаю, что в Outpost есть функция Import/Export, но я не уверен, что она работает между версиями - даже, скорее, уверен, что не работает. Формат конфигов мог меняться и апдейт конфигов до текущей версии делает именно инсталлятор). Я снес полностью текущую установку. Вообще. Обращаю внимание: когда делается такой деинсталл, Outpost не спрашивает, сохранять ли конфиги и другие файлы, а полностью, прям вообще целиком, даже с чужими файлами, удаляет свой каталог (поэтому перед началом действий бэкап был важен и он помог). Дальше я просто поставил старую версию с нуля. После установки НЕ перезагружал компьютер. А зашел в конфиг (выбрал опцию показать настройки). Переключил режим везде в Disabled, включая самозащиту (это важно). После чего вышел. Дальше поверх файл Outpost и нового нулевог конфига закинул забэкапленные файлы. После чего перезагрузился. Таким образом я вернул систему в состояние как была до попыток обновления. И вот теперь, когда на системе уже не было "мешающих" redistributable и зависимостей, я смог спокойно взять последний установщик Outpost v9.3 и установить поверх, путем "обновления" и конвертирования старой конфигурации в новую. Может, кому-то когда-то это поможет, чтобы не удалять лишнее из пакетов (в попытках понять, что мешает) и не потерять старый конфиг Outpost (бэкап + реинсталл + апдейт). Не забыть после установки переустановить удаленные redist'ы, взято из прошлой моей инструкции: Цитата: | Всего записей: 136 | Зарегистр. 08-08-2009 | Отправлено: 02:06 25-02-2024 | Исправлено: jackbsoder, 02:45 25-02-2024 |
|