It seems that you're using an outdated browser. Some things may not work as they should (or don't work at all).
We suggest you upgrade newer and better browser like: Chrome, Firefox, Internet Explorer or Opera

×
high rated
GOG Galaxy Client - Update Problem - решение проблемы

Введение

Недавно столкнулся с проблемой обновления клиента GOG Galaxy.
Симптомы: приложение начинает загрузку обновлений, загрузка прерывается, появляется сообщение об ошибке "There was a problem with updating the application, go to www.gog.com/galaxy to download the latest version" и запускается старая версия клиента.

Старый клиент работает и даже запускает игры, но не работает функция приглашения друзей в игру. Появляется на разных версиях Windows 7, 8, 10. Если снова скачать установщик, как и предложено, то он выходит с сообщением, что GOG Galaxy у нас уже установлен.

Погуглив по тексту ошибки оказалось, что я не одинок - на форумах писалось много тем и сообщений с указанной ошибкой, но никаких рабочих решений предложено не было. Скажу сразу, что мне удалось решить эту проблему, поэтому я и создал данную тему, чтобы помочь остальным. Тем кому не интересны мои бесполезные :) рассуждения на тему того из-за чего возникает эта ошибка могут пропустить следующий раздел и сразу читать "Как это исправить?"

В чем причина?

Первым делом я проверил свой Firewall и брандмауэр Windows, но там всё оказалось в порядке - доступ к интернету у клиента GOG был. Тогда возникла вторая здравая идея посмотреть логи и к счастью логи оказались довольно подробными и понятными.

Все логи лежат в директории: C:\ProgramData\GOG.com\Galaxy\logs , интересующий нас лог - GalaxyUpdater.txt , в котором содержится информация об обновлениях.

Там я наткнулся на следующую информацию (Легче ориентироваться по дате и времени):
[Information][ (0)]: Checking component 'desktop-galaxy-updater' if update is needed (local: 1.1.27.1, remote: 1.1.27.1)
[Information][ (0)]: Update for component 'desktop-galaxy-updater' is not needed
[Information][ (0)]: Checking component 'desktop-galaxy-peer' if update is needed (local: 0.0.0.676, remote: 0.0.0.679)
[Information][ (0)]: Update for component 'desktop-galaxy-peer' is needed (new version available)
[Information][ (0)]: Starting download of the component 'desktop-galaxy-peer'.Remote version: 0.0.0.679, current version: 0.0.0.676
[Information][ (0)]: File hash mismatch: C:\ProgramData\GOG.com\Galaxy\redists\peer\msvc-15\GalaxyPeer.dll. Should be 23bd300d19c0e199d8b1f4e6a0c99e4a but was cb1e2b55abc8fac1ce0dd83477a25109. Download attempt 1.
[Information][ (0)]: File up to date: C:\ProgramData\GOG.com\Galaxy\autoupdate\desktop-galaxy-peer\peer\msvc-15\GalaxyPeer.dll
[Information][ (0)]: File hash mismatch: C:\ProgramData\GOG.com\Galaxy\redists\peer\msvc-15\GalaxyPeer64.dll. Should be f48c0343efa5c3ad51693ca8747567d3 but was 72c2cbd0aff710a34c91596337767675. Download attempt 1.
[Information][ (0)]: File up to date: C:\ProgramData\GOG.com\Galaxy\autoupdate\desktop-galaxy-peer\peer\msvc-15\GalaxyPeer64.dll
[Information][ (0)]: Checking component 'desktop-galaxy-client' if update is needed (local: 1.1.27.1, remote: 1.1.27.1)
[Information][ (0)]: Update for component 'desktop-galaxy-client' is not needed

Из этого куска лога видно, что обновление требуется только для одного компонента 'desktop-galaxy-peer' и что файлы требуемые для обновления загружаются в папку:

1. C:\ProgramData\GOG.com\Galaxy\autoupdate\desktop-galaxy-peer\peer\

а используемые для работы клиента лежат в:

2. C:\ProgramData\GOG.com\Galaxy\redists\peer\
Attachments:
Post edited March 10, 2017 by JuIy
No posts in this topic were marked as the solution yet. If you can help, add your reply
high rated
Именно в последней директории, как видно дальше по логу, galaxy-updater сверяет хэш файлов, чтобы определить требуют ли они обновления.
После того, как updater скачивает все необходимые файлы в C:\ProgramData\GOG.com\Galaxy\autoupdate\desktop-galaxy-peer\peer\, он копирует их в рабочую категорию C:\ProgramData\GOG.com\Galaxy\redists\peer\ Лог ниже:

[Information][ (0)]: Moving files of the component: 'desktop-galaxy-peer'.
[Information][ (0)]: Moving C:\ProgramData\GOG.com\Galaxy\autoupdate\desktop-galaxy-peer\peer\msvc-15\GalaxyPeer.dll to C:\ProgramData\GOG.com\Galaxy\redists\peer\msvc-15\GalaxyPeer.dll
[Error][ (0)]: An exception has occurred while renaming 'C:\ProgramData\GOG.com\Galaxy\redists\peer\msvc-15\GalaxyPeer.dll' to 'C:\ProgramData\GOG.com\Galaxy\redists\peer\msvc-15\GalaxyPeer.dll.old'. Message: Error Message: Failed performing an operation upon the file 'C:\ProgramData\GOG.com\Galaxy\redists\peer\msvc-15\GalaxyPeer.dll'.
Specific Reason: Could not move to C:\ProgramData\GOG.com\Galaxy\redists\peer\msvc-15\GalaxyPeer.dll.old; Error code: 5
-----
2017-03-10 12:47:33.126 [Warning][ (0)]: Updater failed moving files for component 'desktop-galaxy-peer'.

Тут то и появляется наша ошибка. Оказывается, что galaxy-updater сначала переименовывает старые версии файлов, добавляя префикс .old в конец имени, а затем копирует новые. И при попытке переименовать файл возникает исключение - по всей видимости у клиента обновления просто недостаточно прав, чтобы редактировать файлы в системной папке.


Ради интереса я в ручную скопировал файлы требующие обновления: GalaxyPeer.dll, GalaxyPeer64.dll из папки C:\ProgramData\GOG.com\Galaxy\autoupdate\desktop-galaxy-peer\peer\msvc-15\ в C:\ProgramData\GOG.com\Galaxy\redists\peer\msvc-15\ и переименовал старые. Снова запустил клиент GOG Galaxy и на этот раз:

[Information][ (0)]: Starting download of the component 'desktop-galaxy-peer'.Remote version: 0.0.0.679, current version: 0.0.0.676
[Information][ (0)]: File up to date: C:\ProgramData\GOG.com\Galaxy\redists\peer\msvc-15\GalaxyPeer.dll
[Information][ (0)]: File up to date: C:\ProgramData\GOG.com\Galaxy\autoupdate\desktop-galaxy-peer\peer\msvc-15\GalaxyPeer.dll
[Information][ (0)]: File up to date: C:\ProgramData\GOG.com\Galaxy\redists\peer\msvc-15\GalaxyPeer64.dll
[Information][ (0)]: File up to date: C:\ProgramData\GOG.com\Galaxy\autoupdate\desktop-galaxy-peer\peer\msvc-15\GalaxyPeer64.dll

Скопированные файлы оказались уже актуальными и не требующими обновления, а процесс копирования теперь упал на следующих файлах:

[Information][ (0)]: Moving C:\ProgramData\GOG.com\Galaxy\autoupdate\desktop-galaxy-peer\peer\msvc-16\GalaxyPeer.dll to C:\ProgramData\GOG.com\Galaxy\redists\peer\msvc-16\GalaxyPeer.dll
[Error][ (0)]: An exception has occurred while renaming 'C:\ProgramData\GOG.com\Galaxy\redists\peer\msvc-16\GalaxyPeer.dll' to 'C:\ProgramData\GOG.com\Galaxy\redists\peer\msvc-16\GalaxyPeer.dll.old'. Message: Error Message: Failed performing an operation upon the file 'C:\ProgramData\GOG.com\Galaxy\redists\peer\msvc-16\GalaxyPeer.dll'.
Specific Reason: Could not move to C:\ProgramData\GOG.com\Galaxy\redists\peer\msvc-16\GalaxyPeer.dll.old; Error code: 5


Файлы GalaxyPeer.dll и GalaxyPeer64.dll лежат в 4 папках внутри директории peer: msvc-15, msvc-16, msvc-17 и msvc-18. Так вот на этот раз процедура копирования и замены файлов упала на msvc-16, а не на msvc-15, а следовательно наше предположение подтвердилось.

* Но почему запуск клиента GOG Galaxy с правами администратора не решает проблему?
Дело в том, что GOG Galaxy Client для обновления самого себя запускает отдельную утилиту - GalaxyUpdater, которая в свою очередь уже запускается с правами обычного пользователя из-за чего и возникает данная проблема. Запуск GalaxyUpdater в логе:

[Information][ (0)]: Launching process. Command: C:\ProgramData\GOG.com\Galaxy\temp\desktop-galaxy-updater\GalaxyUpdater.exe, Initial Directory: C:\ProgramData\GOG.com\Galaxy\temp\desktop-galaxy-updater, Elevated: false, Arguments: { /clientUpdatePath="C:\Program Files (x86)\GOG Galaxy" /redistUpdatePath="C:\ProgramData/GOG.com/Galaxy/redists" /reportToService /updateClient /updateRedist /updateStrategy="Normal" }

Следовательно всё что нужно это выдать права GalaxyUpdater.exe и сам GOG Galaxy Client запустить с правами администратора иначе он запустит GalaxyUpdater с правами текущего пользователя и мы снова получим эту же ошибку.
Post edited March 10, 2017 by JuIy
high rated
"Как это исправить?"

Необходимо сделать так, чтобы сам GalaxyUpdater запускался с правами администратора. Для этого:
1. Откройте папку C:\ProgramData\GOG.com\Galaxy\redists
2. Найдите в ней файл GalaxyUpdater.exe, откройте его свойства
3. На вкладе "Совместимость" окна свойств отметьте галочкой пункт "Выполнять эту программу от имени администратора"
4. Запустите сам GOG Galaxy Client с правами администратора (правой кнопкой по клиенту и "Запуск от имени администратора")

(Сам клиент запускать от имени администратора необходимо только единожды для обновления, в остальное время он может нормально работать и с правами текущего пользователя - не запускайте его с правами админа всё время)

Если не получилось, проделайте эти шаги с файлами (если они есть):
C:\ProgramData\GOG.com\Galaxy\autoupdate\GalaxyUpdater.exe
C:\ProgramData\GOG.com\Galaxy\temp\desktop-galaxy-updater\GalaxyUpdater.exe


На этом всё Enjoy :) - GOG Galaxy нормально обновится и можно снова будет приглашать друзей в игру.
Post edited March 10, 2017 by JuIy
Доброго времени суток. Ни с того, ни с сего столкнулся с данной проблемой. При запуске ничего не происходит и только через некоторе время появляеться два окна с ошибками:

1) Update problem (Обнаружена проблема с обновлением приложения).
2) Ошибка загрузки баз данных.

Ни один из проделанных шагов не помог, в том числе и советы с англоязычных форумов. Более того, я не могу удалить приложение. При попытке удаления появляется следующая ошибка: "Невозможно создать временный файл. Установка прервана. Ошибка 2: Не удаётся найти указанный файл".

Вирусов на устройстве нет, брандмаузер ничего не перекрывает.
Attachments:
Post edited February 16, 2019 by nestergeek
avatar
nestergeek:
Антивирусник стоит? И, если да, то какой?
avatar
nestergeek:
avatar
Tim_Fey: Антивирусник стоит? И, если да, то какой?
Защитник Windows 10
avatar
nestergeek:
Место на диске, где установлена Галактика есть?
avatar
nestergeek:
avatar
Tim_Fey: Место на диске, где установлена Галактика есть?
Конечно. Все работало хорошо, никаких проблем не было, никакой софт не устанавливал. Просто в очередной раз запустил клиент и вот. Столкнулся с этим позавчера.
avatar
nestergeek:
Вручную удалять папки Галактики пробовал?
avatar
nestergeek:
avatar
Tim_Fey: Вручную удалять папки Галактики пробовал?
Удалял только папку storage которая лежит в ProgramData\GOG.com\Galaxy\
После этого ошибки не появляються но и клиент все равно не запускаеться. Ничего не происходит.
Появилась новая проблема. При установке чего-либо (CCleaner, Revo Uninstaller etc.) появляеться такая ошибка.
Attachments:
avatar
nestergeek: Удалял только папку storage которая лежит в ProgramData\GOG.com\Galaxy\
После этого ошибки не появляються но и клиент все равно не запускаеться. Ничего не происходит.
Появилась новая проблема. При установке чего-либо (CCleaner, Revo Uninstaller etc.) появляеться такая ошибка.
Попробуй зачистить вручную папку Temp, на которую ругается ошибка. И Галактику нафиг сноси и из ProgramData и из Program Files. Подчищяй концы каким-нибудь CCleaner, перезагружайся и пробуй снова установить. У CCleaner, кстати, была Portable версия (без установки)
avatar
nestergeek: ...Появилась новая проблема...
Может быть, проще сделать откат системы?

Еще, если запустить любую программу от имени администратора, ошибок нет?
Post edited February 16, 2019 by AndreyB
avatar
nestergeek: Удалял только папку storage которая лежит в ProgramData\GOG.com\Galaxy\
После этого ошибки не появляються но и клиент все равно не запускаеться. Ничего не происходит.
Появилась новая проблема. При установке чего-либо (CCleaner, Revo Uninstaller etc.) появляеться такая ошибка.
avatar
Tim_Fey: Попробуй зачистить вручную папку Temp, на которую ругается ошибка. И Галактику нафиг сноси и из ProgramData и из Program Files. Подчищяй концы каким-нибудь CCleaner, перезагружайся и пробуй снова установить. У CCleaner, кстати, была Portable версия (без установки)
В общем, затёр Галактику и всё что с ней связано только с помощью portable-версии Revo Uninstaller.
Папку Temp которая в AppData удалить не получилось, ругается что запущен какой-то процесс. Удалось методом тыка частично зачистить.
Перезагрузился, запускаю файл установки клиента - та же ошибка.
Судя по всему, гораздо проще и лучше снести систему и накатывать все по новой.
avatar
nestergeek: ...Появилась новая проблема...
avatar
AndreyB: Может быть, проще сделать откат системы?

Еще, если запустить любую программу от имени администратора, ошибок нет?
Сделал бы, да бэкап не делал. Система установлена около двух месяцев.
С правами админа всё так же.
Я обращался в официальную поддержку GOG, тоже пытались помочь, советовали создать новый локальный профиль с правами админа - но и это ничего не дало, там те же болячки.
Attachments:
Post edited February 16, 2019 by nestergeek
avatar
nestergeek: Сделал бы, да бэкап не делал. Система установлена около двух месяцев.
С правами админа всё так же.
Я обращался в официальную поддержку GOG, тоже пытались помочь, советовали создать новый локальный профиль с правами админа - но и это ничего не дало, там те же болячки.
В windows есть встроенное восстановление системы. Или оно считается некачественным?
Насчет нового профиля. У меня как-то после аварийного отключения электричества сломался профиль администратора. От его имени ничего не работало и ошибка была похожая ~"Не найден файл".
avatar
nestergeek: Сделал бы, да бэкап не делал. Система установлена около двух месяцев.
С правами админа всё так же.
Я обращался в официальную поддержку GOG, тоже пытались помочь, советовали создать новый локальный профиль с правами админа - но и это ничего не дало, там те же болячки.
avatar
AndreyB: В windows есть встроенное восстановление системы. Или оно считается некачественным?
Насчет нового профиля. У меня как-то после аварийного отключения электричества сломался профиль администратора. От его имени ничего не работало и ошибка была похожая ~"Не найден файл".
Ни с одного профиля не работает, что с правами что без.
Нет, я не говорил, что оно некачественное, просто я не создавал точку восстановления. Но если я попробую откатится, то систему вернет в состояние "только что установленной", правильно?