При выполнении в лабораторной работе упражнения №1 , а именно при выполнении нижеследующего кода: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using Microsoft.Xna.Framework.Graphics;
namespace Application1 { public partial class MainForm : Form { // Объявим поле графического устройства для видимости в методах GraphicsDevice device;
public MainForm() { InitializeComponent();
// Подпишемся на событие Load формы this.Load += new EventHandler(MainForm_Load);
// Попишемся на событие FormClosed формы this.FormClosed += new FormClosedEventHandler(MainForm_FormClosed); }
void MainForm_FormClosed(object sender, FormClosedEventArgs e) { // Удаляем (освобождаем) устройство device.Dispose(); // На всякий случай присваиваем ссылке на устройство значение null device = null; }
void MainForm_Load(object sender, EventArgs e) { // Создаем объект представления для настройки графического устройства PresentationParameters presentParams = new PresentationParameters(); // Настраиваем объект представления через его свойства presentParams.IsFullScreen = false; // Включаем оконный режим presentParams.BackBufferCount = 1; // Включаем задний буфер // для двойной буферизации // Переключение переднего и заднего буферов // должно осуществляться с максимальной эффективностью presentParams.SwapEffect = SwapEffect.Discard; // Устанавливаем размеры заднего буфера по клиентской области окна формы presentParams.BackBufferWidth = this.ClientSize.Width; presentParams.BackBufferHeight = this.ClientSize.Height;
// Создадим графическое устройство с заданными настройками device = new GraphicsDevice(GraphicsAdapter.DefaultAdapter, DeviceType.Hardware, this.Handle, presentParams); }
protected override void OnPaint(PaintEventArgs e) { device.Clear(Microsoft.Xna.Framework.Graphics.Color.CornflowerBlue);
base.OnPaint(e); } } } Выбрасывается исключение: Невозможно загрузить файл или сборку "Microsoft.Xna.Framework, Version=3.0.0.0, Culture=neutral, PublicKeyToken=6d5c3888ef60e27d" или один из зависимых от них компонентов. Не удается найти указанный файл. Делаю все пунктуально. В чем может быть проблема? |
Компьютерная 2D-графика в Microsoft XNA Game Studio 3.0
Страницы деинсталлятора Smart Install Maker
Приведем описание некоторых страниц.
Страница 'Настройки'
-
Создать деинсталлятор - если включен, то в процессе установки будет создан деинсталлятор Вашего приложения, с помощью которого можно будет автоматически удалить программу.
- Имя программы для деинсталляции - имя программы в списке "Установка и удаление программ".
- Заголовок деинсталлятора - текст заголовка главного окна деинсталлятора.
- Имя файла деинсталлятора - полный путь к файлу деинсталлятора.
- Имя лог-файла деинсталлятора - полный путь к лог-файлу деинсталлятора.
- Открыть интернет-страницу деинсталляции - если включен, при завершении деинсталляции будет открыта интернет-страница, адрес которой указан в этом поле. Вы также можете ввести сюда путь к файлу, расположенному на локальном диске.
-
Закрыть запущенные приложения - здесь вы можете указать те приложения, которые должны быть закрыты в начале деинсталляции.
- Заголовок окна - укажите строку заголовка по которой будут искаться закрываемые приложения.
-
Тип поиска:
- Точный заголовок окна - закроются те приложения у которых заголовок окна совпадает с указанным в поле "Заголовок окна".
- Подстрока заголовка окна - закроются приложения, заголовок окна которых содержит указанную строку.
Страница 'Удаление'
Страница представлена в табличной форме, заполнение которой осуществляется через окно 'Добавить запись'
-
Что удалять - выберите тип удаления:
- Файл - удалять файл
- Пустая папка - удалять пустую директорию. В данном случае директория не будет удалена, если в ней находится хоть один файл.
- Папка с файлами - удалять директорию со всеми вложенными в нее файлами и директориями.
- Имя файла - путь к удаляемому файлу или директории.
Формирование инсталляционного пакета игры "Летящие в прерии"
Проект инсталляционного пакета можно сохранять в файле проекта как обычный проект, что и нужно периодически делать, чтобы не потерять проделанную работу.
- Запустите установленный на Вашем компьютере пакет Smart Install Maker
- Заполните страницу ' Информация ' как показано на рисунке
- Откройте страницу ' Файлы ' и заполните таблицу через последовательность окон ' Добавить запись ' всеми необходимыми для работы игры ресурсами. Каждую группу ресурсов отмечайте в окне 'Открыть', которое вызывается кнопкой ' Выбрать файл ', расположенной справа от первого поля
Обратите внимание, что инсталлятор не копирует папки, но копирует все выделенные в папке файлы. Поэтому приходится заходить в каждую папку проекта игры вручную. В таком случае в поле ' Директория извлечения ' необходимо прописывать соответствующий путь к копируемым файлам, чтобы инсталлятор создал на компьютере пользователя требуемое дерево каталогов относительно корневого каталога инсталляции.
Еще один ресурс, который нужно загрузить в инсталляционный пакет - файл иконки. Она будет представлять ярлык на рабочем столе компьютера пользователя. Мы воспользуемся иконкой с именем Game.ico, прилагаемой в каталоге Source данной лабораторной работы.
- На странице ' Файлы ' добавьте запись через окно ' Добавить запись ' для загрузки иконки в список
- Откройте страницу ' Требования ' и заполните ее так
Нам нужна проверка версии .NET Framework 3.0 и выше, поскольку без нее программа игры работать на компьютере пользователя не будет. Но мы намеренно опустили эту опцию, поскольку проверку организуем позднее в пакетном файле скриптов Install.wsf через системный реестр, не полагаясь на проверку инсталлятора.
- Сохраните файл инсталляционного проекта командой Файл/Сохранить или кнопкой на панели инструментов (и далее не забывайте периодически сохранять любой разрабатываемый вами проект, не надеясь на надежность нашего электричества, чтобы не потерять часть проделанной работы)
- Откройте окно Диалоги/Общая и заполните его так
- Откройте вкладку Диалоги/Лицензия/Информация и подключите к пакету файл с Лицензионным соглашением, созданный нами ранее
- Откройте вкладку Диалоги/Завершение и заполните его так
- Откройте вкладку Интерфейс/Фон и настройте ее так
- Откройте страницу Ярлыки и настройте последовательность окон добавления записи так
- Выполните команду меню Сервис/Добавить ярлык удаления
- Сохраните проект и создайте инсталляционный пакет щелчком на кнопке ' Запустить инсталлятор '
Инсталлятор создал в каталоге C:\Setup, указанном нами в настройках, инсталляционный файл с заданным именем Lab58_Install.exe. Теперь этот файл с программой можно распространять и установка будет иметь профессиональный вид.