문제

'dt'또는 '??'를 사용하여 일부 유형이 표시되는 방식을 변경하고 싶습니다. AutoExp.dat로 수행 할 수있는 방법과 비슷한 방식으로. 이것을 할 방법이 있습니까?

예를 들어, 나는 다음과 같은 구조를 가지고 있습니다.


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

그리고 나는 이것들 중 수백 개의 배열을 가지고 있습니다. 어쨌든이 표현에서 'P'가 막대에 대한 포인터라고 CDB를 알리는 방법이 있습니까? 이것은 AutoExp로 할 수있는 일입니다. (여기서 구체적인 예는 모든 유형의 키를 가질 수있는 은신처를 가지고 있지만 키는 문자열이라는 것을 알고 있습니다. 구현은 그것들을 무효 포인터로 저장합니다).

미리 감사드립니다!

도움이 되었습니까?

해결책

AutoExp.dat만큼 간단한 것이 있다고 생각하지 않습니다.

몇 가지 잠재적 옵션이 있습니다. 디버거 명령으로 간단한 스크립트 파일을 작성하여 원하는 방식으로 데이터 구조를 버리고 사용합니다. "$<filename"명령 (또는 그 변형 중 하나). 사용자 별명과 결합하여 사용하기 쉽고 자연스럽게 사용할 수 있습니다.

두 번째 옵션은 상당히 더 관여하지만 훨씬 더 많은 전력이 제공됩니다. 데이터 구조를 덤프하는 Extension DLL을 작성하십시오. 당신이 말하는 것과 같은 것은 아마도 과잉 일 것입니다. 그러나 디버거 확장 기능을 갖춘 엄청난 전원이 있습니다 (실제로 디버깅 도구 패키지에 나오는 많은 전력이 이런 식으로 구현됩니다). SDK에는 디버거가 포장되어 있으므로 이것이 필요한지 쉽게 결정할 수 있습니다.

다른 팁

당신은 말할 수 있습니다 du 또는 da 그것을 가지고 있습니다 덤프 메모리 유니 코드 또는 ASCII 스트링으로.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top