Why are string tables split into sections in the .rc file?

In the .rc file, lines are grouped into sections with no more than 16 lines.

So, in a typical .rc file, we usually have something like this:

...
STRINGTABLE  // section 1
BEGIN
    IDS_SOMEID_1    "Some text 1"
    IDS_SOMEID_2    "Some text 1"
    IDS_SOMEID_3    "Some text 3"
END

STRINGTABLE  // section 2
BEGIN
    IDS_SOMEID_4    "Some text 4"
    IDS_SOMEID_5    "Some text 5"
    IDS_SOMEID_6    "Some text 6"
END
...

      

and row IDs in one section differ only in the least 4 bits.

I wonder why these sections must be explicitly listed in the .rc file. The resource compiler could take care of this entirely, so we can have one row for the .rc table like this:

STRINGTABLE
BEGIN
    IDS_SOMEID_1    "Some text 1"
    IDS_SOMEID_2    "Some text 1"
    IDS_SOMEID_3    "Some text 3"
    IDS_SOMEID_4    "Some text 4"
    IDS_SOMEID_5    "Some text 5"
    IDS_SOMEID_6    "Some text 6"
END

      

Does anyone have a reasonable explanation?

I found several (insufficient) explanations here:

+3


source to share





All Articles