In the recent VS-2010 distribution comes
Quote
FileVersion: 10.00.30319.01 built by: RTMRel
InternalName: MSPDB100.DLL
The Linker
Quote
FileVersion: 10.00.30319.01 built by: RTMRel
InternalName: LINK.EXE
reports allerdings for debug build
Quote
LINK : fatal error LNK1101: incorrect MSPDB100.DLL version; recheck installation of this product
however it works with
Quote
FileVersion: 10.00.30128.01 built by: RC1Rel
InternalName: MSPDB100.DLL
Quote from: Ficko on July 07, 2010, 07:49:48 AM
reports allerdings for debug build
Quote
LINK : fatal error LNK1101: incorrect MSPDB100.DLL version; recheck installation of this product
That is really merkwürdig indeed.
Check where you have copies of that dll and remember the search order for dll's.
Ops I screwed up had an RC from "mspdbcore.dll" the linker just reported the false dll. :red
What I can't figure out allerding is where "msvcr100_clr0400.dll" comes from ? ::)
It is in the system directory "cvtres.exe" has a dependency on it but can't find it on the VS 2010 ISO.
MSPDB100.DLL is located in C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE. Link 10.0 has a dependency on it.
Microsoft is pretty good at that, moving default directories but not cleaning up code that is dependent on the directory location. For Visual Studio 2008 I reported an error for vsvars32.bat (part of the release) as Microsoft Feedback ID 467385. It is interesting, they closed this as "Not reproducible" and it really is a bug.
Dave.
Quote from: Greg Lyon on July 12, 2010, 04:22:09 AM
MSPDB100.DLL is located in C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE. Link 10.0 has a dependency on it.
I know that Greg. :P
The question was the "msvcr100_clr0400.dll" - not a misspell that's the name of it :bg - if you link resourse files "link.exe" calls "cvtres.exe" and it will not run if not present on the computer.
Ficko,
Your question wasn't very clear. Everything I can find about it says it's part of Visual Studio 2010. Maybe it is generated during install.
Hello!
I have the exact situation described by Ficko in the first post of this topic. (except for the fact that I am not using VS-2010 distribution).
(LINK : fatal error LNK1101: incorrect MSPDB100.DLL version; recheck installation of this product)
I do not quite understand how this problem was resolved, so I apologize for reopening the old thread.
In my case, I have only one copy of mspdb100.dll on the machine (in C:\masm32\bin), so it looks like it is not the case of multiple dlls...
OS: winxp sp3.
Any help would be greatly appreciated!
Well the inference is that MSVCR100.DLL was missing, but given LINK has a huge dependency tree, and delayed imports. A problem generally resolved by installing the product correctly. Or PATHing properly so the DLLs can be found.
I'll have to revisit this, because I don't think this takes into account the delayed imports.
BindTree (Wed Oct 30 10:58:21 2002)
LINK.EXE
ADVAPI32.DLL
NTDLL.DLL
KERNEL32.DLL
NTDLL.DLL
RPCRT4.DLL
NTDLL.DLL
KERNEL32.DLL
ADVAPI32.DLL
KERNEL32.DLL
MSVCR100.DLL
KERNEL32.DLL
MSPDB100.DLL
ADVAPI32.DLL
KERNEL32.DLL
MSVCR100.DLL
RPCRT4.DLL
VERSION.DLL
KERNEL32.DLL
MSVCRT.DLL
KERNEL32.DLL
NTDLL.DLL
NTDLL.DLL
PSAPI.DLL
NTDLL.DLL
KERNEL32.DLL
USER32.DLL
NTDLL.DLL
KERNEL32.DLL
GDI32.DLL
NTDLL.DLL
KERNEL32.DLL
USER32.DLL
ADVAPI32.DLL
ADVAPI32.DLL
Summary
03/19/2010 14:02:22 852296 LINK.EXE
10.00.30319.01 built by: RTMRel
10.00.30319.01
04/11/2009 01:28:19 297472 C:\WINDOWS\SYSTEM32\GDI32.DLL
6.0.6002.18005 (lh_sp2rtm.090410-1830)
6.0.6002.18005
01/07/2011 15:39:22 768848 C:\WINDOWS\SYSTEM32\MSVCR100.DLL
10.00.30319.415
04/11/2009 01:28:25 20480 C:\WINDOWS\SYSTEM32\VERSION.DLL
6.0.6002.18005 (lh_sp2rtm.090410-1830)
6.0.6002.18005
10/15/2010 08:48:59 1205080 C:\WINDOWS\SYSTEM32\NTDLL.DLL
6.0.6002.18327 (vistasp2_gdr.101014-0432)
6.0.6002.18327
04/11/2009 01:28:25 627712 C:\WINDOWS\SYSTEM32\USER32.DLL
6.0.6002.18005 (lh_sp2rtm.090410-1830)
6.0.6002.18005
03/18/2010 23:21:56 241488 C:\PROGRAM FILES\MICROSOFT VISUAL STUDIO 10.0\COMMON7\IDE\MSPDB100.DLL
10.00.30319.01 built by: RTMRel
10.00.30319.01
04/11/2009 01:28:17 800768 C:\WINDOWS\SYSTEM32\ADVAPI32.DLL
6.0.6002.18005 (lh_sp2rtm.090410-1830)
6.0.6002.18005
11/02/2006 04:46:12 12288 C:\WINDOWS\SYSTEM32\PSAPI.DLL
6.0.6000.16386 (vista_rtm.061101-2205)
6.0.6000.16386
04/11/2009 01:28:22 679936 C:\WINDOWS\SYSTEM32\MSVCRT.DLL
7.0.6002.18005 (lh_sp2rtm.090410-1830)
7.0.6002.18005
04/12/2011 11:07:38 892416 C:\WINDOWS\SYSTEM32\KERNEL32.DLL
6.0.6002.18449 (vistasp2_gdr.110412-0338)
6.0.6002.18449
04/23/2009 07:15:07 784896 C:\WINDOWS\SYSTEM32\RPCRT4.DLL
6.0.6002.18024 (vistasp2_gdr.090423-0018)
6.0.6002.18024
12 Unique reference(s)
Dear Clive!
Thanks for your help! Looks like reinstall fixed the problem.
Now, I'd like to ask a question only indirectly related to the topic.
Is there a way to step through my source assembly code in OllyDbg? I do not mean througth the dissassembled .exe file, but through my source?
Something like in good old TASM: td.exe ?
You should be able to step into your code with Olly.
If you have MSVC installed you can place "int 3" calls, the program will "crash" and you can choose the "Debug" option. You should also be able debug directly out of MSVC.
Generally you'll want to compile/assemble with the -Zi or -Zd options so it generates debug symbols or PDB files.
If I look at the LINK.EXE DLL load list, it runs to 115 Unique files on Vista 32-bit if I follow all of the Delayed Import dependencies. Attached is a complete list of what it touches.
Quote from: clive on October 25, 2011, 09:01:25 PM
You should be able to step into your code with Olly.
So, if I have an .asm source file available and my .exe contains full debug info, then do I need to do anything special in Olly (change configuration, select any specific options, etc) in order to step through my source? Or Olly seeing all debug info and the source file automatically shows me my source code similarly to MSVC debugger?
Quote from: plutocat on October 25, 2011, 10:17:26 PM
do I need to do anything special in Olly
Options/Code/Show symbolic addresses