0
votes

I'm using Visual Studio 2013 to write a C++ DLL, then EXCEL meant to load the DLL via VBA. After setting in Visual Studio Project Property -> Configuration Properties -> Debugging -> Command = C:\Program Files (x86)\Microsoft Office\Office14\EXCEL.EXE , I started debug, then a dialog comes out:

Debugging information for 'Excel.exe' cannot be found or does not matach. Cannot find or open the PDB file. Do you want to continue debugging?

After I click yes, I notice VS is trying to download a lot of pdb files and fail:

'EXCEL.EXE' (Win32): Loaded 'C:\Program Files (x86)\Microsoft Office\Office14\EXCEL.EXE'. Cannot find or open the PDB file.

'EXCEL.EXE' (Win32): Loaded 'C:\Windows\SysWOW64\ntdll.dll'. Cannot find or open the PDB file.

'EXCEL.EXE' (Win32): Loaded 'C:\Windows\SysWOW64\kernel32.dll'. Cannot find or open the PDB file.

'EXCEL.EXE' (Win32): Loaded 'C:\Windows\SysWOW64\KernelBase.dll'. Cannot find or open the PDB file.

'EXCEL.EXE' (Win32): Loaded 'C:\Windows\SysWOW64\advapi32.dll'. Cannot find or open the PDB file.

'EXCEL.EXE' (Win32): Loaded 'C:\Windows\SysWOW64\msvcrt.dll'. Cannot find or open the PDB file.

'EXCEL.EXE' (Win32): Loaded 'C:\Windows\SysWOW64\sechost.dll'. Cannot find or open the PDB file.

'EXCEL.EXE' (Win32): Loaded 'C:\Windows\SysWOW64\rpcrt4.dll'. Cannot find or open the PDB file.

'EXCEL.EXE' (Win32): Loaded 'C:\Windows\SysWOW64\sspicli.dll'. Cannot find or open the PDB file.

'EXCEL.EXE' (Win32): Loaded 'C:\Windows\SysWOW64\cryptbase.dll'. Cannot find or open the PDB file.

and etc, etc, though finally the debugging is OK.

Is such VS behavior OK? I just find it a bit weird, that to debug my DLL, need to download PDB files of EXCEL.EXE and NTDLL.DLL.

It seems there's a similar post here : How can I debug this error: 'Debugging information for iisexpress.exe cannot be found or does not match'? . But that one is a MVC project (mine is C++) and Visual Studio settings are different.

1
How to specify debug symbol server(s): msdn.microsoft.com/en-us/library/ms241613(v=vs.120).aspx MS has symbols (PDBs) for the majority of it's executables (and DLLs).Richard Critten
@athos, Any updates? Do you resolve this issue after you enable the symbols server as Richard's suggestion? You could check your Debug modules windows where you could load the symbols manually, please also mark sure that it is not related the Target platform(Any CPU/X86/X64).Jack Zhai-MSFT
@JackZhai Yes I resolved the issue. actually, it's because loading Excel etc all these Microsoft Application and Windows OS dlls' symbols taking so long, I cancelled the loading, naturally, this also cancelled loading the pdb file of my XLL. once I load that back, it works.athos
@athos, glad to know that you have resolved this issue, I post the comment as the answer, if possible, please mark it as the answer, so it would be helpful for other community members who meet the same issue. Have a nice day:)Jack Zhai-MSFT

1 Answers

1
votes

Cannot find or open the PDB file.

Generally this error is related to the symbol loaded. We need to enable the symbol Server under TOOLS->Option->Debugging->Symbols, and check the module window and make sure that all symbols are loaded successfully.