M
Mikael Sorensen
Using Visual Studio 2005 SP1.
I'm getting an unexpected result when adding localized satellite assemblies
to a .NET CF 2.0 CAB project.
How to reproduce:
Create a new smart device Windows Mobile 5.0 project ("DeviceApplication1").
Add two resource files to the project ("DeviceApplication1.en-US.resx" and
"DeviceApplication1.da-DK.resx").
Add a localized string-value to the two resource files.
Build the project.
Add a smart device CAB project to the solution ("SmartDeviceCab1").
Add "Primary Output" and "Localized resources" from "DeviceApplication1" as
project output for "SmartDeviceCab1".
Build the CAB project.
Instead of installing the cab on a device, extract the cab file. The cab
file should among others contain two files of equal size (probably
"DEVICE~1.002" and "DEVICE~1.003"). This is the satellite assemblies.
Do a binary comparison of the two files. The content of the two resource
files is expected to be different, but it is not. Both files contain the
resource strings from one of the resource files.
This means that the application is not localized when it is deployed to the
device using the cab file.
If you compare the assemblies build from the *.resx files,
"...\DeviceApplication1\obj\Debug\da-DK\DeviceApplication1.resources.dll"
and
"...\DeviceApplication1\obj\Debug\en-US\DeviceApplication1.resources.dll",
they have a different content (as you would have expected), so the error
seems to be related to the cab build process.
Am I missing something here, or is there a bug in the cabwiz-tool?
Best regards,
Mikael Sorensen
I'm getting an unexpected result when adding localized satellite assemblies
to a .NET CF 2.0 CAB project.
How to reproduce:
Create a new smart device Windows Mobile 5.0 project ("DeviceApplication1").
Add two resource files to the project ("DeviceApplication1.en-US.resx" and
"DeviceApplication1.da-DK.resx").
Add a localized string-value to the two resource files.
Build the project.
Add a smart device CAB project to the solution ("SmartDeviceCab1").
Add "Primary Output" and "Localized resources" from "DeviceApplication1" as
project output for "SmartDeviceCab1".
Build the CAB project.
Instead of installing the cab on a device, extract the cab file. The cab
file should among others contain two files of equal size (probably
"DEVICE~1.002" and "DEVICE~1.003"). This is the satellite assemblies.
Do a binary comparison of the two files. The content of the two resource
files is expected to be different, but it is not. Both files contain the
resource strings from one of the resource files.
This means that the application is not localized when it is deployed to the
device using the cab file.
If you compare the assemblies build from the *.resx files,
"...\DeviceApplication1\obj\Debug\da-DK\DeviceApplication1.resources.dll"
and
"...\DeviceApplication1\obj\Debug\en-US\DeviceApplication1.resources.dll",
they have a different content (as you would have expected), so the error
seems to be related to the cab build process.
Am I missing something here, or is there a bug in the cabwiz-tool?
Best regards,
Mikael Sorensen