Связанные и внедренные ресурсы
Проекты Visual Studio предоставляют два варианта обработки ресурсов: они могут быть связаны (по умолчанию) или внедрены.В одном проекте можно иметь и связанные и внедренные ресурсы.Однако, чаще всего для всех ресурсов в проекте выбирается какой-либо один вариант.
Связанные ресурсы хранятся в виде файлов в проекте; во время компиляции, данные ресурсов берутся из файлов и добавляются к манифесту приложения.Файл ресурсов приложения (.resx) хранит только относительный путь или ссылку на файл, хранящийся на диске.
В случае внедренных ресурсов, данные ресурсов хранятся непосредственно в файле .resx в текстовом представлении двоичных данных.В любом случае, данные ресурсов компилируются в исполняемый файл.
Связанные ресурсы можно изменить на внедренные, путем изменения свойства Persistence для файла ресурсов.Дополнительные сведения см. в разделе Создание внедренных ресурсов далее в этом разделе.
Примечание |
---|
Строковые ресурсы всегда внедрены и не могут быть изменены; файл ресурсов всегда связан и не может быть изменен. |
Выбор между внедренными и связанными ресурсами
В общем случае, следует использовать связанные ресурсы, поскольку они являются простыми в использовании.Тем не менее, имеются случаи, в которых внедренные ресурсы могут стать лучшим выбором.
Внедренные ресурсы
Внедренные ресурсы являются наилучшим решением, если необходимо совместно использовать файлы ресурсов (.resx) приложения в нескольких проектах.Например, при наличии общего файла ресурсов с логотипами организации, сведениями о товарном знаке и т.п., использование внедренных ресурсов означает, что достаточно скопировать только файл .resx и не сопоставлять файлы данных ресурсов.
Внедренные ресурсы нельзя редактировать непосредственно.При попытке изменить внедренный ресурс, появится сообщение, предлагающее преобразовать элемент в связанный ресурс, чтобы его отредактировать.Преобразование рекомендуется, но необязательно.Ресурсы необходимо экспортировать, внести изменения во внешней программе и затем импортировать обратно в проект.
Создание внедренных ресурсов
При добавлении ресурсов в проект Visual Studio, они создаются как связанные ресурсы.В некоторых случаях, возможно, потребуется внедрить ресурс в файл ресурсов (RESX) приложения.
Связанные ресурсы могут быть изменены на внедренные на странице Ресурсы в окне Конструктор проектов.
Примечание |
---|
Строковые ресурсы всегда внедряются в файле RESX и не могут быть изменены на связанные ресурсы; файлы ресурсов всегда компонуются во время компиляции. |
Чтобы сделать из связанного ресурса внедренный
Выбрав проект в обозревателе решений, в меню Проект выберите пункт Свойства.
Перейдите на вкладку Ресурсы.
В панели инструментов Конструктора ресурсов наведите курсор на раскрывающийся список ресурсов, щелкните стрелку и выберите тип ресурса, который требуется изменить.
Выберите ресурс, который требуется изменить.
В окне Свойства выберите свойство Cохраняемость и измените его на Внедренный в RESX.
Редактирование внедренных ресурсов
Изменять внедренные ресурсы проекта Visual Studio непосредственно в среде разработки Visual Studio невозможно; их необходимо экспортировать и редактировать во внешней программе, затем импортировать обратно в проект.
Экспорт внедренного ресурса
Выберите проект в обозревателе решений, затем щелкните Свойства в меню Проект.
Перейдите на вкладку Ресурсы.Открывается страница конструктора ресурсов с панелью инструментов вверху страницы.
В первом раскрывающемся списке панели инструментов конструктора ресурсов выберите тип внедренного ресурса (например, "Изображения", "Значки" или "Звук"), который требуется импортировать. В конструкторе ресурсов отображаются все имеющиеся в проекте ресурсы этого типа.
Выберите ресурс, который требуется экспортировать, например значок или звуковой файл.
Щелкните ресурс правой кнопкой мыши и выберите в контекстном меню пункт Экспорт в файл.
Примечание Эта команда доступна только для внедренных ресурсов.
В диалоговом окне Экспортировать ресурс в файл перейдите к папке, в которую нужно экспортировать файл, и нажмите кнопку Сохранить.
Чтобы импортировать ресурс
Выберите проект в обозревателе решений, затем щелкните Свойства в меню Проект.
Перейдите на вкладку Ресурсы.Открывается страница конструктора ресурсов.
В первом раскрывающемся списке панели инструментов конструктора ресурсов выберите тип внедренного ресурса (например, "Изображения", "Значки" или "Звук"), который требуется импортировать. В конструкторе ресурсов отображаются все имеющиеся в проекте ресурсы этого типа.
Выберите ресурс, который требуется импортировать, например значок или звуковой файл.
Щелкните ресурс правой кнопкой мыши и выберите в контекстном меню пункт Импорт из файла.
Примечание Эта команда доступна только для внедренных ресурсов.
В диалоговом окне Импортировать файл в ресурс найдите файл, который нужно импортировать, и щелкните Открыть.
Связанные ресурсы
Связанные ресурсы (по умолчанию) являются наилучшим решением для простоты использования.Ресурсы можно редактировать непосредственно внутри проекта и легко добавить или удалить по мере необходимости.
Чтобы сделать из внедренного ресурса связанный
Выбрав проект в обозревателе решений, в меню Проект выберите пункт Свойства.
Перейдите на вкладку Ресурсы.
В панели инструментов Конструктора ресурсов наведите курсор на раскрывающийся список ресурсов, щелкните стрелку и выберите тип ресурса, который требуется изменить.
Выберите ресурс, который требуется изменить.
В окне Свойства выберите Сохраняемость и измените его на Скомпоновано во время компиляции.
См. также
Задачи
Практическое руководство. Добавление или удаление ресурсов
Практическое руководство. Изменение ресурсов