2

I have a C++ application, developed with VisualStudio 2015 (update 2).

Profiling with AMD Code XL shows that the program spends almost 20% of its time in the function RtlUpcaseUnicodeToMultiByteN, from the module ntdll.dll. Apparently it converts unicode tsrings to upper case.

As it makes no sense to spend that much time doing that, I need to know who is calling the function. Turns out it isn't easy.

What I'd want to do is set a breakpoint, then see the call stack. However, I cannot set it the usual way without the source code.

I tried Windbg, but the stack trace was essentially useless.

Then I found there is a way to set a "function breakpoint" in VisualStudio; but the program never did break; even though the "modules" window showed ntdll.dll as "symbols loaded" status.

What more can I do?

Francesco Dondi
  • 1,064
  • 9
  • 17

0 Answers0