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


Связанные и внедренные ресурсы

Проекты Visual Studio предоставляют два варианта обработки ресурсов: они могут быть связаны (по умолчанию) или внедрены.В одном проекте можно иметь и связанные и внедренные ресурсы.Однако, чаще всего для всех ресурсов в проекте выбирается какой-либо один вариант.

Связанные ресурсы хранятся в виде файлов в проекте; во время компиляции, данные ресурсов берутся из файлов и добавляются к манифесту приложения.Файл ресурсов приложения (.resx) хранит только относительный путь или ссылку на файл, хранящийся на диске.

В случае внедренных ресурсов, данные ресурсов хранятся непосредственно в файле .resx в текстовом представлении двоичных данных.В любом случае, данные ресурсов компилируются в исполняемый файл.

Связанные ресурсы можно изменить на внедренные, путем изменения свойства Persistence для файла ресурсов.Дополнительные сведения см. в разделе Создание внедренных ресурсов далее в этом разделе.

ПримечаниеПримечание

Строковые ресурсы всегда внедрены и не могут быть изменены; файл ресурсов всегда связан и не может быть изменен.

Выбор между внедренными и связанными ресурсами

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

ht9h2dk8.collapse_all(ru-ru,VS.110).gifВнедренные ресурсы

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

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

ht9h2dk8.collapse_all(ru-ru,VS.110).gifСоздание внедренных ресурсов

При добавлении ресурсов в проект Visual Studio, они создаются как связанные ресурсы.В некоторых случаях, возможно, потребуется внедрить ресурс в файл ресурсов (RESX) приложения.

Связанные ресурсы могут быть изменены на внедренные на странице Ресурсы в окне Конструктор проектов.

ПримечаниеПримечание

Строковые ресурсы всегда внедряются в файле RESX и не могут быть изменены на связанные ресурсы; файлы ресурсов всегда компонуются во время компиляции.

Чтобы сделать из связанного ресурса внедренный

  1. Выбрав проект в обозревателе решений, в меню Проект выберите пункт Свойства.

  2. Перейдите на вкладку Ресурсы.

  3. В панели инструментов Конструктора ресурсов наведите курсор на раскрывающийся список ресурсов, щелкните стрелку и выберите тип ресурса, который требуется изменить.

  4. Выберите ресурс, который требуется изменить.

  5. В окне Свойства выберите свойство Cохраняемость и измените его на Внедренный в RESX.

ht9h2dk8.collapse_all(ru-ru,VS.110).gifРедактирование внедренных ресурсов

Изменять внедренные ресурсы проекта Visual Studio непосредственно в среде разработки Visual Studio невозможно; их необходимо экспортировать и редактировать во внешней программе, затем импортировать обратно в проект.

Экспорт внедренного ресурса

  1. Выберите проект в обозревателе решений, затем щелкните Свойства в меню Проект.

  2. Перейдите на вкладку Ресурсы.Открывается страница конструктора ресурсов с панелью инструментов вверху страницы.

  3. В первом раскрывающемся списке панели инструментов конструктора ресурсов выберите тип внедренного ресурса (например, "Изображения", "Значки" или "Звук"), который требуется импортировать. В конструкторе ресурсов отображаются все имеющиеся в проекте ресурсы этого типа.

  4. Выберите ресурс, который требуется экспортировать, например значок или звуковой файл.

  5. Щелкните ресурс правой кнопкой мыши и выберите в контекстном меню пункт Экспорт в файл.

    ПримечаниеПримечание

    Эта команда доступна только для внедренных ресурсов.

  6. В диалоговом окне Экспортировать ресурс в файл перейдите к папке, в которую нужно экспортировать файл, и нажмите кнопку Сохранить.

Чтобы импортировать ресурс

  1. Выберите проект в обозревателе решений, затем щелкните Свойства в меню Проект.

  2. Перейдите на вкладку Ресурсы.Открывается страница конструктора ресурсов.

  3. В первом раскрывающемся списке панели инструментов конструктора ресурсов выберите тип внедренного ресурса (например, "Изображения", "Значки" или "Звук"), который требуется импортировать. В конструкторе ресурсов отображаются все имеющиеся в проекте ресурсы этого типа.

  4. Выберите ресурс, который требуется импортировать, например значок или звуковой файл.

  5. Щелкните ресурс правой кнопкой мыши и выберите в контекстном меню пункт Импорт из файла.

    ПримечаниеПримечание

    Эта команда доступна только для внедренных ресурсов.

  6. В диалоговом окне Импортировать файл в ресурс найдите файл, который нужно импортировать, и щелкните Открыть.

ht9h2dk8.collapse_all(ru-ru,VS.110).gifСвязанные ресурсы

Связанные ресурсы (по умолчанию) являются наилучшим решением для простоты использования.Ресурсы можно редактировать непосредственно внутри проекта и легко добавить или удалить по мере необходимости.

Чтобы сделать из внедренного ресурса связанный

  1. Выбрав проект в обозревателе решений, в меню Проект выберите пункт Свойства.

  2. Перейдите на вкладку Ресурсы.

  3. В панели инструментов Конструктора ресурсов наведите курсор на раскрывающийся список ресурсов, щелкните стрелку и выберите тип ресурса, который требуется изменить.

  4. Выберите ресурс, который требуется изменить.

  5. В окне Свойства выберите Сохраняемость и измените его на Скомпоновано во время компиляции.

См. также

Задачи

Практическое руководство. Добавление или удаление ресурсов

Практическое руководство. Изменение ресурсов

Другие ресурсы

Управление ресурсами приложения