2010-10-19 34 views
9

¿Hay alguna manera de poner un punto de interrupción en cualquier función en Visual Studio, algo así como bm kernel32!LoadLib* en WinDbg?Poner punto de interrupción en función nombrada

Sé que una forma es interrumpir el inicio de la aplicación, encontrar la dirección de carga de DLL requerida, luego agregar compensación a la función requerida que se puede obtener a través de Dependencias y crear un punto de interrupción en la dirección. Pero eso es realmente lento, y cambiar a WinDbg y viceversa también es bastante molesto.

¿Tal vez hay una manera mejor?

Respuesta

14

Vaya a "Depuración/Nuevo punto de interrupción/Interrupción en la función ..." y pegue el nombre de la función.

Para las API, esto puede ser complicado, ya que el nombre de la función que ve el depurador es diferente de su nombre real.
Ejemplos:

{,,kernel32.dll}[email protected] 
{,,user32.dll}[email protected] 

Ver esta entrada del blog para encontrar el nombre correcto: funciones Setting a Visual Studio breakpoint on a Win32 API function in user32.dll

+1

API eran exactamente lo que necesitaba, gracias! Ojalá hubiera una manera más fácil de encontrar el nombre decorado ... – Coder

Cuestiones relacionadas