📄 debugmsgreceiver.h
字号:
#if !defined(AFX_DEBUGMSGRECEIVER_H__FC935343_BE54_4E88_B615_1BD0735CC540__INCLUDED_)
#define AFX_DEBUGMSGRECEIVER_H__FC935343_BE54_4E88_B615_1BD0735CC540__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
// DebugMsgReceiver.h : header file
//
/////////////////////////////////////////////////////////////////////////////
// CDebugMsgReceiver command target
#include "ptrStack.h"
class CDebugMsgReceiver : public CSocket
{
// Attributes
public:
struct packetheader
{
int length;
int id;
BYTE flags;
BYTE commandset;
BYTE command;
packetheader(int l,int i,BYTE f,BYTE cs,BYTE c)
{
length =l,id=i,flags=f,commandset=cs,command=c;
length = htonl(length);
id = htonl(id);
}
void create(BYTE* pBuff)
{
long nCurIndex = 0;
memcpy(pBuff,&length,sizeof(int));
nCurIndex += sizeof(int);
memcpy(pBuff+nCurIndex,&id,sizeof(int));
nCurIndex += sizeof(int);
memcpy(pBuff+nCurIndex,&flags,sizeof(BYTE));
nCurIndex += sizeof(BYTE);
memcpy(pBuff+nCurIndex,&commandset,sizeof(BYTE));
nCurIndex += sizeof(BYTE);
memcpy(pBuff+nCurIndex,&command,sizeof(BYTE));
nCurIndex += sizeof(BYTE);
}
};
struct EventRequestPacket
{
BYTE eventKind;
BYTE suspendPolicy;
int modifiers;
EventRequestPacket(BYTE e,BYTE s,int m)
{
eventKind = e;suspendPolicy =s;
modifiers = htonl(m);
}
void create(BYTE* pBuf)
{
memcpy(pBuf,&eventKind,sizeof(BYTE));
memcpy(pBuf+sizeof(BYTE),&suspendPolicy,sizeof(BYTE));
memcpy(pBuf+(sizeof(BYTE)*2),&modifiers,sizeof(int));
}
union
{
struct m_1
{
int count;
}_1;
struct
{
int exprID;
}_2;
struct
{
long thread;
}_3;
struct
{
long clazz;
}_4;
struct
{
char* classPattern;
}_5;
struct
{
char* classPattern;
}_6;
struct
{
int loc;
}_7;
struct
{
long exceptionOrNull;
bool caught;
bool uncaught;
}_8;
struct
{
long declaring;
long fieldID;
}_9;
struct
{
long thread;
int size;
int depth;
}_10;
struct
{
long instance;
}_11;
}modKind;
};
// Operations
public:
CDebugMsgReceiver();
virtual ~CDebugMsgReceiver();
CString m_strCurDataQueue;
// Overrides
public:
void ProcessPacket();
void RunToCursor();
void SetBreakPoint();
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CDebugMsgReceiver)
public:
virtual void OnReceive(int nErrorCode);
virtual void OnAccept(int nErrorCode);
//}}AFX_VIRTUAL
// Generated message map functions
//{{AFX_MSG(CDebugMsgReceiver)
// NOTE - the ClassWizard will add and remove member functions here.
//}}AFX_MSG
// Implementation
protected:
int m_nAmountRead;
BYTE *m_pPacket;
BOOL m_bLengthRead;
int m_nMsgLength;
BOOL m_bHandShaken;
char m_cHandShake[14];
genStack<int> m_stIDs;
int m_iIDSizes[5];
};
/////////////////////////////////////////////////////////////////////////////
//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
#endif // !defined(AFX_DEBUGMSGRECEIVER_H__FC935343_BE54_4E88_B615_1BD0735CC540__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -