|
Hello
I'm trying to use resource files on MonoDevelop and I can figure how I do it. I try to follow this tutorial: http://msdn2.microsoft.com/en-us/library/system.resources.resourcemanager.aspx to create the resource files for default culture and for another culture. I can use the strings from default resource file, but I can't use the second resource file. I'm trying to create a file for pt-PT culture. I add the resource files created with the tutorial above and when I do this: ResourceManager rm = new ResourceManager("newTestBed", Assembly.GetExecutingAssembly()); System.Console.WriteLine(string.Format("--> {0}", rm.GetString("Field1"))); I get the default value of the Field1 When I do this: CultureInfo ci = new CultureInfo("pt-PT"); if (rm.GetResourceSet(ci, true, false) == null) System.Console.WriteLine("pt-PT not found"); I always get that "pt-PT not found". Why? I add the newTestBed.resources, newTestBed.pt-PT.resources to the Resources folder and this still don't work. When I compile my project I get this: Generating satellite assembly for 'pt-PT' culture with al2 If the pt-PT culture is compile to the assembly, why I can't use the resource. Regards Paulo Aboim Pinto Odivelas - Portugal -- Have income spending 5 minutes a day Click here: http://bux.to/?r=esqueleto _______________________________________________ Monodevelop-list mailing list [hidden email] http://lists.ximian.com/mailman/listinfo/monodevelop-list |
|
2008/2/10, Paulo Aboim Pinto <[hidden email]>:
> Hello > > I'm trying to use resource files on MonoDevelop and I can figure how I do > it. > > I try to follow this tutorial: > http://msdn2.microsoft.com/en-us/library/system.resources.resourcemanager.aspx > to create the resource files for default culture and for another culture. > > I can use the strings from default resource file, but I can't use the second > resource file. I'm trying to create a file for pt-PT culture. > > I add the resource files created with the tutorial above and when I do this: > > ResourceManager rm = new ResourceManager("newTestBed", > Assembly.GetExecutingAssembly()); > System.Console.WriteLine(string.Format("--> {0}", rm.GetString("Field1"))); > > I get the default value of the Field1 > > When I do this: > CultureInfo ci = new CultureInfo("pt-PT"); > if (rm.GetResourceSet(ci, true, false) == null) > System.Console.WriteLine("pt-PT not found"); > > I always get that "pt-PT not found". Why? I add the newTestBed.resources, > newTestBed.pt-PT.resources to the Resources folder and this still don't > work. > When I compile my project I get this: > Generating satellite assembly for 'pt-PT' culture with al2 > > If the pt-PT culture is compile to the assembly, why I can't use the > resource. > > > Regards > Paulo Aboim Pinto > Odivelas - Portugal > > -- > Have income spending 5 minutes a day > Click here: http://bux.to/?r=esqueleto > _______________________________________________ > Monodevelop-list mailing list > [hidden email] > http://lists.ximian.com/mailman/listinfo/monodevelop-list > > Monodevelop-list mailing list [hidden email] http://lists.ximian.com/mailman/listinfo/monodevelop-list |
|
2008/2/10, Petit Eric <[hidden email]>:
> 2008/2/10, Paulo Aboim Pinto <[hidden email]>: > > Hello > > > > I'm trying to use resource files on MonoDevelop and I can figure how I do > > it. > > > > I try to follow this tutorial: > > http://msdn2.microsoft.com/en-us/library/system.resources.resourcemanager.aspx > > to create the resource files for default culture and for another culture. > > > > I can use the strings from default resource file, but I can't use the second > > resource file. I'm trying to create a file for pt-PT culture. > > > > I add the resource files created with the tutorial above and when I do this: > > > > ResourceManager rm = new ResourceManager("newTestBed", > > Assembly.GetExecutingAssembly()); > > System.Console.WriteLine(string.Format("--> {0}", rm.GetString("Field1"))); > > > > I get the default value of the Field1 > > > > When I do this: > > CultureInfo ci = new CultureInfo("pt-PT"); > > if (rm.GetResourceSet(ci, true, false) == null) > > System.Console.WriteLine("pt-PT not found"); > > > > I always get that "pt-PT not found". Why? I add the newTestBed.resources, > > newTestBed.pt-PT.resources to the Resources folder and this still don't > > work. > > When I compile my project I get this: > > Generating satellite assembly for 'pt-PT' culture with al2 > > > > If the pt-PT culture is compile to the assembly, why I can't use the > > resource. > Because, i think the culture of your system is not pt-PT. > > > > > > Regards > > Paulo Aboim Pinto > > Odivelas - Portugal > > > > -- > > Have income spending 5 minutes a day > > Click here: http://bux.to/?r=esqueleto > > _______________________________________________ > > Monodevelop-list mailing list > > [hidden email] > > http://lists.ximian.com/mailman/listinfo/monodevelop-list > > > > > Monodevelop-list mailing list [hidden email] http://lists.ximian.com/mailman/listinfo/monodevelop-list |
|
this message was not to the list
---------- Forwarded message ---------- From: Paulo Aboim Pinto <[hidden email]> Date: Feb 10, 2008 4:31 PM Subject: Re: [MonoDevelop] Using resource Files on MonoDevelop To: Petit Eric This code works well. Every time I change the Thread.CurrentThread.CurrentCulture property, I get the correct name. I still can't access the resource for the current Culture. I've done this: CultureInfo ci = new CultureInfo("pt-PT"); System.Console.WriteLine(Thread.CurrentThread.CurrentCulture.Name); System.Console.WriteLine(string.Format("--> {0}", rm.GetString("Field1"))); The resource files are: res.resources and res.pt-PT.resources Maybe the names of the resources are wrong.... they are all on the same directory (root directory) and I put the res.pt-PT.resouces in the pt-PT directory and nothing. I need some lights here..... pleaseeeeeeeeeeeeeee Regards Paulo Aboim Pinto odivelas - Portugal On Feb 10, 2008 4:08 PM, Petit Eric <[hidden email]> wrote:
-- Have income spending 5 minutes a day Click here: http://bux.to/?r=esqueleto _______________________________________________ Monodevelop-list mailing list [hidden email] http://lists.ximian.com/mailman/listinfo/monodevelop-list |
|
2008/2/10, Paulo Aboim Pinto <[hidden email]>:
> this message was not to the list > > > ---------- Forwarded message ---------- > From: Paulo Aboim Pinto <[hidden email]> > Date: Feb 10, 2008 4:31 PM > Subject: Re: [MonoDevelop] Using resource Files on MonoDevelop > To: Petit Eric > > > This code works well. Every time I change the > Thread.CurrentThread.CurrentCulture property, I get the > correct name. > > I still can't access the resource for the current Culture. I've done this: > > > CultureInfo ci = new CultureInfo("pt-PT"); > Thread.CurrentThread.CurrentCulture = ci; > System.Console.WriteLine(Thread.CurrentThread.CurrentCulture.Name); > > System.Console.WriteLine(string.Format("--> {0}", rm.GetString("Field1"))); > > the result was the same. I still get the Field1 value for the default > resource. > The resource files are: res.resources and res.pt-PT.resources > Maybe the names of the resources are wrong.... they are all on the same > directory (root directory) and I put the res.pt-PT.resouces in the pt-PT > directory and nothing. > > I need some lights here..... pleaseeeeeeeeeeeeeee thread already runing, i thind i had folow the way as you, wath i say, is the satelite seem correct, but this satelite was used only in function of your system culture, i never change this sucessfull by the code and don't know how to do this. If you prefer, a good check should be under windows with VS express, make a windows app project, with form, put at true the localized propriety of the form, choice portugal laungage and change the text (title) of the form by portugal, choice Fr language and change text to FR ..... With a combo change the language and you will see, the text of the form never change, because the curent thread use at startup of it the culture of the system and then load the corect dll assembly, in your case the pt-PT.dll but after when change the language with the combo to other than pt-PT, how say : unload pt-PT.dll and then load for exemple fr-FR.dll without restarting the thred. If you find the solution i will be very interesded to know it. Thank's > > > > Regards > Paulo Aboim Pinto > odivelas - Portugal > > > > On Feb 10, 2008 4:08 PM, Petit Eric <[hidden email]> wrote: > > > > > > > > > 2008/2/10, Paulo Aboim Pinto <[hidden email]>: > > > I don't undestand what you are saying. > > > > > > I'm using this example on Console Application. Where is the Localizable > > > property? > > > > > > The culture on my PC us-US and I'm changing this here: > > > CultureInfo ci = new CultureInfo("pt-PT"); > > > if (rm.GetResourceSet(ci, true, false) == null) > > > > > > If I have one culture and want that my application will use another > > > culture!? How can I change?!? I try this: > > > CultureInfo ci = new CultureInfo("pt-PT"); > > > Thread.CurrentThread.CurrentCulture = ci > > > > > > And the result is the same. > > > > > > Anyone can help!?!?! > > > > > > > > > Regards > > > Paulo Aboim Pinto > > > Odivelas - Portugal > > > > > > > > > On Feb 10, 2008 11:31 AM, Petit Eric <[hidden email]> wrote: > > > > > > > 2008/2/10, Petit Eric <[hidden email]>: > > > > > > > > > > > > > > > > > 2008/2/10, Paulo Aboim Pinto <[hidden email]>: > > > > > > Hello > > > > > > > > > > > > I'm trying to use resource files on MonoDevelop and I can figure > how I > > > do > > > > > > it. > > > > > > > > > > > > I try to follow this tutorial: > > > > > > > > > > http://msdn2.microsoft.com/en-us/library/system.resources.resourcemanager.aspx > > > > > > to create the resource files for default culture and for another > > > culture. > > > > > > > > > > > > I can use the strings from default resource file, but I can't use > the > > > second > > > > > > resource file. I'm trying to create a file for pt-PT culture. > > > > > > > > > > > > I add the resource files created with the tutorial above and when > I do > > > this: > > > > > > > > > > > > ResourceManager rm = new ResourceManager("newTestBed", > > > > > > Assembly.GetExecutingAssembly()); > > > > > > System.Console.WriteLine(string.Format("--> {0}", > > > rm.GetString("Field1"))); > > > > > > > > > > > > I get the default value of the Field1 > > > > > > > > > > > > When I do this: > > > > > > CultureInfo ci = new CultureInfo("pt-PT"); > > > > > > if (rm.GetResourceSet(ci, true, false) == null) > > > > > > System.Console.WriteLine("pt-PT not found"); > > > > > > > > > > > > I always get that "pt-PT not found". Why? I add the > > > newTestBed.resources, > > > > > > newTestBed.pt-PT.resources to the Resources folder and this still > > > don't > > > > > > work. > > > > > > When I compile my project I get this: > > > > > > Generating satellite assembly for 'pt-PT' culture with al2 > > > > > > > > > > > > If the pt-PT culture is compile to the assembly, why I can't use > the > > > > > > resource. > > > > > Because, i think the culture of your system is not pt-PT. > > > > Also your form(s) should have property "localizable" to "true". > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > Regards > > > > > > Paulo Aboim Pinto > > > > > > Odivelas - Portugal > > > > > > > > > > > > -- > > > > > > Have income spending 5 minutes a day > > > > > > Click here: http://bux.to/?r=esqueleto > > > > > > _______________________________________________ > > > > > > Monodevelop-list mailing list > > > > > > [hidden email] > > > > > > > > > > http://lists.ximian.com/mailman/listinfo/monodevelop-list > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > -- > > > > > > Have income spending 5 minutes a day > > > Click here: http://bux.to/?r=esqueleto > > > > Can you try the following code in a console VB project and say if the > > culture change, > > Also i had posted a bugroport to bugzilla feww month ago, there is > > inside a testcase with a loop on all culture installed, but can 't > > remember the bug report link. > > > > > Console.WriteLine("-----------------------------------------") > > > System.Threading.Thread.CurrentThread.CurrentCulture _ > > = New > System.Globalization.CultureInfo("en-US") > > > Console.WriteLine(System.Threading.Thread.CurrentThread.CurrentCulture) > > Console.WriteLine > > RunTests > > > > Console.WriteLine > > Console.WriteLine > > > Console.WriteLine("-----------------------------------------") > > > System.Threading.Thread.CurrentThread.CurrentCulture _ > > = New > System.Globalization.CultureInfo("fr-FR") > > > Console.WriteLine(System.Threading.Thread.CurrentThread.CurrentCulture) > > Console.WriteLine > > RunTests > > > > Console.WriteLine > > Console.WriteLine > > > Console.WriteLine("-----------------------------------------") > > > System.Threading.Thread.CurrentThread.CurrentCulture _ > > = New > System.Globalization.CultureInfo("en-GB") > > > Console.WriteLine(System.Threading.Thread.CurrentThread.CurrentCulture) > > Console.WriteLine > > > > > > > > -- > > > Have income spending 5 minutes a day > Click here: http://bux.to/?r=esqueleto > > > -- > > Have income spending 5 minutes a day > Click here: http://bux.to/?r=esqueleto > _______________________________________________ > Monodevelop-list mailing list > [hidden email] > http://lists.ximian.com/mailman/listinfo/monodevelop-list > > Monodevelop-list mailing list [hidden email] http://lists.ximian.com/mailman/listinfo/monodevelop-list |
|
AFAIK, the satellite assemblies need to be in a specific place relative to the primary assembly, check if after building, MD does put them on the right place or it mono won't find them and will keep using the primary resources. I am not able to check it myself, just now.
:) On Feb 10, 2008 3:30 PM, Petit Eric <[hidden email]> wrote:
-- Rafael "Monoman" Teixeira --------------------------------------- "I myself am made entirely of flaws, stitched together with good intentions." Augusten Burroughs _______________________________________________ Monodevelop-list mailing list [hidden email] http://lists.ximian.com/mailman/listinfo/monodevelop-list |
|
Hello
Can you tell me what specific file is that!?!? The MD don't copy any resource file to the bin/Debug. I copy manually to the bin/Debug directory. To the main directory and to pt-PT directory and the result is always the same. When I try to do this: ResourceManager rm = new ResourceManager("res.pt-PT", Assembly.GetExecutingAssembly()); I get this error: Unhandled Exception: System.Resources.MissingManifestResourceException: Could not find any resources appropriate for the specified culture or the neutral culture. Make sure "res.pt-PT.resources" was correctly embedded or linked into assembly "ConsoleTestBed" at compile time, or that all the satellite assemblies required are loadable and fully signed. at System.Resources.ResourceManager.AssemblyResourceMissing (System.String fileName) [0x00047] in /home/esqueleto/myTrash/mono-1.2.6/mcs/class/corlib/System.Resources/ResourceManager.cs:512 at System.Resources.ResourceManager.InternalGetResourceSet (System.Globalization.CultureInfo culture, Boolean Createifnotexists, Boolean tryParents) [0x001f5] in /home/esqueleto/myTrash/mono-1.2.6/mcs/class/corlib/System.Resources/ResourceManager.cs:395 at System.Resources.ResourceManager.InternalGetResourceSet (System.Globalization.CultureInfo culture, Boolean Createifnotexists, Boolean tryParents) [0x001d1] in /home/esqueleto/myTrash/mono-1.2.6/mcs/class/corlib/System.Resources/ResourceManager.cs:387 at System.Resources.ResourceManager.InternalGetResourceSet (System.Globalization.CultureInfo culture, Boolean Createifnotexists, Boolean tryParents) [0x001d1] in /home/esqueleto/myTrash/mono-1.2.6/mcs/class/corlib/System.Resources/ResourceManager.cs:387 at System.Resources.ResourceManager.GetString (System.String name, System.Globalization.CultureInfo culture) [0x00026] in /home/esqueleto/myTrash/mono-1.2.6/mcs/class/corlib/System.Resources/ResourceManager.cs:235 at System.Resources.ResourceManager.GetString (System.String name) [0x00000] in /home/esqueleto/myTrash/mono-1.2.6/mcs/class/corlib/System.Resources/ResourceManager.cs:223 at ConsoleTestBed.MainClass.Main (System.String[] args) [0x00078] in /home/esqueleto/myDevelop/MultiPlatformProject/ConsoleTestBed/Main.cs:58 When I compile I get this Generating satellite assembly for 'pt-PT' culture with al2 What I'm doing wrong? Regards Paulo Aboim Pinto On Feb 10, 2008 9:26 PM, Rafael Teixeira <[hidden email]> wrote: AFAIK, the satellite assemblies need to be in a specific place relative to the primary assembly, check if after building, MD does put them on the right place or it mono won't find them and will keep using the primary resources. I am not able to check it myself, just now. -- Have income spending 5 minutes a day Click here: http://bux.to/?r=esqueleto _______________________________________________ Monodevelop-list mailing list [hidden email] http://lists.ximian.com/mailman/listinfo/monodevelop-list |
|
>Generating satellite assembly for 'pt-PT' culture with al2
Let say you choice to compil with "Debug" you should have a output directory like this : Bin/Debug/yourexecutable.exe Bin/Debug/pt-PT/yourexecutable.exe.resources.dll Let s say you also have ressource for language FR, : Bin/Debug/fr-FR/yourexecutable.exe.resources.dll This tree is automaticaly generated by compiler, the ressource file are for internationalization of a prog, that also why the good satelite is loaded during your software startup and according with the language parameter of your system. _______________________________________________ Monodevelop-list mailing list [hidden email] http://lists.ximian.com/mailman/listinfo/monodevelop-list |
|
This is a little bit strange, because the MonoDevelop don't do any of
this on Debug directory.... Anyone has try this with MonoDevelop?
I will fill a Bug on Bugzilla!! Regards Paulo Aboim Pinto Odivelas - Portugal On Feb 11, 2008 8:22 AM, Petit Eric <[hidden email]> wrote:
-- Have income spending 5 minutes a day Click here: http://bux.to/?r=esqueleto _______________________________________________ Monodevelop-list mailing list [hidden email] http://lists.ximian.com/mailman/listinfo/monodevelop-list |
| Powered by Nabble | Edit this page |
