开发者

CF - Language directory missing after installing CAB on device

On some of the controls im using locatisation (language property). Besides default (that is in english) im also using additional language (slovenian).

Other localisation is done with application resource file.

If i debug the app on emulator there is a directory (si-sl), but if i开发者_开发知识库 build a CAB and install the CAB on emulator there is no such directory there.

Does any one know why is that so?


I'd have to see your CAB's INF, but I have a theory. CAB files have a limitation that they can only have one instance of a source file name. If you have more than one instance, CABWIZ will not complain or give an error, it simply will use (IIRC) the last one referenced.

This means is you have source files like this:

./en/resource.dll
./es/resource.dll
./jp/resource.dll

If you build your CAB file, all instances of the resource.dll file in the target will be identical, not the separate file you think you're pushing. To get around this you have to rename them at the source side going into the CAB.

You can use the CAB to rename them coming back out to all have the same name (i.e. resource.dll), so hand-modifying the INF can still get you the desired output structure. You just have to modify the CAB build process to rename your duplicates.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜