盒子
盒子
文章目录
  1. Stack
  2. Threads
  3. conditional breakpoint

windbg

dx requestMachine->m_child.m_machine.m_impl.m_machine

dx child[3]->m_child.m_machine.m_impl.m_machine

dv:显示局部变量

Stack

  • kb - stack trace (current thread)
  • kp - this will not show the information of Args to child
  • kP -Args to child are shown in the symbol model)
  • .frame # - change the current frame #

Threads

  • ~ - List all threads
  • ~ kb - List all threads and their stack
  • ~# s - set the current thread to # (the thread number)

conditional breakpoint

bu MidLevelAggregator!MLAQueryAggregateProcessor::FinaliseMetaData “.if(((@@c++(totalData->m_nNodesQueried))>0n0)){ .echo \”hit\”} .else{gc}”

bu MidLevelAggregator!MLAQueryAggregateProcessor::FinaliseMetaData “.if(((@@c++(sizeof(totalData->m_indexVersions)))>0x28)){ .echo \”hit\”} .else{gc}”

bu Saas2!AggregatorPacketServer::ProcessReceive “.if(((@@c++(request->m_ClientAddr.sin_addr.S_un.S_addr))==0xaecc7d19 | request->m_ClientAddr.sin_addr.S_un.S_addr))==0xb1cc7d19)){ .echo \”hit\”} .else{gc}”

notice the space before .