Я купил игру Stardew Valley на steam, установил, запустил. Ничего не случилось :(...
Когда я посмотрел в окне просмотра событий, я увидел следующую информацию:
Application: Stardew Valley.exe Framework Version: v4.0.30319
Description: The process was terminated due to an unhandled exception.
Exception Info: System.BadImageFormatException at
StardewValley.Program.Main(System.String[])
Для меня это звучит как плохая DLL или неправильная архитектура для DLL, но я не смог разобраться в чем проблема. Сразу после этого:
Faulting application name: Stardew Valley.exe, version: 1.0.5940.30711, time stamp: 0x5705b1ef
Faulting module name: KERNELBASE.dll, version: 10.0.10586.162, time stamp: 0x56cd55ab
Exception code: 0xe0434352
Fault offset: 0x000bdad8
Faulting process id: 0x23d8
Faulting application start time: 0x01d19eee1ec0b80d
Faulting application path: F:\Steam\steamapps\common\Stardew Valley\Stardew Valley.exe
Faulting module path: C:\WINDOWS\SYSTEM32\KERNELBASE.dll
Report Id: b8cdbcca-597d-4eb4-a44c-47f2b8c510a5
Faulting package full name:
Faulting package-relative application ID:
С последующим:
Fault bucket 108078241334, type 1
Event Name: APPCRASH
Response: Not available
Cab Id: 0
Problem signature:
P1: Stardew Valley.exe
P2: 1.0.5940.30711
P3: 5705b1ef
P4: KERNELBASE.dll
P5: 10.0.10586.162
P6: 56cd55ab
P7: e0434352
P8: 000bdad8
P9:
P10:
Мне нравится решать свои проблемы, но через 6 часов я сдаюсь. Я использовал Dependency Walker, чтобы сообщить мне об отсутствующих dll или несовместимых версиях. Одна из странных вещей заключается в том, что исполняемый файл игры - x86, а все загруженные dll - x64. У моей жены тоже есть игра, и она работает на ее компьютере, однако Dependency Walker не сообщил о каких-либо больших различиях. Она получила только несколько доступных длл (которые я потом скопировал, но не помогло).
Вот что я попробовал (с перезагрузками между ними):
- Переустановите игру (3 раза)
- перезагружать
- Проверка целостности файла Steam
- Начать вне пара
- Начать с правами администратора
- Все режимы совместимости
- Переустановка XNA 4.0
- Полностью удалил XNA 4.0 и переустановил
- SFC / SCANNOW
- dism / Online / Cleanup-Image / RestoreHealth
- Установка на игру на диске C вместо диска F
- Полное удаление всех System32 / d2 * .dll и d3 * .dll и переустановка directx (что сломало несколько других игр)
- Обновленные графические драйверы
- dxdiag сообщает о проблемах
- выключить и снова включить
- размещение следующих (отсутствующих) dll в каталоге system32 / syswow64 / game
- (X86) API-МС-WIN-ОСНОВНОЙ-APIQUERY-L1-1-0.DLL
- (X86) API-МС-WIN-ОСНОВНОЙ-AppCompat-L1-1-1.DLL
- (X86) API-МС-WIN-Core-ВОЛОКНА-L1-1-1.DLL
- (X86) API-МС-WIN-Core-ВОЛОКНА-L2-1-1.DLL
- (X86) API-МС-WIN-ОСНОВНОЙ-ПСМ-APPNOTIFY-L1-1-0.DLL
- (X86) API-МС-WIN-УСТРОЙСТВ-CONFIG-L1-1-1.DLL
- (X86) API-МС-WIN-ММ-MISC-L1-1-1.DLL
- (X86) API-МС-WIN-RTCore-NTUSER-WinEvent-L1-1-0.DLL
- (X86) API-МС-WIN-СЕКЬЮРИТИ-CryptoAPI-L1-1-0.DLL
- (X 86) EXT-МС-WIN-RTCore-NTUSER-DPI-L1-1-0.DLL
- (X86) ieshims.dll
- (64) API-МС-WIN-BASE-UTIL-L1-1-0.DLL
- (64) API-МС-WIN-ОСНОВНОЙ-Comm-L1-1-0.DLL
Я декомпилировал exe, чтобы посмотреть на его ссылки, которые:
- Lidgren.Network
- Microsoft.Xna.Фреймворк
- Microsoft.Xna.Фреймворк.Игра
- Microsoft.Xna.Фреймворк.Графика
- Microsoft.Xna.Фреймворк.Xact
- mscorlib
- PresentationCore
- Steamworks.NET
- система
- Система.ядро
- Система.ServiceModel
- Система.Окна.формы
- Система.Xml
- xTile
Все эти DLL были успешно решены.
Что еще я могу сделать, чтобы попытаться решить эту проблему? Я переустановлю свою систему через два месяца, что может помочь, но я думаю, что слишком радикально делать это сейчас ради одной программы, которая отказывается запускаться.
РЕДАКТИРОВАТЬ:
Вот аварийный дамп , срок действия которого истекает 27-04-2016.
Я также изучил аварийный дамп и попытался отладить его в Visual Studio 2015. Я получаю следующую ошибку: необработанное исключение типа 'System.BadImageFormatException 'произошло в неизвестном модуле.
Additional information: Could not load file or assembly 'Microsoft.Xna.Framework.dll' or one of its dependencies. is not a valid Win32 application. (Exception from HRESULT: 0x800700C1)
If there is a handler for this exception, the program may be safely continued.
Я не понимаю эту ошибку. Я уже дважды переустанавливал его!
Тем не менее, когда я ищу DLL, я нахожу несколько версий, расположенных в следующих местах:
- C:\Program Files (x86)\Microsoft Silverlight\5.1.41212.0
- C:\Program Files (x86)\Microsoft SDK \Windows Phone \v8.1 \Tools \MDILXAPCompile \Framework
- C:\Program Files (x86)\Справочные сборки \Microsoft \Framework \WindowsPhone \v8.1
- C:\Program Files (x86)\Microsoft SDK \Windows Phone \v8.1 \Tools \AppDeploy \MdilXapCompilev8.0 \Framework
- C:\Program Files (x86)\Справочные сборки \Microsoft \Framework \Silverlight\v5.0
- C:\Program Files (x86)\Microsoft XNA \XNA Game Studio \v4.0 \References \Windows \x86
- C:\Program Files (x86)\Microsoft XNA \XNA Game Studio \v4.0 \References \Xbox360
- C:\Windows \Microsoft.NET \сборка \GAC_32 \Microsoft.Xna.Framework \v4.0_4.0.0.0__842cf8be1de50553
Когда я смотрю на ссылки с DotPeek, он говорит, что он принимает следующее: C:\Program Files (x86)\Microsoft XNA\XNA Game Studio\v4.0\References\Windows\x86\Microsoft.Xna.Framework.dll (которая существует).