In the VS6 C++ environment, you can right-click on the resource file in the treeview and bring up the "resource includes" dialog. Here you can specify a header file for inclusion in the resources. But have you noticed that it is essentially ignored?

Let's say you have a set of command IDs, and you always want them to stay synchronized between an app and the various DLLs that it calls. So you could just keep them all in one file, maybe called commandID.h.

The app and the DLL projects should just be able to include commandID.h. You could then use the IDs when setting up accelerator tables, for example.

But you'll find that none of the IDs from your included header file will show up in the drop-down ID listboxes in the resource editor. And, when you add an ID manually, the resource compiler will add the ID definition to resource.h, which of course creates a duplicate definition. Remember, you've already included your command IDs in resource.h using "resource includes".

Is this a defect? How do people share resource IDs between projects?

Thanks.