A
Alain Dekker
I've inherited a C# project written in VS 2005 from a colleague who has
left. There was very little hand-over time. Most things work fine, but one
thing that I'm totally in the dark about is how the Internationalization
DLLs were produced.
On compile, I get an EXE, a few other DLLs and then a bunch of folders get
created with two letters like "de" (German) and "nl" (Dutch) and so on.
Currently 13 folders get created. In each folder, a DLL sits with the name
"APPNAME.resources.dll". At runtime, the user-selected language points the
application to the correct resource DLL and loads the appropriate string
resource. This all works great. Quite impressive.
During compilation, the Output of IDE shows this:
// All the normal compilation messages
Compile complete -- 0 errors, 0 warnings
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\AL.exe /culture:af
/outbj\Release\de\Exporter.resources.dll
/templatebj\Release\Exporter.exe
/embedbj\Release\Exporter.uif_strings.de.resources
// ...and all the other languages as well
The problem is...I don't know how these folders or DLLs get generated! There
are a bunch of RESX files in the project (eg. uif_strings.de.resx for
German) with the localised strings in them. Somehow these are compiled into
DLLs and put into these two-letter folders. My task now is to add Japanese.
I've got all the Japanese strings together, and created a
uif_strings.jp.resx file which has been added to the project. But the
resource DLL and folder (jp) are not being created.
I've searched everywhere I can think of in the project (csproj) file, the
properties of the various resx files, etc but cannot see how these resource
DLLs are being instructed to be produced.
Any pointers on where I should be looking?
Thanks,
Alain
left. There was very little hand-over time. Most things work fine, but one
thing that I'm totally in the dark about is how the Internationalization
DLLs were produced.
On compile, I get an EXE, a few other DLLs and then a bunch of folders get
created with two letters like "de" (German) and "nl" (Dutch) and so on.
Currently 13 folders get created. In each folder, a DLL sits with the name
"APPNAME.resources.dll". At runtime, the user-selected language points the
application to the correct resource DLL and loads the appropriate string
resource. This all works great. Quite impressive.
During compilation, the Output of IDE shows this:
// All the normal compilation messages
Compile complete -- 0 errors, 0 warnings
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\AL.exe /culture:af
/outbj\Release\de\Exporter.resources.dll
/templatebj\Release\Exporter.exe
/embedbj\Release\Exporter.uif_strings.de.resources
// ...and all the other languages as well
The problem is...I don't know how these folders or DLLs get generated! There
are a bunch of RESX files in the project (eg. uif_strings.de.resx for
German) with the localised strings in them. Somehow these are compiled into
DLLs and put into these two-letter folders. My task now is to add Japanese.
I've got all the Japanese strings together, and created a
uif_strings.jp.resx file which has been added to the project. But the
resource DLL and folder (jp) are not being created.
I've searched everywhere I can think of in the project (csproj) file, the
properties of the various resx files, etc but cannot see how these resource
DLLs are being instructed to be produced.
Any pointers on where I should be looking?
Thanks,
Alain