Name:  MSVCR80_error.JPG
Views: 880
Size:  28.4 KB

The above error message appears whenever I try to run the Debug version of a complex app that I'm building (the Release version runs okay). By "complex" I mean that it has around 40 supporting DLLs.

Notice that the error message refers to MSVCR80.dll (as distinct from MSVCR80D.dll). This suggests to me that one of my modules is trying to link to the non-Debug CRT.

Using a hex viewer I've painstakingly looked through the exe and all its DLLs but every one of them seems to specify DebugCRT version 8.50727.42. None of them seems to be referencing a non-Debug CRT (at least, not obviously).

Is there any way I can find out some further information - e.g. which specific module is trying to link to the non-Debug CRT? Or which version number of the CRT it's looking for? Given that the Release version works, it seems very unlikely that the relevant CRT version isn't present on my PC.

I've heard about something called Dependency Walker although I've only used it once (very briefly and a long time ago!) Could that (or any other tool) help me to identify precisely which module is looking for MSVCR80.dll?