Help : Debug Message : "no symbol loaded"

Started by
2 comments, last by S1CA 18 years, 11 months ago
Hallo again... :) i want to know about this things because it keep coming out even my code compiled and run success ! "no symbol loaded" this is the message : example project : tea //////Message start from here///////// 'Tea.exe': Loaded 'D:\Visual Studio Projects\directxbook\Tea\Debug\Tea.exe', Symbols loaded. 'Tea.exe': Loaded 'C:\WINDOWS\system32\ntdll.dll', No symbols loaded. 'Tea.exe': Loaded 'C:\WINDOWS\system32\kernel32.dll', No symbols loaded. 'Tea.exe': Loaded 'C:\WINDOWS\system32\d3d9.dll', No symbols loaded. 'Tea.exe': Loaded 'C:\WINDOWS\system32\d3d8thk.dll', No symbols loaded. 'Tea.exe': Loaded 'C:\WINDOWS\system32\gdi32.dll', No symbols loaded. 'Tea.exe': Loaded 'C:\WINDOWS\system32\user32.dll', No symbols loaded. 'Tea.exe': Loaded 'C:\WINDOWS\system32\advapi32.dll', No symbols loaded. 'Tea.exe': Loaded 'C:\WINDOWS\system32\rpcrt4.dll', No symbols loaded. 'Tea.exe': Loaded 'C:\WINDOWS\system32\msvcrt.dll', No symbols loaded. 'Tea.exe': Loaded 'C:\WINDOWS\system32\version.dll', No symbols loaded. 'Tea.exe': Loaded 'C:\WINDOWS\system32\winmm.dll', No symbols loaded. 'Tea.exe': Loaded 'C:\WINDOWS\system32\imm32.dll', No symbols loaded. 'Tea.exe': Loaded 'C:\WINDOWS\system32\lpk.dll', No symbols loaded. 'Tea.exe': Loaded 'C:\WINDOWS\system32\usp10.dll', No symbols loaded. 'Tea.exe': Loaded 'C:\WINDOWS\system32\serwvdrv.dll', No symbols loaded. 'Tea.exe': Loaded 'C:\WINDOWS\system32\umdmxfrm.dll', No symbols loaded. 'Tea.exe': Loaded 'C:\WINDOWS\system32\uxtheme.dll', No symbols loaded. 'Tea.exe': Loaded 'C:\WINDOWS\system32\MSCTFIME.IME', No symbols loaded. 'Tea.exe': Loaded 'C:\WINDOWS\system32\ole32.dll', No symbols loaded. 'Tea.exe': Loaded 'C:\WINDOWS\system32\MSIMTF.dll', No symbols loaded. 'Tea.exe': Loaded 'C:\WINDOWS\system32\MSCTF.dll', No symbols loaded. 'Tea.exe': Loaded 'C:\WINDOWS\system32\d3d9d.dll', No symbols loaded. Direct3D9: :====> ENTER: DLLMAIN(00c616f0): Process Attach: 0000017c, tid=0000070c Direct3D9: :====> EXIT: DLLMAIN(00c616f0): Process Attach: 0000017c Direct3D9: (INFO) :Direct3D9 Debug Runtime selected. D3D9 Helper: Enhanced D3DDebugging disabled; Application was not compiled with D3D_DEBUG_INFO Direct3D9: (INFO) :======================= Hal HWVP device selected Direct3D9: (INFO) :HalDevice Driver style 9 Direct3D9: :DoneExclusiveMode Direct3D9: (INFO) :Failed to create driver indexbuffer Direct3D9: :====> ENTER: DLLMAIN(00c616f0): Process Detach 0000017c, tid=0000070c Direct3D9: (INFO) :MemFini! Direct3D9: :====> EXIT: DLLMAIN(00c616f0): Process Detach 0000017c The program '[380] Tea.exe: Native' has exited with code 0 (0x0). /////Message end here////////////////////// does anyone knows why this always show up ? BUT actually my program compiled SUCCESFULLY . and why there are info say "Application was not compiled with D3D_DEBUG_INFO" or "Failed to create driver indexbuffer" ? is this has any effect on my program ?
Advertisement
This isn't actually (much) of a problem. All it says is that you don't have the source for a bunch of system libraries.
I too would like to know if there's a way to get rid of them except for fiding the appropriate symbol files, there's few things I dislike more than a cluttered development environment. I remember them being distributed with my IDE (VC6) but they weren't compatible with Win2k3..
Maybe I could create dummy files without any actual contents?

Quote:Original post by be17_17y
and why there are info say "Application was not compiled with D3D_DEBUG_INFO" or "Failed to create driver indexbuffer" ? is this has any effect on my program ?
This is relevant however. You're using the debugging version of DirectX which emits a lot of helpful messages, especially when something goes wrong.
D3D_DEBUG_INFO is an additional flag which can be used to trigger even more output.
Thank you very much......
If you want MSVC.NET to automatically download symbol files for Windows components (including DirectX) next time you're debugging, here's what to do:

1. go to the Advanced tab of properties in My Computer

2. click the Environment Variables button

3. click New under the "System variables" list

4. for variable name, enter: _NT_SYMBOL_PATH

5. for variable value, enter: srv*c:\symbols*http://msdl.microsoft.com/download/symbols

6. close MSVC.NET and restart it


Next time you're debugging, instead of having things like "kernel32.dll!0176a3d()" in the call stack, you get more meaningful things like "kernel32.dll!_RaiseException@16() + 0x50". There will be a short delay the first time you debug while MSVC downloads the latest symbols from the server.

The "c:\symbols" part of the environment variable is a local cache MSVC downloads the symbols to so they don't need to be downloaded from the symbol server every time you debug.


Caveat: There will be some DLLs loaded from vendors other than Microsoft, so unfortunately the Microsoft symbol server won't have them which will mean MSVC will always try to connect to the server.

The easiest way to ease that pain (apart from obtaining symbols for your non-MS DLLs) is once MSVC has downloaded the symbols to a local path, delete the "*http://msdl.microsoft.com/download/symbols" part of the environment variable value so that MSVC only ever searches locally.


Simon O'Connor | Technical Director (Newcastle) Lockwood Publishing | LinkedIn | Personal site

This topic is closed to new replies.

Advertisement