dom_beau
dom_beau

Reputation: 2507

Resource not found(?) while porting C++ .net code from MSVS2005 to MSVS2010

Actually I don't know if this question has already been answered because I don't know where is the "real" problem. Here is the context: I have C++ .NET code that I'm trying to port from MSVS2005 to MSVS2010, that is from .NET 2.0 to .NET 4.0. When entering in the method InitializeComponent() for one of the forms created at startup, I get a first-chance exception System.Resources.MissingManifestResourceException' occured in mscorlib.dll when calling resources->ApplyResources( this->MyControl, L"MyControl" ).

The additional information is:

Could not find any resources appropriate for the specified culture or the neutral culture. Make sure "MyForm.resources" was correctly embedded or linked into assembly "MyAssembly" at compile time, or that all the satellite assemblies required are loadable and fully signed.

  1. It worked perfectly when compiled with MSVS2005.
  2. MSVS2010 converted all the solution automatically without problem.
  3. The .resx files are there.

Since I have no clue about the source of the problem I cannot say more. I will be more than happy to give you more info if you try to help me.

Thanks in advance for your help.

Dominique

Upvotes: 1

Views: 538

Answers (2)

dom_beau
dom_beau

Reputation: 2507

OK, Daniel's suggestion push me toward the solution.

I looked at the properties for the .resx files in the project. All files contained no "Resource Logical Name" buth the .resx and the .fr.resx files which where the ones that could be used on my computer.

I erased the entries for the virtual file names and everything works fine since then.

Thank you!

Upvotes: 0

Daniel A. White
Daniel A. White

Reputation: 190976

Make sure your resx file and the namespace of the component are the same.

I've seen it before where the resx gets compiled as SomeFoo.MyForm.resources where the form is in SomeFoo.Forms.MyForm

Upvotes: 1

Related Questions