Поделиться через


Включение ресурсов во время компиляции

Обновлен: Ноябрь 2007

Обычно работать с размещением по умолчанию всех ресурсов в одном файле описания ресурсов (RC) легко и удобно. Но разработчик может во время компиляции добавлять ресурсы в другие файлы своего текущего проекта, перечисляя их в поле Директивы времени компиляции в диалоговом окне "Включения ресурсов".

Существует несколько причин размещать ресурсы не в главном RC-файле:

  • Чтобы добавить комментарии в инструкции ресурсов, которые не будут удалены при сохранении RC-файла.

    Редакторы ресурсов не читают RC- или H-файлы напрямую. Компилятор ресурсов компилирует их в APS-файлы, используемые редактором ресурсов. Этот файл представляет собой этап компиляции и содержит только символьные данные. Как и при обычном процессе компиляции, данные, не являющиеся символьными (например комментарии) отбрасываются в процессе компиляции. При нарушении синхронизации APS-файла и RC-файла, RC-файл создается заново (например когда разработчик выбирает "Сохранить", редактор ресурсов переписывает RC-файл и файл resource.h). Любые изменения самих ресурсов не будут включены в RC-файл, но комментарии всегда будут потеряны при перезаписи RC-файла.

  • Чтобы включить ресурсы, которые уже были разработаны, протестированы и не требуют дальнейшего изменения. (Все включаемые файлы без расширения RC не смогут редактироваться с помощью редакторов ресурсов.)

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

  • Чтобы включить ресурсы (например ресурсы RCDATA) в настраиваемом формате. Ресурсы RCDATA могут предъявлять специальные требования. Например, нельзя использовать выражение в качестве значения для поля nameID. Дополнительные сведения см. в документации SDK для Windows.

При наличии разделов в существующих RC-файлах, соответствующих любому из этих условий, разработчику нужно поместить эти разделы в один или несколько отдельных RC-файлов и включить их в свой проект, используя диалоговое окно "Включения ресурсов". Для этой цели используется файл имя_проекта.rc2, создаваемый в подкаталоге \res нового проекта.

Включение ресурсов в проект во время компиляции

  1. Поместите ресурсы в файл описания ресурсов с уникальным именем файла. Не используйте имя_проекта.rc, так как это имя файла используется для главного файла описания ресурсов.

  2. Щелкните правой кнопкой мыши RC-файл (в представлении ресурсов) и выберите в контекстном меню пункт Включения ресурсов.

  3. В поле Директивы времени компиляции добавьте директиву компилятора #include, чтобы в среде разработки включить новый файл ресурсов в главный файл ресурсов.

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

Сведения о добавлении ресурсов в управляемые проекты см. в разделе Ресурсы приложенийРуководства разработчика .NET Framework. Сведения о том, как вручную добавлять файлы ресурсов в управляемые проекты, осуществлять доступ к ресурсам, отображать статические ресурсы и присваивать строки ресурсов свойствам см. в разделах Пошаговое руководство. Локализация приложений Windows Forms и Пошаговое руководство. Использование ресурсов для локализации совместно с ASP.NET.

Требования

Win32

См. также

Ссылки

Файлы ресурсов (Visual Studio)

Редакторы ресурсов