Проблемы с запуском игры XNA на 64-битной Windows 7 - PullRequest
5 голосов
/ 09 апреля 2010

У меня проблемы с запуском игрового движка на компьютере моего брата, который работает под управлением 64-битной Windows 7. Я работаю на 32-битной XP SP2.

Мое приложение использует XNA, FMOD.NET и другую DLL, которую я написал полностью на C #. Все нацелено на x86, а не на AnyCPU. Я читал, что это необходимо для работы XNA, потому что нет 64-битной платформы xna. Я также перекомпилировал FMOD.NET под x86 и убедился, что использую 32-битную версию нативной библиотеки dll. Поэтому я не вижу там никаких проблем.

Однако, когда он пытается запустить мое приложение, оно выдает ошибку, которая таинственна, но не неслыханна.

A FileNotFoundException с пустым именем файла и вершиной трассировки стека в моем главном конструкторе форм. Сообщение The specified module could not be found. (Exception from HRESULT: 0x8007007E)

Я нашел в сети некоторые темы об этой ошибке, все с очень расплывчатыми, смешанными и нечеткими ответами, которые на самом деле мне не помогают. Большинство напоминают людям о цели x86. Некоторые говорят, проверьте, что у них есть все необходимые библиотеки.

Я дал своему брату Microsoft.Xna.Framework.dll, но нужно ли ему устанавливать весь распространяемый пакет XNA? Когда я беру все, что отправил ему, и помещаю в случайный каталог, он все равно работает нормально для меня. Я разработал игру в VS2008, , а не в игровой студии, используя XNA 3.0 и элемент управления Windows Forms, использующий рисование XNA, которое я нашел в руководстве по msdn. Я также хотел бы, по возможности, не требовать полного установщика.

Есть идеи? Пожалуйста?

Ответы [ 3 ]

3 голосов
/ 09 апреля 2010

Я бы начал с того, что он попытался установить распространяемый упаковщик для XNA. Весь смысл распространяемого пакета:

"Распространяемая структура XNA Framework загрузка предоставляет разработчикам игр библиотеки времени выполнения XNA Framework они могут включать в свой продукт "

Я не пробовал запускать проект XNA на Windows 7 64, но у меня, конечно, он работал нормально на Vista 64. Вы можете прочитать немного о таких местах, как здесь , но у меня нет Я не смог найти в Microsoft ни одного места, где бы упоминалась поддержка Windows 7. Википедия утверждает, что она поддерживает Windows 7, но большинство вещей, которые я нахожу из Microsoft, официально поддерживают только Windows XP / Vista, такие как this :

Распространяемая структура XNA Framework загрузка предоставляет разработчикам игр библиотеки времени выполнения XNA Framework они могут включать в свой продукт для распространения на Windows XP и Windows Vista.

Если это означает, что вам не нужно загружать его для поддержки Windows 7, возможно. Но, как я уже сказал, я лично не пробовал.

1 голос
/ 26 апреля 2010

64-битная версия xna отсутствует, поэтому вы должны настроить свою сборку / программу на процессор x86 (для windows) посмотри пожалуйста http://www.start64.com/index.php?option=com_content&task=view&id=1932&Itemid=114 для более подробной информации.

1 голос
/ 09 апреля 2010

Вам необходимо установить распространяемый пакет XNA Framework. Windows 7 поставляется с предустановленной .Net 3.5, но не с библиотеками XNA.

Я думаю, Сайт загрузки Microsoft не перечисляет Windows 7 в списке поддерживаемых ОС, поскольку дата публикации была 6/11/2009, задолго до официального выхода Windows 7.

...