ResOrg Overview

ResOrg LogoIntroduction

ResOrg is a product designed to take the drudgery out of the process of managing Visual C++ resource symbols.

A typical Visual C++ project will contain at least resource (.rc) file. Associated with each is a symbol definition file (named resource.h by default) which contains #define directives for each of the resource symbols used in the project.

Resource symbol definitions are created and modified by the Visual C++ resource editor when the resources for a project are edited. Unfortunately, when it does so it often gets it wrong.

Just how often have you seen this message box whilst editing a dialog, even when the symbol names are different?

Duplicate ID

This happens because two symbols with the same value have been used in the same dialog template, and usually arises as a direct result of the way the resource editor allocates symbols.

The problem is that the editor is not particularly intelligent in the way it allocates symbol ID values - and does not provide any facilities to unravel the mess that can all too easily arise as a result. The end result can be a large number of conflicting resource symbol values or even unpredictable behaviour at runtime.


Enter ResOrg

ResOrg came about as a result of the sheer frustration of repeatedly renumbering resource symbols in a large multi-module project (75 modules, and over 3000 symbols) by hand or by using Excel.

ResOrg includes facilities to manage resource symbols at file, module and solution level:


There are actually two versions of ResOrg - a standalone application and a Visual Studio plug-in.

The standalone ResOrg application is capable of working with virtually all Visual C++ projects (including old versions such as Visual C++ 6.0).

The ResOrg Visual Studio plug-in offers the same capabilities directly within the Visual Studio environment.



ResOrg offers many features to help make managing resource symbol files easier, of which the following are a small selection: