Is there a way to determine which version of Visual Studio was used to compile a static library?

For release libraries, it’s unlikely that you could determine the version.

For debug libraries, you can use dumpbin:

dumpbin /rawdata:1 library.lib

The assembly manifest should be at the beginning of the dump and will contain the version of the CRT the library requires along with the full path to the compiler used to build the library.

For executables and DLLs you can get the linker version using dumpbin; it’s under “OPTIONAL HEADER VALUES”

dumpbin /headers program.exe

Maybe someone else knows of a way to get the version for release libraries; I’m certainly interested too if they are.

Leave a Comment