Опубликован: 05.08.2010 | Доступ: свободный | Студентов: 2009 / 47 | Оценка: 4.50 / 4.40 | Длительность: 60:26:00
Самостоятельная работа 1:

Компьютерная 2D-графика в Microsoft XNA Game Studio 3.0

Самостоятельная работа 1: 12345678910 || Самостоятельная работа 2 >

Лицензионное соглашение

Для установления взаимоотношений с пользователями нашей программы составим Лицензионное соглашение, которое позднее включим в пакет установки.

  • В Проводнике решений вызовите контекстное меню для узла проекта Game2D и командой Add/New Item создайте текстовый файл с именем Лицензионное соглашение.txt

  • Заполните содержимое файла примерно следующим текстом

Лицензионное соглашение

ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ не является бесплатной программой. Вы можете инсталлировать демонстрационную версию данного ПРОГРАММНОГО ПРОДУКТА, тестировать и оценивать его в течение 30 дней с момента инсталляции. После этого вам необходимо приобрести лицензию на его дальнейшее использование или удалить копию с вашего компьютера.

Вы имеете право делать любое количество архивных копий демонстрационной версии данной программы и любой приложенной к нему документации. Вы можете передавать копии демонстрационной версии другим лицам при условии, что вы не вносите никаких изменений в оригинальный архив, поставляемый компанией Горбункова С.С.

Вы не можете распространять, арендовать, сдавать в наем коммерческую именную версию данного ПРОГРАММНОГО ПРОДУКТА. Вы можете сделать только одну ее архивную копию для личных целей. Вы не можете никаким образом изменять данный ПРОГРАММНЫЙ ПРОДУКТ, включая изменения текстовых файлов и файлов помощи.

Пограмма распространяется по принципу "КАК ЕСТЬ" и вы используете ее на свой собственный риск. Мы не будем нести ответственность за потерю данных и иной ущерб во время ее исполнения, даже если это приведет к пожару или землетрясению. С нас - как с гуся вода.

Устанавливая и используя ДАННУЮ ПРОГРАММУ, вы смиряетесь с возможным ущербом и полность соглашаетесь с данными пунктами и условиями. В противном случае вы должны немедленно удалить этот ПРОГРАММНЫЙ ПРОДУКТ с вашего компьютера, послать нам признательный бонус и принять активное участие к распространению этого ШЕДЕВРА.

\copyright Все права на эту ПРОГРАММУ принадлежат Горбункову Семен Семенычу и его фирме "Рога и копыта"!!!

  • В Проводнике решений выделите файл Лицензионное соглашение.txt и в панели Properties установите для него опцию Copy to Output Directory=Copy if newer, чтобы оболочка копировала его в каталог сборки при каждом обновлении
  • В оболочке Visual Studio 2008 через выпадающий список Solution Configurations установите режим Release и выполните командой Rebuild полную окончательную перекомпиляцию проекта Game2D

Инсталлятор Smart Install Maker

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

  • MSI
  • Inno Setup
  • InstallShield
  • Actual Installer
  • Wise Installer
  • MiltiSet
  • RoboSetup
  • NullSoft Installer
  • Smart Install Maker

Для создания инсталляционного пакета с нашей программой воспользуемся инсталлятором Smart Install Maker компании InstallBuilders Company ( http://ru.sminstall.com ), которая имеет русскоязычный интерфейс. Эта программа также оформлена в виде инсталляционного пакета ( simsetup_r.exe ), который нужно установить на вашем компьютере (прилагается в каталоге Setup ).

Стоимость программы составляет 450 рублей (18$), незарегистрированная копия работает 30 дней. Познакомимся с программой, чтобы использовать ее для формирования инсталляционного пакета нашей игры.

При запуске программы появляется каркас с начальной страницей ' Информация ' следующего вида

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

Приведем описание некоторых страниц.

Страница 'Информация'

  • Имя программы - указывается название программы, например, Моя игра
  • Версия - указывается номер версии программы, например, 1.00
  • Имя компании - свое имя или организация, например, Горбунков С.С.
  • Заголовок окна - инсталляция программы будет состоять из нескольких последовательных окон, здесь указываются заголовки некоторых из них
  • Надпись снизу - прописывается информация об авторе или организации разработчика, которая будет появляться внизу всех окон инсталляции
  • Сохранить как - имя создаваемого инсталляционного пакета с путем размещения
  • Тип сжатия - выпадающий список для настройки алгоритма сжатия информации Cab (CABINET)
  • Тип разбивки - позволяет разбить пакет на несколько файлов

Страница 'Файлы'

Эта страница представлена в виде таблицы, каждая запись которой представляет один или несколько включаемых в пакет файлов и настройки по их обработке. Заполнение таблицы начинается со щелчка на кнопке Добавить. При этом появляется окно Добавить запись, в котором нужно заполнить следующие настройки


  • Файл - полное имя исходного файла, находящегося на вашем компьютере. Например, "C:\FilesToInstall\Lib\lib.dll". Если файлов несколько в одном каталоге, то выделяем все.
  • Путь извлечения - полный путь извлечения этого файла при установке на компьютер пользователя. Например, "%SystemDir%\lib.dll".
  • Если файл существует - что делать если устанавливаемый файл уже существует на компьютере пользователя:
    • Спросить - у пользователя будет запрошено подтверждение замены файла.
    • Спросить если новее - если заменяемый файл новее, чем устанавливаемый, то у пользователя будет запрошено подтверждение замены файла, иначе файл будет пропущен (не будет распакован).
    • Заменить - записать файл поверх существующего.
    • Заменить если новее - записать файл поверх существующего, в случае, если файл имеет более позднее время обновления.
    • Пропустить - не распаковывать файл.
  • Деинсталлировать - если отмечен, то этот файл будет автоматически удаляться при деинсталляции.

Страница 'Требования'

  • Поддерживаемые версии операционных систем - выберите операционные системы, под которыми может запускаться инсталлятор:
    • Windows 95
    • Windows 98
    • Windows ME
    • Windows NT
    • Windows 2000
    • Windows XP
    • Windows 2003 Server
    • Windows Vista
  • Требовать права Администратора - отметьте, чтобы при запуске инсталлятор проверял наличие прав пользователя. При отсутствии необходимого права установка не будет произведена.
  • Проверять версию .NET Framework - отметьте, чтобы при запуске инсталлятор проверял версию библиотеки .NET Framework, установленной на компьютере. Если необходимая версия отсутствует, установка не будет произведена, а инсталлятор выведет сообщение с предложением зайти на указанный вами сайт, для загрузки необходимой версии библиотеки.
    • 1.0 - Устанавливаемая программа может работать с .NET Framework версии 1.0
    • 1.1 - Устанавливаемая программа может работать с .NET Framework версии 1.1
    • 2.0 - Устанавливаемая программа может работать с .NET Framework версии 2.0
    • 3.0 - Устанавливаемая программа может работать с .NET Framework версии 3.0
    • 1.0 и выше - Устанавливаемая программа может работать с .NET Framework версии 1.0 и выше
    • 1.1 и выше - Устанавливаемая программа может работать с .NET Framework версии 1.1 и выше
    • 2.0 и выше - Устанавливаемая программа может работать с .NET Framework версии 2.0 и выше
    • 3.0 и выше - Устанавливаемая программа может работать с .NET Framework версии 3.0 и выше
  • Если отсутствует, открыть следующую страницу - отметьте, чтобы при отсутствии необходимой версии .NET Framework, инсталлятор предлагал зайти на указанный сайт.
  • Закрыть запущенные приложения - здесь вы можете указать те приложения, которые должны быть закрыты в начале установки.
  • Искомая строка - укажите строку заголовка по которой будут искаться закрываемые приложения.
  • Тип поиска:
    • Точный заголовок окна - закроются те приложения у которых заголовок окна совпадает с указанным выше.
    • Подстрока заголовка окна - закроются приложения, заголовок окна которых содержит указанную строку.

Страница 'Диалоги'

Эта страница содержит несколько вкладок:

Вкладка 'Общая'
  • Скрытая установка - если включен, установка будет производиться скрыто, без показа диалоговых окон и вывода сообщений. Данные для установки берутся по умолчанию.
  • Показывать диалоги - с помощью этих опций вы можете включить/выключить страницы диалогов, которые будут отображаться в инсталляторе:
    • Страница приветствия
    • Страница выбора папки установки
    • Страница выбора программной группы
    • Страница выбора дополнительных ярлыков
    • Страница готовности к установке
    • Страница завершения установки
  • Каталог установки - папка для установки программы, которая будет по умолчанию.
  • Имя папки в меню Пуск->Программы - здесь Вы можете определить свое имя для папки в Пуск->Программы, где будут находиться Ваши ярлыки.
Вкладка 'Лицензия/Информация'
  • Показывать лицензионное соглашение - отметьте этот флажок, если Вы хотите показывать страницу с лицензионным соглашением в процессе установки.
  • Показывать информацию - отметьте этот флажок, если Вы хотите показывать страницу с текстом информации в процессе установки.
Вкладка 'Пароль'
  • Установить пароль - отметьте этот флажок, чтобы защитить установку паролем.
  • Пароль - пароль, который будет необходимо ввести для установки программы (любые символы с учетом регистра).
  • Отображать пароль при вводе - если включен, то пароль будет видно при вводе, иначе он будет скрыт за звездочками.
  • В верхнем регистре - если включен, то пароль будет набираться только в верхнем регистре.
Вкладка 'Завершение'
  • Показать флажок "Перезагрузить компьютер" - отметьте, если Вы хотите показывать данный флажок при завершении установки. Если при завершении установки этот флажок будет включен, то компьютер будет перезагружен.
  • Показать флажок "Запустить установленное приложение" - отметьте, если Вы хотите показывать данный флажок при завершении установки.
    • Файл - указать файл, который программа установки автоматически запустит, если при завершении установки флажок "Запустить установленное приложение" пользователем будет включен.
    • Включен по умолчанию - устанавливает начальное состояние флажка по умолчанию.
  • Показать флажок "Посмотреть Readme" - отметьте, если Вы хотите показывать данный флажок при завершении установки.
    • Файл - указать файл, который программа установки автоматически запустит, если при завершении установки флажок "Посмотреть Readme" пользователем будет включен.
    • Включен по умолчанию - устанавливает начальное состояние флажка по умолчанию.
  • Показать флажок "Посетить сайт" - отметьте, если Вы хотите показывать данный флажок при завершении установки.
    • Адрес - указать адрес, на который программа установки автоматически отправит пользователя, если при завершении установки флажок "Посетить сайт" будет им включен.
    • Включен по умолчанию - устанавливает начальное состояние флажка по умолчанию.

Страница 'Интерфейс'

На этой странице выполняется настройка графического оформления интерфейса диалоговых окон установочного пакета. Страница содержит 5 вкладок:

Вкладка 'Фон'

Эта вкладка позволяет включить и настроить полноэкранный вариант программы инсталляции.

  • Показывать фон - показывать или нет фон для окна Вашего инсталлятора.
  • Просмотр - посмотреть фон.
  • Градиент - градиентный фон.
    • Цвет заливки - цвета заливки градиентного фона.
    • Переход цвета:
      • Вертикальный - вертикальный переход цвета в градиентном фоне.
      • Горизонтальный - горизонтальный переход цвета в градиентном фоне.
  • Картинка - в качестве фона используется изображение картинки.
    • Файл картинки - имя файла картинки для фона.
    • Тип заливки - укажите метод отображения для фоновой картинки.
      • Заполнить - размножить изображение картинки.
      • Растянуть - растянуть изображение картинки.
      • По центру - установить изображение картинки по центру.
  • Текст заголовка - этот текст будет выведен в качестве заголовка в левом верхнем углу фонового окна.
  • Имя компании - текст, который будет показываться в правом нижнем углу фонового окна мелким шрифтом.
Вкладка 'Заголовок'

На этой вкладке вы можете настроить отображение заголовочной панели инсталлятора.

  • Показывать картинку заголовка - отображать картинку на заголовочной панели инсталлятора
    • Файл картинки - файл картинки заголовка.
    • Прозрачный фон картинки - прозрачный фон картинки.
  • Показывать градиентный фон - отображать градиентный фон на заголовочной панели инсталлятора.
Вкладка 'Логотип'
  • Показывать логотип - позволяет включить и выбрать картинку, которая будет отображаться с левой стороны диалоговых окон инсталляции программы.
    • Файл картинки - файл картинки слева.
    • Прозрачный фон картинки - прозрачный фон картинки.
Вкладка 'Языки'

Здесь Вы должны выбрать язык(и) для Вашей инсталляции.

Вкладка 'Значок'
  • Иконка инсталлятора - выберите иконку для exe-файла инсталлятора.
  • Иконка деинсталлятора - выберите иконку для exe-файла деинсталлятора.

Страница 'Ярлыки'

Здесь Вы можете определить ярлыки для Вашего приложения. Страница организована в виде таблицы, которую заполняют при щелчке на кнопке Добавить через диалоговое окно Добавить запись


Поля этого окна имеют следующее значение:

  • Место создания - укажите место, где будет создан ярлык.
    • Рабочии стол
    • Меню Пуск
    • Меню Пуск->Программы
    • Панель быстрого запуска
    • Другой путь... (при выборе этого пункта в поле "Имя ярлыка" необходимо писать полный путь к ярлыку, например, "%StartUp%\MyApp").
  • Имя ярлыка - название ярлыка (при выборе опции "Другой путь..." в поле "Место создания" здесь необходимо писать полный путь к ярлыку, например, "%StartUp%\MyApp").
  • Имя файла - имя запускаемого файла. Сюда можно вводить как путь к файлу на диске, так и ссылку на ресурс интернета или адрес электронной почты, например "http://www.sminstall.com/rus/" или "mailto:company@sminstall.com".
  • Параметры - введите параметры командной строки, если они необходимы.
  • Текст подсказки - комментарий ярлыка (всплывающая подсказка), который будет отображаться при наведении курсором мыши на ярлык.
  • Файл иконки - если ярлык должен использовать иконку из другого файла, введите тут полное имя файла иконки.
  • Индекс иконки - если Вы определили файл иконки содержащий более одного изображения, то укажите в этом поле номер требуемой иконки.
Примеры

1) Ярлык на деинсталлятор: Где создавать: Программная группа Имя ярлыка: Uninstall Имя файла: %InstallPath%\Uninstall.exe

2) Ярлык в Автозагрузке: Где создавать: Другой путь... Имя ярлыка: %StartUp%\MyApp Имя файла: %InstallPath%\MyApp.exe

Самостоятельная работа 1: 12345678910 || Самостоятельная работа 2 >
Алексей Бабушкин
Алексей Бабушкин

При выполнении в лабораторной работе упражнения №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" или один из зависимых от них компонентов. Не удается найти указанный файл.

Делаю все пунктуально. В чем может быть проблема?