问题
I am trying to port my Windows Phone 8 app to Windows 10. I am able to build my app. When I try to deploy my app in Release x86 on a Mobile emulator, it fails & gives the following msg:
Symbols for ntdll.dll could not be downloaded from Microsoft Symbol Servers. Exception string and call stacks may not work correctly. Make sure you have network connection and try again
Even though I am trying to run my app in Release mode, I am not sure why VS-2015 is tyring to download these debugging symbols.
After a bit of searching on the internet, I have done these, yet I continue to see the issue:
- I have already downloaded, all necessary symbols available from Windows-10 from here: https://msdn.microsoft.com/en-us/windows/hardware/gg463028.aspx to C:\Symbols
- In VS Tools->Options->Debugging->Server, I have created two entries for Symbol file).pdb) locations. One points to Microsoft Symbol Servers and the other to C:\Symbols
- The machine has internet connection, so there is no problem with the connection as the error message points to.
- I have set environment var _NT_SYMBOL_PATH to SRVc:\symbolshttp://msdl.microsoft.com/download/symbols
Has anyone faced this issue?
回答1:
this is a known issue with the x86 NTDLL.dll in Version 10.0.10586.122 (th2_release_inmarket.160222-1549)
. The file is missing on the Microsoft symbol server:
SYMSRV: Successfully closed the connection to the Server.
SYMSRV: d:\sym\dl\wn\wntdll.pdb\39814CFBD1A74710A3F8FCAD3D7EC5661\wntdll.pdb not found
SYMSRV: https://msdl.microsoft.com/download/symbols/wntdll.pdb/39814CFBD1A74710A3F8FCAD3D7EC5661/wntdll.pdb not found
DBGHELP: wntdll.pdb - file not found
*** ERROR: Symbol file could not be found. Defaulted to export symbols for ntdll.dll -
I've already reported it to Microsoft and they investigate the issue.
// Update 2016-03-15
The wntdll.pdb
is now available on the symbol server:
0:000> lmvm ntdll
Browse full module list
start end module name
77a70000 77beb000 ntdll (pdb symbols)
d:\sym\dl\wn\wntdll.pdb\39814CFBD1A74710A3F8FCAD3D7EC5661\wntdll.pdb
Loaded symbol image file: ntdll.dll
Image path: C:\Windows\System32\ntdll.dll
Image name: ntdll.dll
Browse all global symbols functions data
Timestamp: Tue Feb 23 09:23:17 2016 (56CC16F5)
CheckSum: 001873F8
ImageSize: 0017B000
File version: 10.0.10586.122
Product version: 10.0.10586.122
File flags: 0 (Mask 3F)
File OS: 40004 NT Win32
File type: 2.0 Dll
File date: 00000000.00000000
Translations: 0409.04b0
CompanyName: Microsoft Corporation
ProductName: Microsoft® Windows® Operating System
InternalName: ntdll.dll
OriginalFilename: ntdll.dll
ProductVersion: 10.0.10586.122
FileVersion: 10.0.10586.122 (th2_release_inmarket.160222-1549)
FileDescription: NT Layer DLL
LegalCopyright: © Microsoft Corporation. All rights reserved.
回答2:
I'm still facing this issue today (Nov 2016), for ntdll and many other system and crt dll's. What I do in VS is load dll exports instead of relying solely on PDBs:
Tools \ Options \ Debugging \ General \ "Load dll exports (Native only)"
回答3:
It looks like something chokes here and symbols are either corrupted or not able redownload. see the image below, Under Debugging->Symbols path there is option that you can check, it was unchecked for me. After doing this it worked fine.
来源:https://stackoverflow.com/questions/35979342/symbols-for-ntdll-dll-could-not-be-downloaded-from-microsoft-symbol-servers