OK, here's a temporary workaround.Luckily, I don't have to deal with .rc files too much as I'm a little... maybe old-school isn't the world.... perhaps anal is more like it.... I just use c++ and C for everything.... meaning I have a harder time testing and getting my resources worked out, but then my rc files stay simple. Just a few icons perhaps and of course, version info.
Thus, you'll have to open the properties of EACH rc file, go the the Advanced tab, and check "Use Custom Command to build this file:"
Then, in the command box, enter the following:
$rescomp [[ if(GetProjectManager().GetActiveProject().GetActiveBuildTarget().Matches(_T("Debug"))) {print(_T("-D __MY_DEBUG__ -v --use-temp-file"));} ]] -i $file -J rc -o $resource_output -O coff $res_includes
And of course, you will have to substitute the _T("Debug") with whatever your debugging target name is, AND the _T("-D __MY_DEBUG__") with the symbols that you want to define.
If you have more than one target to debug, then do it like this:
$rescomp [[ if(GetProjectManager().GetActiveProject().GetActiveBuildTarget().Matches(_T("Debug")) || GetProjectManager().GetActiveProject().GetActiveBuildTarget().Matches(_T("Debug2"))) {print(_T("-D __MY_DEBUG__ -v --use-temp-file"));} ]] -i $file -J rc -o $resource_output -O coff $res_includes
(I think the Logical OR works... || ?? Anyone? )
Anyway, with this I did NOT get it to work... until I went into the obj directory and manually looked at the resulting .res files. Then I found my versioninfo was right for one .rc file... but I didn't do the above trick on ALL my rc files. THUS, if I were you, I would just do it to ALL of them. Then it should work. (My_APP.rc has a #include VersionInfo.rc and so I just did the above trick for VersionInfo.rc. BUT, since I didn't do it for My_App.rc the executable still had wrong info in it. Thus, you need to just do this custom command for all .rc files and viola. You should have it.)