.NET Scanner

Overview. .NET scanner localizes ResX resource files. In order to make it easy to specify the files to localize, it's enough that the user specifies the solution or project name only -- Multilizer parses the project file to find out, which resources files belong to the project.

Note! Xaml files in the project or solution being scanned are skipped. If you want to localize a Xaml (WPF) project, use the .NET Assembly Scanner.

The user can also specify the location of resource files diretly and use wildcards.

The scanner detects the Form and other resource files and allows user to specify which properties to localize. By default all properties are localized.

The most important settings are the following:

  • File; the file to localize (solution, project, or directory with resx files). The user can specify multiples .resx files by using wildcards.
  • Excluded properties (Excluded properties tab); Allows excluding of properties in form data.



Output directory. Specifies the directory where the localized files will be created. This is the directory where Multilizer creates the localized output files and sub directories. You can control the name of the localized files and directories by setting Type, Coding, Locale separator and Country separator.

Output file name

Type. Specifies how and where MULTILIZER creates the localized file version(s). Possible options are:

Subdirectory Create localized file(s) in sub directories named by language and locale.
Bundle name Append the language and locale information in the output file name.
File extension Replace the original file extension with language and locale information.

Coding. Selects file name initial coding style. Possible values are:

ISO ISO standard coding style.
.NET Microsoft .Net coding style.
Windows Windows coding style.

Language delimiter. Specifies the language delimiter for naming the localized file version when Bundle name type is used. This delimiter separates the output file name from language and locale information. The default value is the underscore character (_).

Use new Chinese language codes. Specify whether to use old Chinese culture names "zh-CHS" and "zh-CHT", or to use the new ones: "zh-Hans" or "zh-Hant". The "zh-Hans" and "zh-Hant" names are needed when localizing Windows Vista applications and they were updated in the latest version of the standard.

Line feed. Specifies the line feed (end-of-line character), which is also used when the content is multi-line.

Output files. Specifies whether Multilizer writes out localized files or multilingual file.

Excluded files

On this tab user can specify a list of files that are not localized.

Excluded properties

This tab allows user to specify by property name what to exclude from localization.

For example [X] *.ZOrder means that ZOrder property is not localized and not included in Multilizer translation grid.

The text is case sensitive.


.NET version. Multilizer tries to detect the DotNet version of the source.NET solution or project. The version should be checked and set manually, if needed.

Compile localized resources. Specify whether to compile or not localized .resx files to satellite assemblies. By default the scanner only writes out localized .resx files.

In order to compile the satellite assemblies properly, the user must ensure that the scanner has detected the DotNet version properly.

Localized assemblies can be signed with a user-defined key file.

Compiled assemblies can get a user defined version number.

Check scanner log messages when building the localized files and compiling them.

Use .NET tool “resgen.exe” instead of internal resource converter. Specify whether the resources are going to be compiled either by the scanner or with DotNet SDK tools (resgen.exe). By default, the resources are compiled by the scanner. If “resgen.exe” is checked the full path to the tool executable must be provided.

Use VSFM instead of SFM. Specify whether to localize .resx files according to VSFM instead of SFM standard. In VSFM standard only the localized properties are written. In SFM all properties are written.

Note! If localized .resx are not compiled, the output filename equals the name of the original filename -- just the language identifier is added to the filename according to DotNet standard. If localized .resx files are compiled, then the filename may be changed to match the namespace.


Multilizer is able to pick comments from the stringresource ResX files that it scans. These comments are added as row comments in Multilizer project. To enable this feature, check Allow scan row comments option under Comments tab.

In addition, Multilizer is also able to write comments to localized stringresource resx files. To do this user must define, whether to write Multilizer project's row comments or translation comments under Build Options.


Multilizer is able to check that the scanned .resx file is well-formed. This is done in order to detect possible malformed xml in the source files. To enable this feature, check the corresponding option under Validation tab. Attempting to load a malformed file during scanning results in fatal error, but when validation feature is enabled, malformed files are skipped and no error is raised. The outcome of this validation process is included in corresponding scan report.


Try to get translations from localized resx-files. If checked the scanner tries to load translations from pre-localized .resx files. By default it is not checked, meaning that no translations are loaded.

Recurse directories. This option can be checked when a directory has been specified under File setting. If checked the scanner recurse existing subdirectories in order to find all resx/xaml files.


Some languages can't be localized due to limitations in .NET Framework for some cultures; see http://msdn.microsoft.com/en-us/library/system.globalization.cultureinfo.aspx.