Pregunta

Me gustaría cambiar la forma en que algunos tipos se muestran utilizando ya sea 'dt' o '??' de una manera similar a cómo se puede hacer eso con autoexp.dat. ¿Hay una manera de hacer esto?

Por ejemplo, tengo una estructura algo como esto:


struct Foo
{
    union Bar
    {
       int a;
       void *p;
    } b;
};

Y tengo una serie de unos pocos cientos de ellos, todos los cuales Sé que apuntan a una estructura de barra. ¿Hay alguna manera de saber CDB que, en esta expresión de todos modos, que 'p' es un puntero a Bar? Este es el tipo de cosas que podría hacer con autoexp. (El ejemplo concreto es que tengo un stashtable que puede tener llaves de ningún tipo, pero sé que las claves son cadenas. La puesta en práctica de ellos como punteros void almacena).

Gracias de antemano!

¿Fue útil?

Solución

No creo que haya algo tan simple como autoexp.dat.

Usted tiene un par de opciones posibles - puede escribir un archivo de script sencillo con los comandos de depurador para volcar la estructura de datos en la forma que desee y utilizar el comando "$<filename" (o una de sus variantes). En combinación con los alias de usuario se puede conseguir que esto sea bastante fácil y natural para su uso.

La segunda opción es un poco más complicado, pero con ella viene mucho más poder - escribir un archivo DLL de extensión que vuelca su estructura de datos. Para algo así como lo que está hablando acerca de esto es probablemente demasiado. Pero usted tiene un inmenso poder con extensiones del depurador (de hecho, gran parte del poder que viene en el paquete de herramientas de depuración se implementa de esta manera). El SDK está empaquetado con el depurador, por lo que es fácil de determinar si esto es lo que pueda necesitar.

Otros consejos

Se puede decir du o da tenerlo de volcado de memoria como cadenas Unicode o ASCII.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top