Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Новый участник


Сообщения: 5
Благодарности: 0

Профиль | Отправить PM | Цитировать


Уважаемый Lisabon и ребята, досконально разбирающиеся в этом, прошу помочь со следующими вопросами. Читая комментарии, сложилась вот такая картина и хотелось бы разобраться в ней до конца, да и для остальных пользователей будет, так сказать, гайд со всеми главными вопросами.



1. Раньше был пакет Extended, в котором были не заглушки, а полноценные все старые Redistributable Package. И раз автор оставил только последние версии, а из старых сделал заглушки, которые нужны, на сколько я понял только для самих инсталляторов игр/программ, то выходит каждая последующая версия Redistributable Package заменяет собой предыдущие и игра/программа будет нормально запускаться и работать с последней версией Redistributable Package? То есть если игра/программа разрабатывалась и затачивалась под Microsoft Visual C++ 2005 Redistributable - x64 8.0.56336 который будет в системе как заглушка, то она спокойно будет запускаться и функционировать на Microsoft Visual C++ 2005 Redistributable - x64 8.0.61000 тобишь последней версии?



2. Теперь, что касаемо инсталляторов

2.1 В большинстве случаев, инсталлятор игры/программы не проверяет наличие установленной или самой последней версии Redistributable Package и производит установку Redistributable Package, той версии, что есть в инсталляторе игры/программы. Во времня установки Redistributable Package, используются уже встроенные механизмы инсталлятора Redistributable Package на проверку установленной версии и если уже есть эта версия в системе, а она уже есть в виде заглушек, то установка Redistributable Package не происходит. Далее инсталлятор игры/программы производит установку игры/программы.

Например представим, что в системе нету ни одного Redistributable Package, нам надо установить игру/программу, которой нужен Microsoft Visual C++ 2008 Redistributable - x64 9.0.21022.0, в инсталляторе этой игры/программы он есть, после запуска инсталлятора игры/программы он запустит в свою очередь инсталлятор Microsoft Visual C++ 2008 Redistributable - x64 9.0.21022.0 тот запустит свою встроенную проверку установленных версий Redistributable Package и так как в системе ничего нету, установится Microsoft Visual C++ 2008 Redistributable - x64 9.0.21022.0. Теперь представим, что в системе установлен пакет от Lisabon, итак мы запускаем инсталлятор игры/программы, тот запускает инсталлятор Microsoft Visual C++ 2008 Redistributable - x64 9.0.21022.0 этот в свою очередь запускает свою встроенную проверку установленных версий и видит, что такая версия имеется (в виде заглушки, но он этого не понимает) и после обнаружения того, что нужно инсталлятор Microsoft Visual C++ 2008 Redistributable - x64 9.0.21022.0 прерывает свою установку и начинается установка игры/программы. Но после установки игры/программы, запускаться и работать она будет уже не с Microsoft Visual C++ 2008 Redistributable - x64 9.0.21022.0, а с Microsoft Visual C++ 2008 Redistributable - x64 9.0.30729.6161 потому как это последняя версия этого Redistributable Package, а каждая последующая версия включает в себя файлы всех предыдущих. Правильно?



2.2 Есть инсталляторы игр/программ, которые проверяют наличие версии и требуют именно ту версию, которая нужна. Без установленной необходимой версии, инсталлятор отказывается производить установку игры/программы, но так как заглушка уже есть в системе, то инсталлятор игры/программы производит установку игры/программы.

Например представим, что в системе нету ни одного Redistributable Package, нам надо установить игру/программу, которой нужен Microsoft Visual C++ 2008 Redistributable - x64 9.0.21022.0, после запуска инсталлятора игры/программы, инсталлятор проверит есть ли нужная версия и если нету, он либо устанавливает ее, либо если в него не встроен Microsoft Visual C++ 2008 Redistributable - x64 9.0.21022.0 сообщит о том, что нету того, что надо и оборвет установку. Теперь представим, что у нас установлен пакет от Lisabon, мы запускаем инсталлятор игры/программы он проверит есть ли в системе Microsoft Visual C++ 2008 Redistributable - x64 9.0.21022.0, увидит, что есть (в виде заглушки, но он этого не понимает) и начнет установку игры/программы. Но после установки игры/программы, запускаться и работать она будет уже не с Microsoft Visual C++ 2008 Redistributable - x64 9.0.21022.0, а с Microsoft Visual C++ 2008 Redistributable - x64 9.0.30729.6161 потому как это последняя версия этого Redistributable Package, а каждая последующая версия включает в себя файлы всех предыдущих. Правильно?



Небольшое пояснение перед следующим пунктом:

Заглушки (Folse) - это старые версии Redistributable Package, при том, что в msi-файлах удалены файлы и убрана проверка на поиск и удаление старых версий, что дает установить все старые версии без всяких проблем. При установке заглушек (Folse), получаем необходимые записи в реестр, а также msi-файлы кэшируются в C:\Windows\Installer. Заглушки (Folse) exe-файлов создают записи реестра и кэшируются exe-файлы C:\ProgramData\PackageCache. Правильно?



2.3 Есть инсталляторы игр/программ, которые проверяют не только записи в реестре, но и наличие некоторых файлов той версии Redistributable Package, которая нужна.

Представим, что у нас установлен пак от Lisabon, и нам надо установить игру/программу, которой нужен Microsoft Visual C++ 2008 Redistributable - x64 9.0.21022.0, после запуска инсталлятора игры/программы, инсталлятор проверит есть ли нужная версия Redistributable Package. Он обнаружит запись заглушки в реестре Microsoft Visual C++ 2008 Redistributable - x64 9.0.21022.0, а потом проведет поиск файлов от этого Redistributable Package и не обнаружив нужных ему файлов сообщит, что нету того, что надо и оборвет установку. Чтобы в таком случае установить эту игру/программу нужно, если по аналогии со старым инсталлятором XviD, то надо сообщить Lisabonu о проблеме и он добавит в сборку те файлы, отсутствие которых вызывает проблемы. Или еще что-нибудь можно сделать?



2.4 В случае с Redistributable Package 2019(2017,2015) для инсталляторов игр/программ, которые проверяют установленную версию Redistributable Package, фокус с заглушками уже не помогает, так как новые версии Redistributable Package 2019(2017,2015) не дают установиться старым версиям Redistributable Package 2019(2017,2015). Чтобы произвести установку игры/программы, у которой в инсталлятор встроены предыдущие версии 2019(2017,2015) Redistributable Package, необходимо удалять новые версии 2019(2017,2015) Redistributable Package и только потом, производить установку игры/программы вместе со старой версией 2019(2017,2015) Redistributable Package. После того как игра/программа была установлена, можно удалить старую версию 2019(2017,2015) Redistributable Package (вот тут вопрос, как можно удалить Через "Установка и удаление программ"? или через VCRHybGuiSetup, но в нем нету старых 2019(2017,2015) Redistributable Package, только самая последняя, или я не понимаю чего-то?) и установить последнюю версию 2019(2017,2015) Redistributable Package с помощю VCRHybGuiSetup. Это надо будет проделывать с каждой игрой/программой, у которой в инсталляторе встроена старая версия 2019(2017,2015) Redistributable Package. После этих манипуляций игра/программа, для которой была нужна старая версия 2019(2017,2015) Redistributable Package, будет работать на последней версии 2019(2017,2015) Redistributable Package.



2.5 Теперь по вопросу касаемо того, что в системе уже установлен Redistributable Package от Lisabon, а некоторые игры/программы, не смотря на заглушки, все-равно устанавливают более старую версию Redistributable Package.

Установки как таковой не было, прописалась только надпись в "Установка и удаление программ" и не более, а старые версии msi не установились, остались только новые. Так происходит потому, что Microsoft для Microsoft Visual C++ Rantime Redistributable Package 2012 и 2013 сделала для каждого языка свой инсталлятор и на каждом этом инсталляторе имеется свой ProductCode для exe инсталлятора, а для msi инсталлятора ProductCode одинаков для всех языков. Вот поэтому происходит псевдоустановка. Правильно? И это относится к всем Redistributable Package начиная с 2012, или только к 2012 и 2013?



3. Вместе с паком устанавливается обновление KB3118401, оно насколько я понял, нужно для Redistributable Package 2019(2017,2015), без него exe-заглушка, которая прописывает
информацию в "Установка и удаление программ", не запустится и не пропишет необходимую информацию в "Установка и удаление программ". Вопрос, что будет если после установки пака его удалить? Можно ли, или пусть будет? Он вреда не нанесет? Прокомментируйте, пожалуйста. А и это обновление содержится в паке, или скачивается?



3.1 Установка обновления при помощи WUSA. По-умолчанию установка обновления происходит при помощи DISM на Windows 7/8.0/8.1 для ускорения установки. Объясните подробнее, не совсем дошло до меня что это.



4. По умолчанию служба автоматического обновления Windows и служба теневого копирования тома отключаются, если они включены, и пока устанавливается пак они выключены. Вопрос, после установки пака обе службы возвращаются в то состояние, в котором были изначально? Если у меня обе службы выключены, пак не сделает так, что они включатся, после того как завершит свою установку?



5. При скачивании и распаковке архива с паком: имеется папка "2-VCR_Hyb" в ней папка "AMD64", файл Html.nfo, файл Run. В папке "AMD64" папка "ForceCopy", в папке "ForceCopy" папка "SVCPACK", в папке "SVCPACK" установщик VCRHyb64.exe. Объясните для чего столько папок и почему с такими названиями? Для чего файл Html.nfo? файл Run используется для интеграции вашего пака в UpdatePack-XP (такой ответ я нашел читая комментарии). В общем, можно ли удалить файл Html.nfo, файл Run и сделать так, чтоб в конечном виде было так: папка "Microsoft Visual C++ 2005-2019 Redistributable Package by Lisabon" в ней установщик VCRHyb64.exe и VCRHybGuiSetup?



6. Касаемо RuntimePack от jameszero, насколько я понял, читая комментарии, оптимальным решением будет установка вашего пака + RuntimePack Lite. Все правильно? Есть ли разница, что первым устанавливать - ваш пак или RuntimePack Lite?



7. Еще такой специфический вопрос, есть например у меня на пк штук 10 папок с установочными файлами игр/программ и в некоторых папках есть папка с установщиками дополнительного софта, в основном это DirectX и Microsoft Visual C++, если я поудаляю эти папки, инсталляторы игр/программ все равно установят игру/программу или будут ругаться?



8. Насчет установки игр из стима, игры оттуда ставят принудительно DirectX и Microsoft Visual C++, но принудительная установка относится к пункту 2.5? Или там что-то другое?



8.1 В комментариях здесь писали, что когда игры в стиме скачиваешь, после загрузки надо из папки с игрой удалять папку _CommonRedist, и проверок никаких не будет. Можно ли проводить такие манипуляции, или лучше пусть все будет по стандарту?

Отправлено: 20:30, 04-06-2019 | #1601