Winres.exe (редактор для локализации ресурсов Windows)Winres.exe (Windows Resource Localization Editor)

Редактор для локализации ресурсов Windows (Winres.exe) — это программа визуальной разметки, используемая при локализации ресурсов пользовательского интерфейса Windows Forms.The Windows Resource Localization Editor, Winres.exe, is a visual layout tool that helps localization experts localize Windows Forms user interface (UI) resources used by forms. Файлы RESX и RESOURCES, используемые как входные для программы Winres.exe, могут быть созданы с использованием среды визуального проектирования, такой как Microsoft Visual Studio.The .resx or .resources files that are used as input to Winres.exe can be created using a visual design environment such as Microsoft Visual Studio. Информацию о развертывании ресурсов в приложениях .NET Framework см. в разделе Ресурсы в приложениях для настольных систем.For information on deploying resources in .NET Framework applications, see Resources in Desktop Apps.

Приложение Winres.exe устанавливается вместе с Visual Studio.Winres.exe is installed with Visual Studio. Для запуска средства используйте командную строку разработчика Visual Studio.To run the tool, use the Developer Command Prompt for Visual Studio. Дополнительные сведения см. в разделе Командные строки.For more information, see Command Prompts.

СинтаксисSyntax

winres resourceFile
winres /?

АргументыArguments

АргументArgument ОписаниеDescription
resourceFile Файл ресурсов, который требуется локализовать.The resource file to localize. Это должен быть файл ресурсов Windows Forms с расширением RESX или RESOURCES, созданный с помощью конструктора Visual Studio.This file must be a Windows Forms form .resx or .resources file generated by the Visual Studio designer. Программа Winres.exe не может открывать универсальные RESX-файлы и RESOURCES-файлы.Winres.exe cannot open generic .resx or .resources files.
ПараметрOption ОписаниеDescription
/?/? Отображает синтаксис команд и параметров программы.Displays command syntax and options for the tool.

ПримечанияRemarks

Состояние элементов пользовательского интерфейса формы в проекте Windows Forms обычно хранится в файлах ресурсов — файлах на основе XML с расширением RESX или соответствующих им скомпилированных двоичных версиях с расширением RESOURCES.The state of UI elements from a form in a Windows Forms project are typically stored in resource files, which are either XML-based files with the extension .resx or the corresponding compiled, binary versions with the extension .resources. Программа Winres.exe предоставляет ограниченные возможности редактирования файлов обоих типов вне среды разработки Visual Studio.Winres.exe is a tool that enables limited editing of either type of file outside of the Visual Studio design environment. В частности, она поддерживает следующие виды операций редактирования.Specifically, it allows the following types of editing operations:

  • Предусмотрено редактирование файла ресурсов, зависящего или не зависящего от языка и региональных параметров, для изменения свойств пользовательского интерфейса формы или ее элементов управления, например текста, размера или положения.A neutral or specific culture resource file can be edited to change the UI properties of the form or its controls, such as their text, size, or position.

  • Можно создавать файлы ресурсов, зависящие или не зависящие от языка и региональных параметров, из файла ресурсов по умолчанию.Neutral or specific culture resource files can be generated from the default resource file.

  • Файл ресурсов определенного языка и региональных параметров можно сохранить в виде файла ресурсов другого языка региональных параметров.A culture resource file can be saved as another culture resource file. Например, файл ресурсов английского языка (США) можно сохранить как файл ресурсов польского языка.For example, an English (U.S.) resource file could be saved as a Polish resource file. Обычно новый файл требует дополнительного редактирования для приведения в соответствие новому языку и региональным параметрам.Typically the new file would subsequently be edited to be compatible with the new culture.

Также см. раздел Иерархическая организация ресурсов для локализации или Иерархическая организация ресурсов для локализации.Also see Hierarchical Organization of Resources for Localization or Hierarchical Organization of Resources for Localization.

Программа Winres.exe не может преобразовать RESX-файл в соответствующий ему RESOURCES-файл, для этого используется программа Resgen.exe.Winres.exe cannot convert a .resx file into its corresponding .resources file; use the Resgen.exe tool instead. Дополнительные сведения о программе Resgen.exe см. в разделе Resgen.exe (генератор файлов ресурсов).For more information about Resgen.exe, see Resgen.exe (Resource File Generator).

Программа Winres.exe представляет собой графическое приложение, которое воссоздает форму Windows Forms в виде версии этапа разработки, используя лишь файл ресурсов, без доступа к исходному коду.Winres.exe is a graphical application that recreates a design-time version of a Windows Forms form from just the resource file, without having access to the source code. Интерфейс программы Winres.exe включает конструктор форм Windows Forms из Visual Studio и окно свойств.Winres.exe hosts Visual Studio's Windows Forms Form Designer and Properties window. Такой подход позволяет визуально редактировать RESOURCES-файл или RESX-файл, содержащий форму Windows Forms.These features enable visual editing of a .resources or .resx file containing a Windows Forms form. Обычно программа Winres.exe используется для изменения подписей элементов управления и настройки их расположения и размера, чтобы подписи могли вместить текст на требуемом языке.Typically, localizers use Winres.exe to edit control labels and adjust the location and size of controls to accommodate the labels for the target culture.

Если программа Winres.exe не может разрешить какой-либо тип элемента управления, она создает его прототип в локализованном файле RESX или RESOURCES.If Winres.exe cannot resolve the type of a control, it creates a placeholder control in the localized .resx or .resources file. Прототип элемента управления отображается в форме Windows Forms в виде заштрихованного окна.The placeholder control appears on the Windows Forms form as a hatched window. Размер и расположение заштрихованного окна совпадают с размером и расположением самого элемента управления.The size and position of the hatched window matches that of the actual control. Все доступные для локализации свойства прототипа элемента управления показаны в окне Свойства.All the available localizable properties for the placeholder control appear in the Properties window. Все изменения, внесенные в прототип, сохраняются в самом элементе управления.Any changes that you make to the placeholder control are saved for the actual control.

Сравнение программы Winres.exe со средой Visual StudioWinres.exe versus Visual Studio

Обычно, прежде чем приступать к локализации форм Windows Forms для приложения, необходимо выбрать инструмент локализации: Visual Studio или программа Winres.exe.In general, before you begin to localize an application's Windows Forms forms, you should decide whether you want to use Visual Studio or Winres.exe as the localization tool. Свободное переключение между этими двумя инструментами для локализации может быть невозможно из-за проблем совместимости версий, описанных ниже.Version compatibility, as described later, may prevent you from switching from one tool to the other.

Преимущество среды Visual Studio заключается в том, что ее можно использовать как для разработки приложения, так и для его локализации.The advantage of Visual Studio is that you can use it to both develop and localize an application. Чтобы локализовать форму после ее разработки, задайте значение true для свойства LocalizableAttribute (свойство Localizable в редакторе свойств) и значение, соответствующее требуемому языку локализации, для свойства Language.To localize a form, after development is complete, set the form's LocalizableAttribute (the Localizable property in the Properties editor) to true and change its Language property to the desired target culture. Затем необходимо отредактировать строки и настроить расположение и размер элементов управления таким образом, чтобы они смогли вместить строки на языке локализации.Then, edit strings and adjust the location and size of controls to accommodate the strings for the target culture. Среда Visual Studio при сохранении локализованного RESX-файла записывает в него только локализуемые свойства (изменяющиеся на языке локализации).When you save the localized .resx file, Visual Studio writes only the localizable properties (properties that changed in the target culture) to the file. Среда Visual Studio автоматически создает в нужном каталоге вспомогательную сборку для локализованного RESX-файла.Visual Studio automatically creates a satellite assembly for the localized .resx file in the correct directory location.

Хотя Visual Studio обеспечивает интегрированную среду разработки и локализации, сторонним локализаторам рекомендуется использовать программу Winres.exe.Although Visual Studio provides an integrated development and localization environment, Winres.exe is the recommended tool to use if localization is done by third-party localizers. Так как программа Winres.exe предназначена только для локализации, она позволяет более четко отделить код приложения от локализуемых форм, что лучше подходит для управления большими проектами.Because Winres.exe is a localization tool only, it allows for a cleaner separation of an application's code from the forms to be localized, which is more practical for managing large projects.

Использование программы Winres.exeUsing Winres.exe

Чтобы выполнить локализацию с помощью программы Winres.exe, необходимо сначала разработать приложение с помощью визуального конструктора, такого как конструктор Windows Forms в Visual Studio.To localize using Winres.exe, you must first develop an application using a visual designer like the Windows Forms Designer in Visual Studio. После завершения разработки присвойте свойству LocalizableAttribute данной формы (свойство Localizable в редакторе свойств) значение true и передайте стороннему локализатору RESX-файл с языком и региональными параметрами по умолчанию.When development is complete, set the form's LocalizableAttribute (the Localizable property in the Properties editor) to true, and then hand off the .resx file for the default culture to a third-party localizer. Такой RESX-файл содержит дополнительные сведения, которые программа Winres.exe использует для воссоздания версии исходной формы, соответствующей времени разработки.This .resx file contains extra information that Winres.exe uses to recreate a design-time version of the original form.

Примечание

Программу Winres.exe нельзя использовать для редактирования файла ресурсов по умолчанию.Winres.exe cannot be used to edit the default resource file. Программа Winres.exe интерпретирует все измененные свойства как локализованные и сохраняет их в файле ресурсов на языке локализации.Winres.exe interprets all changed properties as localized properties and saves them to the target culture resource file.

Окончательные версии файлов ресурсов на языке локализации могут в итоге быть использованы для создания локализованных версий приложения.The final versions of the culture resource files can finally be used to create localized versions of the application. Дополнительные сведения см. в разделе Ресурсы в приложениях для настольных систем.For more information, see Resources in Desktop Apps.

Программа Winres.exe поддерживает следующие возможности:Winres.exe has the following features and capabilities:

  • Программа Winres может работать в режиме одного файла (SFM) или в режиме файлов Visual Studio (VSFM).Winres can operate in Single File Mode (SFM) or Visual Studio File Mode (VSFM). SFM — это устаревший режим, предусматривающий хранение всей информации о форме и ее содержимом в файле ресурсов.SFM is the legacy mode where complete information about the form and its contents is stored to the resource file. В режиме VSFM в файле ресурсов хранятся только изменения, связанные с языком и региональными параметрами.VSFM only stores only the cultural changes in the resource file.

  • Окно сообщений об ошибках находится в левом нижнем углу основного окна.An error-reporting window, docked to the bottom-left of the main window.

  • С помощью команды Проверить сочетания клавиш в меню Формат можно проверить наличие дублирующихся сочетаний клавиш.Hotkeys can be checked for duplicates: from the Format menu, click the Check HotKeys command.

Совместимость версийVersion Compatibility

Рекомендуется использовать версию Winres.exe, выпущенную вместе с платформой .NET Framework.You should use the version of Winres.exe that was released with the .NET Framework you are using. В таблице ниже представлен список совместимых версий:The following table lists the compatible versions:

Visual StudioVisual Studio .NET Framework.NET Framework Winres.exeWinres.exe
Visual Studio .NET 2002Visual Studio .NET 2002 1.01.0 1.01.0
Visual Studio .NET 2003Visual Studio .NET 2003 1.11.1 1.11.1
Visual Studio 2005Visual Studio 2005 2.02.0 2.02.0
Visual Studio 2008Visual Studio 2008 3.0 и 3.53.0 and 3.5 3.0 и 3.53.0 and 3.5
Visual Studio 2010Visual Studio 2010 4.04.0 4.04.0
Visual Studio 2017Visual Studio 2017 4.64.6 4.64.6

Примечание

Режим VSFM обладает преимуществом в плане совместимости с Visual Studio, но поскольку в этом режиме в файле ресурсов хранятся только измененные значения, для программы Winres.exe требуется, чтобы в каталоге текущего файла ресурсов располагались и его родительские файлы.Although VSFM has the advantage of being compatible with Visual Studio, since it stores only changed values in the resource file, Winres.exe requires that the parents of the current resource file be located in the same directory. Например, при редактировании немецкоязычного файла ресурсов TestApp.de-DE.resources необходимо наличие файла ресурсов по умолчанию TestApp.resx, а также, возможно, не зависящего от языка файла ресурсов TestApp.de.resources.For example, editing TestApp.de-DE.resources, a German in Germany resource file, requires the presence of the default resource file, TestApp.resx, and possibly the culture-neutral resource file, TestApp.de.resources.

ПримерыExamples

Локализация файла RESX или RESOURCES, связанного с формойTo localize a .resx or .resources file associated with a form

  1. Чтобы запустить программу Winres.exe, введите в командной строке разработчика winres.Type winres in the developer command prompt to run Winres.exe.

  2. Чтобы открыть ресурсы по умолчанию для локализуемой формы, выберите команду Открыть в меню Файл и найдите нужный файл.To open the default resources for a form to localize, click the Open command on the File menu and navigate to the file to open it.

    - или --or-

    При запуске программы Winres.exe в командной строке укажите файл, который требуется открыть.Specify the file to open at the command line when you start Winres.exe.

    Следующая команда запускает программу Winres.exe и загружает форму, связанную с файлом TestApp.resx, в конструктор форм.The following command starts Winres.exe and loads the form associated with TestApp.resx in the Form Designer.

    winres TestApp.resx
    

    Следующая команда запускает программу Winres.exe и загружает форму, связанную с файлом TestApp.resources, в конструктор форм.The following command starts Winres.exe and loads the form associated with TestApp.resources in the Form Designer.

    winres TestApp.resources
    

    Примечание

    Если форма, ресурсы которой редактируются, является унаследованной, необходимо, чтобы и сборка, содержавшая исходную форму, и сборка, содержащая наследующую (производную) форму, были зарегистрированы в глобальном кэше сборок или располагались в том же каталоге, что и программа WinRes.exe.If the form whose resources you are editing is an inherited form, both the assembly contained the inherited form and the assembly containing the inheriting (derived) form must either be registered in the Global Assembly Cache (GAC), or must reside in the same directory as WinRes.exe. Дополнительные сведения об установке компонентов .NET Framework в глобальный кэш сборок см. в разделе Глобальный кэш сборок.For more information about installing .NET Framework components into the GAC, see Global Assembly Cache.

  3. Выберите элементы управления в форме и измените значения их свойства Text и других свойств в соответствии с языком локализации и региональными параметрами.Select controls on the form and change their Text and other properties to reflect the localized culture and its language. Переместите элементы управления или измените их размер, чтобы вместить локализованный текст.Move or resize controls as necessary to accommodate the localized text.

  4. Чтобы сохранить локализованную версию файла RESX или RESOURCES, щелкните значок Сохранить или выберите команду с тем же именем в меню Файл.To save the localized version of the .resx or .resources file, click the Save icon or the same command on the File menu. Откроется окно Выбор языка и региональных параметров.The tool displays the Select Culture window.

  5. Выберите нужный язык и файловый режим и нажмите кнопку ОК.Select the appropriate culture and file mode then click OK.

    Программа сохранит файл, используя правила присвоения имен, которые среда выполнения требует применять к локализованным файлам ресурсов.The tool saves the file using the naming convention that the run time expects for localized resource files. Например, при локализации файла TestApp.resources на немецкий язык (Германия) этот файл будет сохранен как TestApp.de-DE.resources.For example, if you localize TestApp.resources for German in Germany, the tool saves the file as TestApp.de-DE.resources. При локализации файла TestApp.resx на немецкий язык (Германия) файл сохраняется как TestApp.de-DE.resx.If you localize TestApp.resx for German in Germany, the tool saves the file as TestApp.de-DE.resx. Подробнее о соглашениях об именовании ресурсов см. в разделе Упаковка и развертывание ресурсов.For more information about resource naming conventions, see Packaging and Deploying Resources. Список предварительно определенных названий языков, используемых средой выполнения, см. в разделе о классе CultureInfo.For a list of the predefined culture names used by the run time, see the CultureInfo class.

См. такжеSee also