View Large

# Multilingual App Toolkit

Free

## The Multilingual App Toolkit works with Visual Studio to streamline your localization workflow for Windows Store, Windows Phone and desktop apps. The toolkit helps you localize your apps with localization file management, translation support, and editing tools.

(11)
Visual Studio
2015, 2013, 2012
(36,060)
3/16/2016
3.1.1250
Description
Reviews (11)
Q and A (15)
Sort by:

by Monto2k2 | April 16 2016

Updates are really downgrades. I have VS Exp 2013 and VS Community 2015. MAT3 used to work in 2013 Exp, but when I upgraded to MAT4 it stopped working in 2013.

Then in the MAT Editor they removed the filter for New/Updated resource string. What the HELL!!!

| November 09 2015

One of the nicest helpers for software development I know.

| August 11 2015

| March 10 2015

Hi!
-Integration in Visual Studio > ok
-Tools / "Enable Multilingual App Toolkit" > ok
But, in the output message:

"Please set default culture for this project by adding or uncommenting the NeutralResourceLanguage attribute in the Assembly file."

What's wrong ? (I use Visual studio express 2013 in French version)

March 10 2015

The Toolkit needs to know the source language so it can manage the contents of the XLIFF file as well as provide the correct translation services. Not all projects have a source language defined by default, hence the message.

What is the project type (Store, Phone, WPF, etc). If I know that I can help figure out what to set to get past this message.

Please feel free to email me @ multilingual@microsoft.com. If you have a quick repro project, that would even be better.

Thanks,
Cameron

by Carl_W | November 20 2014

A good idea and seems to work well, but you get the following errors during build if any of your xlf files are readonly/source controlled:

1>C:\Program Files (x86)\MSBuild\Microsoft\Multilingual App Toolkit\v3.0\Microsoft.Multilingual.ResxResources.targets(44,5): error : One or more errors occurred.
1>C:\Program Files (x86)\MSBuild\Microsoft\Multilingual App Toolkit\v3.0\Microsoft.Multilingual.ResxResources.targets(44,5): error : Update XLIFF build failed.
1>C:\Program Files (x86)\MSBuild\Microsoft\Multilingual App Toolkit\v3.0\Microsoft.Multilingual.ResxResources.targets(44,5): error : Multilingual App Toolkit build completed with errors.

This is not a problem when I'm actually making a change that requires the xlf files to be regenerated, but I don't want to be forced to check out my xlf files every single time I make any sort of change to my app.

November 20 2014

This should only happen if the RESX and XLIFF files are out of sync during a server build - such as a TFS based build. You don't need to check out the XLIFF files locally every time you build or modifiy your code, but if you change the project's resx file (for example: AppResources.resx), this will trigger the update of the XLF files as well as the related target language based resx files (e.g.: AppResources.fr.resx) when you build locally. When this happens, the files should be automatically checked out, letting you know to check them in with the other AppResources.resx and code changes.

| November 16 2014

I like this program it makes translation very easy but it is really annoying that you have to manually uninstall the old version before installing a new one!!! Please change this.

November 18 2014

This was required as the original setup was per-user, but should have been per-machine. The MSI process did not allow us to upgrade a per-user installation to per-machine installation so we had to block. :-( Sorry for the extra steps.

| October 01 2014

Unfortunately not working with Visual Studio Premium 2013 on a Windows 7 machine.

November 18 2014

Are you still blocked? v3.1 should have fixed this issue.

by MatiasW8 | August 14 2014

| June 27 2014

Can't uninstall!!!!!!!!!!!!!!!!!!!!!!!

June 27 2014

Please uninstall v3.0 first. We fixed a bug in setup, but the fix does requires you to install v3.0 manually first. Going forward, you will be able to upgrade.

| April 10 2014

| December 06 2013

Makes it so easy to localize your app! Highly recommended!

• Prevent language translation of resource file in Visual Studio 2015
4 Posts | Last post February 24, 2016
• When using the Multilingual App Toolkit extension (version 4) in Visual Studio (2015) is there any way to prevent one of the resource files in the project from being translated?

In the Multilingual App Toolkit I have two languages added using Add translation languages...

All off my resource files are being correctly translated.

I've now added a new resource file resourceImages.resx to my WinForms project to contain images that should not be localized.

The toolkit has automatically created resourceImages.fr.resx and resourceImages.de.resx. Is there any way I can prevent this - I do not want the images to have translated versions and I don't want them to appear in the xlf translation files that our translators will receive.

• isedwards,

There is no option to ignore resource files with MAT.  However, by default the entry in the XLF file is a reference to a image location and not the image itself.  Marking the image resource(s) as Translate = 'No' in the XLF file will prevent the images references from being added to the target language image resource files. This is because resources with a Translate = 'No' are not added to the target resource file.  This should allow you to use a single image for all languages without any project bloat.

Thanks,
Cameron
• Hi Cameron - many thanks for the answer. I've now set Translate = 'No' for each image in each xlf file. However, the images are still included as base64 encodings within the xlf files (not as a link). Could you tell me know to get the default behaviour of linking instead?
• Hi isedwards,

You need to switch from "Embedded in Resx" to "Linked at compile time".  Here is the MSDN page on how to do that.

https://msdn.microsoft.com/en-us/library/e2c9s1d7(v=vs.100).aspx#
Note: It for VS 2010, but the instruction as the same

Please consider that may need to change how you are access / deploy the images as well.

Thanks,
Cameron

• Cannot enable MAT
4 Posts | Last post November 18, 2015
• I've downloaded and installed the MAT but I can't enable it. The Button in Tools->Enable Multilingual Toolkit is grey and I can't click it!
I'm using VS2015 Community Edition
• The grayed out menu indicates the selected item in the Solution explorer is not supported.  This can happen if the solution is selected as well.  Note: MAT v4.0 is required for Windows 10 Store apps (UWA).  MAT 3.1 support is limited to Windows 8.1.  If your app is a Windows 10 Store app, this would also explain the grayed out menu.  Switching to MAT v4.0 will solve this issue.

Cameron
• Hi, I've downloaded version 4.0 beta. Still seeing exact same problem as mentioned.
All menu items are grayed out. I only select "Resources.resw" + right click on the item.
• Found the solution for me: go to tools and select "enable selection"
• .xlf default 'open with' association
3 Posts | Last post November 02, 2015
• When I double click a .xlf file it is opened with a text editor, I believe it's the XML editor. I can open the Multilingual Editor with a right click of the .xlf and then open with...

Can I change the default so it opens with the Multilingual Editor rather than the XML editor? Any reason why I wouldn't want to change this association? Was that / should it be the default behavior? That is I don't remember changing it, and I'm thinking I'd rather have the Multilingual Editor open by default.

• Setup sets the default to use the Editor from inside Visual Studio.  For some reason it can be reset to the XML Editor in Visual Studio.  When this happen, please set the Editor back to the default by selecting "Open With...", then select "Multilingual Editor", and click "Set as Default".

Thank you,
Cameron
• Doh!

Thanks for pointing out the extremely obvious that I missed. :-)

• Adding new pages after language setup
10 Posts | Last post November 02, 2015
• Maybe I'm missing something obvious, I got caught out by the neutrallanguage attribute issue,
[assembly: NeutralResourcesLanguageAttribute("en-GB")]
but now I have my project mostly localised in French, German and Dutch.

If I add a new page, go into design view and
Tools...Generate Local Resource
the aspx.resx file is created, but how do I force the xlif files to be created too?
• Duhhh- obvious really,
Tools...Disable Multilingual App Toolkit.
Tools...Enable Multilingual App Toolkit.
• Hmmm... no, the aspx.resx file is empty, even though I have meta:resourceKey tags for all the elements, and likewise the localised files...
• Using v3.1, you should have a XLF file for every source RESX (aspx.resx) in your project.  When you add a new RESX file, a new language specific XLF and RESX file should be automatically created as well.  However, the *.fr-fr.resx files are only populated when the *.fr-FR.xlf files contain resources that are translated. E.g. Any resource with a status of 'New' is not added to the related *.fr-FR.resx file.  My guess is that this is the issue.
• Thought maybe I had a problem with the installation, I uninstalled the MAT, rebooted, tried to install MAT preview 4, Visual Studio didn't like that, removed MAT 4, rebooted, installed MAT 3.1 again. Now I'm getting slightly more consistent results.

Using the "new web forms site" template for common terminology:
In the "Account" folder:
In design view, Tools...Generate Local Resource
Right button click on MyWebsite project, and "Add Translation Languages".
I chose French, German, Dutch.
in the App_LocalResources folder I now see
and the psudo language file

I can go back into AddPhoneNumber.aspx, add an extra localisable element - say a literal for the head, save, back into design view, Tools...Generate Local Resource and the new literal is added to the AddPhoneNumber.aspx.resx file (sometimes it doesn't first time, try again)
Double click AddPhoneNumber.aspx.de.xlf - the MAT editor loads - no sign of the new resource string.
Set the status of some strings to Final. The status marker goes green.
Save.
Try to run the project.
NOW the resx files are populated with resource strings, of whatever status, Doesnt have to be Final.
Also, the build action added the new literal to the xlf files, and I could translate them.


• (finishing this post)

Double click Register.aspx or create a new page
in design view, Tools...Generate Local Resource
in App_LocalResources, we see
Register.aspx.resx - Double click to view - it contains no resource strings

Tools...Generate Local Resource again and the resource strings are added (visual studio says Register.aspx.resx has been modified outside the editor)

Build - it builds successfully, but no sign of
Register.aspx.de.xlf
Register.aspx.de.resx etc.

So in summary, I think the confusion is that some actions happen in the editing environment, other things happen when you Build, and for new pages, you have to disable, renable the MAT

THEN we see
Register.aspx.de.xlf
Register.aspx.de.resx
Register.aspx.fr.xlf
Register.aspx.fr.resx
etc.


• By the way, for tidiness, I use Mads Christiansen's Nest utility, to put the localised resx, xlf files "under" the main resx. It works nicely.

For my next trick, I want to use a DB Resource provider, like Michel Leroux Bustamante's example circa 2006 (or Smith-Ferrir's better one - from ".Net internationalisation") So I need to find a way to use the xlf editor with that - if possible. I cant see how yet.
• @LegacyOfHerot,  I'll be sure to recap the results here, but can you please email me at multilingual@Microsoft.com.  This will help keep this thread readable. :-)
• (I am AKA legacyOfHerot) Here at work, as a proof of concept, I have a fairly simple web forms application, I have used the MAT to localise the pages, and all works fine in my dev environment, I see the translations in French (fr), German (de), Norwegian (nb-NO) and Italian (it), however when I use the web deploy publish option to push it into an Azure web site, it only publishes the code assembly, and so the language selection does not work. I put a debug string on the master page, and I can see the Thread.CurrentThread.CurrentUICulture – it is correct, according to the user selection

(I removed the Culture=”auto” attributes from the pages).
I tried setting some post build events, but they happen after the build, before the publish.

xcopy "$(ProjectDir)obj\release\fr\*.dll"$(OutDir)fr\*.dll /y
xcopy "$(ProjectDir)obj\release\de\*.dll"$(OutDir)de\*.dll /y
xcopy "$(ProjectDir)obj\release\it\*.dll"$(OutDir)it\*.dll /y

I tried publishing to a local site, and I can see that none of the satellite assemblies are published.

I don't think this is a fault with the MAT, however I think you need to include this option in your test suite.

• I found this behavior not only on adding new pages, but when adding new resources to existing pages via new textblocks etc...

Once I just did Tools->disable, Tools->enable the .resw were generated. That wasn't intuitive to me.

• 'MultilingualApp' could not be found
2 Posts | Last post October 21, 2015
• Hello everyone.
I try to use MAT for a WPF application. I am using VS community 2013 Update 4 with MAT 4.

http://blogs.msdn.com/b/synergist/archive/2015/03/05/using-the-multilingual-app-toolkit-with-wpf-applications.aspx

and  made the steps 1 to 8.

When I build, my problems are:

Error    1    The type or namespace name 'MultilingualApp' could not be found (are you missing a using directive or an assembly reference?)    C:\ELA\DevC#\test\test\obj\Debug\MainWindow.g.cs

And:

Error    2    The name "Resources" does not exist in the namespace "clr-namespace:MultilingualApp.Properties".    C:\ELA\DevC#\test\test\MainWindow.xaml    7    17    test

Please, Is anyone know what's wrong ? I 'm blocked, and I have no idea to continue...
• EddyAtPessac,

I would verify that the WPF app works without MAT 3.1 enabled first.  The error are indicating an project issue.  Once the app is confirmed working without MAT enabled, then proceed to enable MAT and add languages.

Additionally, I would high recommend stating with MAT v4.0 (Beta).  While it is in Beta, it is a much better option.  There are several advantages, but the strongest reason is that v4.0 changed the project integration model away from a tightly coupled dependency on compilers, which can cause issues with signing as well as building with a second dev box without MAT installed.  Stating new projects with v4.0 will also avoid the require project upgrade when moving form v3.1 to v4.0.

https://visualstudiogallery.msdn.microsoft.com/6dab9154-a7e1-46e4-bbfa-18b5e81df520

Thanks,
Cameron


• MAT editor messes line endings
2 Posts | Last post July 31, 2015
• It seems like the MAT editor utility converts line endings in strings all to LF (\n) instead of keeping CR LF (\r \n).
However, it only seems to affect the editor. The translation process itself does not change line endings - but it changes the endings back to the original CR LF.

This is really annoying with source code control as it causes unneccessary change.

Am I doing something wrong?

Btw. we are still using the 3.1 toolkit.

For me this seems like a bug in the editor component.

Any hints?

• Hi Florian,

This is an bug in the editor.  We are looking into what is cause this.

Thanks,
Cameron
• Satellite assemblies for web apps
4 Posts | Last post July 21, 2015
• Hi folks, with Visual Studio 2015 about to launch tomorrow, I thought I'd review some of my outstanding questions and issues.
The MAT seems to have stalled - is it going to be part of VS2015, a separate download or something else?
I have been trying to find a resolution for how to include the satellite assemblies in a web deployment package, I'm not the only one: http://forums.iis.net/t/1168722.aspx?Including+resources+satellite+assembly+in+a+web+deployment+package

Any kind of update would be good.
Thanks
(I'd have posted this on the V4.0 tech preview page, but Q&A is disabled...?)

• Thank you for your post.

MAT is alive a well. Version 4.0 is the focus of all active development as it solves several issue and unnecessary dependencies that are inherent to v3.1’s overall design.  v4.0 is a redesign and we are looking to move from TP to Beta very soon.  We are committed to and do use MAT v4.0 in our daily developer environments.

The link you published refers to Visual Studio 2010.  MAT does not support VS 2010 so it can’t be related to the reported issue.  I will look into the issue on VS 2013 (and now VS 2015) both with and without MAT 4.0 to ensure it is no contributing to the reported issue.  I will report back with my results.  If you have a sample to provide, that will speed up the investigation.

Thank you for letting me know that the Q&A section was disabled on v4.0 gallery.  I have enabled the Q&A discussion tab.

As always, you can post issue on our user voice site as well @ http://aka.ms/matvoice or email multilingual@microsoft.com

Thanks,
Cameron
• I looked in the issue of web package deployment today using v4.0 TP.

I am able to deploy my site to Azure without issue (http://multilingual.azurewebsites.net - supports German and Arabic (I did not fix the RTL issue as I was just testing language support, not layout support)

When I attempted to deploy to the web package, the Satellite assemblies were not included until, per http://www.infragistics.com/community/forums/t/52912.aspx, I enabled signing.  Once signing was enabled, the package contained the desired Satellite assembles.

Note: v3.1 has a known issue with signing files. The workaround is to use v4.0 as it does not have the signing issue.

• Ahah thanks Cameron. I'll try that. Pulling down VS2015 as I type, so I suspect today will be rather busy...
• Error: Argument must be between 0 and 3.
5 Posts | Last post February 11, 2015
• I tried to use the Toolkit on my existing WP8.0 app (updated from 7.1 some time ago). I set up the AppResources.rex like it's being done when creating a new WP8.0 app and it works so far.
Now if I want to add a new Translation through the toolkit I get following error:

Argument must be between 0 and 3.
Parameter name: fieldCount

any idea how to fix that?
• Are you getting a "Generate latest XLIFF build task failed." message before the "Argument must be between 0 and 3." message?  I am able get the same error message by removing the last digit from the AssemblyVersion number

[assembly: AssemblyVersion("1.0.0.0")]
to
[assembly: AssemblyVersion("1.0.0")]

However, I'm not sure this is the same error as it does added the language and appears for work in spite of the message.

1>  Generate latest XLIFF build task failed.
1>  Argument must be between 0 and 3.
Parameter name: fieldCount
1>  AppResources.as-IN.xlf was added to the project.

Note: I'm running MAT 3.1.1250.0.

To avoid a long (and delayed) thread here, please email multilingual@Microsoft.com.  I'll update this Q&A when we resolve the issue for the benefit of other as well.

Cameron
• Actually, you were right. I had removed the last .0 from the AssemblyVersion when I started developing the app (back on WP7.1) and never had any issues, thats why I never thought of it. Thank you so much, everything seems to work great now!

(I did not get the "Generate latest XLIFF build task failed." message though.)
• I ran into the same problem, with your hint I was able to fix it. Would be great if this would be fixed in MAT though, it cost me quite some time to find out why it didn't work. Thanks
• Are you running build 3.1.1250.0?  If so, I'll need to look again as this included the fix for this issue.
• Fails if xlf files are readonly
5 Posts | Last post February 06, 2015
• Moved from review:

A good idea and seems to work well, but you get the following errors during build if any of your xlf files are readonly/source controlled:

1>C:\Program Files (x86)\MSBuild\Microsoft\Multilingual App Toolkit\v3.0\Microsoft.Multilingual.ResxResources.targets(44,5): error : One or more errors occurred.
1>C:\Program Files (x86)\MSBuild\Microsoft\Multilingual App Toolkit\v3.0\Microsoft.Multilingual.ResxResources.targets(44,5): error : Update XLIFF build failed.
1>C:\Program Files (x86)\MSBuild\Microsoft\Multilingual App Toolkit\v3.0\Microsoft.Multilingual.ResxResources.targets(44,5): error : Multilingual App Toolkit build completed with errors.

This is not a problem when I'm actually making a change that requires the xlf files to be regenerated, but I don't want to be forced to check out my xlf files every single time I make any sort of change to my app.


• Facing the same problem! any solution?
• Facing the same problem using TFS! any solution?
• Same happens for me. This is really annoying.
• I'll look into this today. These is a bug that forces the files to be checked out, but this usually happen automatically.  which are you using? VSO, or Github, etc.?  Feel free to email multilingual at Microsoft dot com as well.
• Project says it is, but after installation it doesn't show in Tools and Extensions and also doesn't work on MAT-enabled projects.