Шаг 99.
Microsoft Visual C++ 2010. Язык С/С++.
Приложения Windows Forms. Некоторые файлы проекта

    На этом шаге мы рассмотрим назначение и содержание некоторых файлов проекта.

    Среда VC++ в момент создания проекта (приложения) формирует массу различных файлов. Но не все файлы, которые образуются в среде разработки, включаются в тот или иной проект. Это зависит от типа проекта и от тех опций, которые вы выбираете, когда пользуетесь Мастером создания проекта. Изучая предыдущий материал, вы, наверное, заметили, что при формировании проекта только отвечали на вопросы, делая тот или иной выбор. Это работала специальная программа, которая и называется Мастером создания проекта.

    В таблице 1 приведены собственно проектные файлы. Следует отметить, что не все проектные файлы отражены в Solution Explorer (Обозревателе решений) (точнее сказать, там отражен только самый минимум). В опции Tools | Options | Projects and Solutions (Сервис | Параметры | Проекты и решения) можно посмотреть расширения файлов, предусмотренных для проектов и решений.


Рис.1. Окно "Параметры"

    Если перевести проект в режим Show All Files (Показать все файлы) из опции Project (Проект) главного меню среды, то файлы покажутся все равно не все: в правом диалоговом окне, открывающемся при выполнении опции Tools | Options | Projects and Solutions (Сервис | Параметры | Проекты и решения), мы увидим опцию Extentions To Hide (Скрываемые расширения) (рисунок 1), содержащую список расширений файлов, которые (файлы) будут скрыты даже тогда, когда проект находится в режиме Show All Files (Показать все файлы).

Таблица 1. Собственно проектные файлы
Имя файла Описание
Form1.h h-файл, содержащий описание формы и всех ее компонентов
app.rc Файл ресурсов проекта, записанный в виде сценария, который в зависимости от типа проекта содержит описание диалоговых окон, панелей инструментов, пиктограмм, версии проекта и др.
app.ico Здесь хранится пиктограмма программы
resource.h Этот заголовочный файл содержит в себе определения ресурсов, используемых в проекте, сгенерированных из файла app.rc
stdafx.h Этот файл используется для построения предкомпиляционного заголовочного файла и предкомпиляционных объектных файлов
AssemblyInfo.cpp Этот файл содержит информацию по сборке проекта (файлы, ресурсы, типы и т. п.)
stdafx.cpp Здесь содержится информация для создания предкомпиляционных файлов
Projname.cpp CPP-файл, содержащийт функцию int main(), директиву препроцессора #include, осуществляющую подключение h-файла, содержащего описание формы и всех ее компонентов
Solname.sin Этот файл относится к категории группы проектов, объединенных в одно Решение. Он организует все элементы проекта (проектов) в одно общее Решение
Projname.suo Это файл опций Решения. Хранит все пользовательские режимы, задаваемые при создании Решения
Projname.vcproj Это главный файл проекта для VC++ проектов, генерируемых с использованием Мастера Приложений - программы, формирующей приложения на основании диалога с пользователем, создающим приложение. Она содержит информацию о версии среды разработки, о платформе, на которой создается приложение, и о свойствах созданного проекта
Projname.idl Содержит код описания интерфейса для управления библиотекой типов (он используется для генерации такой библиотеки). Эта библиотека выставляет интерфейс компонента другим клиентам
Projname.ncb Это некомпилируемый файл. Содержит информацию, генерируемую специальной программой - синтаксическим анализатором, которая используется классом View (просмотр информации). Если этот файл случайно удален, то он автоматическ регенерируется
Readme.txt В этом файле описываются некоторые файлы созданного проекта

    Ниже приведен пример файла Readme.txt для проекта Jaluzi.

========================================================================
    ПРИЛОЖЕНИЕ : Обзор проекта Jaluzi
========================================================================

Это приложение Jaluzi создано автоматически с помощью мастера 
приложений.  

Здесь приведены краткие сведения о содержимом каждого из файлов, использованных 
при создании приложения Jaluzi.

Jaluzi.vcxproj
    Это основной файл проекта VC++, автоматически создаваемый с помощью мастера 
    приложений. 
    Он содержит данные о версии языка Visual C++, использованной для создания 
    файла, а также сведения о платформах, настройках и свойствах проекта, 
    выбранных с помощью мастера приложений.

Jaluzi.vcxproj.filters
    Это файл фильтров для проектов VC++, созданный с помощью мастера 
    приложений. 
    Он содержит сведения о сопоставлениях между файлами в вашем проекте и 
    фильтрами. Эти сопоставления используются в среде IDE для группировки 
    файлов с одинаковыми расширениями в одном узле (например файлы ".cpp" 
    сопоставляются с фильтром "Исходные файлы").

Jaluzi.cpp
    Это основной исходный файл приложения.
    Код для отображения формы.

Form1.h
    Реализация класса формы и функции InitializeComponent().

AssemblyInfo.cpp
    Пользовательские атрибуты для изменения метаданных сборки.

/////////////////////////////////////////////////////////////////////////////
Другие стандартные файлы:

StdAfx.h, StdAfx.cpp
    Эти файлы используются для построения файла предкомпилированного заголовка 
    (PCH) с именем Jaluzi.pch и файла предкомпилированных типов 
    с именем StdAfx.obj.

/////////////////////////////////////////////////////////////////////////////

    Помимо собственно проектных файлов среда разработки формирует и файлы предварительной компиляции проекта stdafx.h и stdafx.cpp. Эти файлы используются для создания предварительно компилируемого заголовочного файла Projname.pch и объектного файла stdafx.obj.

    Приведем некоторые сведения и о ресурсных файлах.

    Ресурсы - это интерфейсные элементы, которые обеспечивают пользователя информацией (к ним относятся графические битовые изображения, пиктограммы, линейки инструментов, курсоры и др.). В таблице 2 перечислены такие файлы.

Таблица 2. Ресурсные файлы
Имя файла Описание
Projname.rc Этот файл содержит информацию, зависящую от типа проекта. Например, это могут быть линейки инструментов, меню по умолчанию, таблицы строк, диалоговые окна по умолчанию, файл пиктограмм, информация о версиях проекта, битовые изображения, HTML-файлы
Resource.h В этом файле содержатся определения ресурсов, используемых в проекте
Projname.rc2 Здесь содержатся дополнительные ресурсы, используемые в проекте
Projname.def Здесь хранятся имя и описание компонента, размер занимаемой им памяти во время исполнения проекта
Projname.ico Файл пиктограмм для проекта или компонента
Toolbar.bmp Графический файл, представляющий приложение или компонент на линейке инструментов или в палитре компонентов

    На следующем шаге мы рассмотрим окно "Свойства".




Предыдущий шаг Содержание Следующий шаг