Whether I’m loading an existing .rc file or creating a new one, visual studio has this odd tendency to split tring tables apart. I haven’t really figured out if there is a pattern to it, though I’ve noticed it seems to have a tendency to start at ids divisible by powers of two where possible. Since the resource compiler doesn’t actually care how they are broken up, it seems odd that it saves them like this. Anyone know why?
STRINGTABLE
BEGIN
1 "String"
2 "String"
3 "String"
4 "String"
5 "String"
6 "String"
7 "String"
END
STRINGTABLE
BEGIN
8 "String"
END
Refer to the Remarks section of the following article about STRINGTABLE on MSDN:
Remarks
RC allocates 16 strings per section and uses the identifier value to determine which section is to contain the string. Strings whose identifiers differ only in the bottom 4 bits are placed in the same section. For more information, see Q196774.
http://msdn.microsoft.com/en-us/library/aa381050(VS.85).aspx