www.pudn.com > TCPIPAnalyse1.rar > IrisAnalyseDoc.h


// IrisAnalyseDoc.h : interface of the CIrisAnalyseDoc class 
// 
///////////////////////////////////////////////////////////////////////////// 
 
#if !defined(AFX_IRISANALYSEDOC_H__92880E38_B50E_4F06_81BD_3E0262E0BEB1__INCLUDED_) 
#define AFX_IRISANALYSEDOC_H__92880E38_B50E_4F06_81BD_3E0262E0BEB1__INCLUDED_ 
 
#if _MSC_VER > 1000 
#pragma once 
#endif // _MSC_VER > 1000 
 
typedef struct _tagIRISHEAD 
{ 
	char buff[9]; 
}IRISHEAD,*pIRISHEAD; 
 
typedef struct _tagMACPKG 
{ 
	unsigned char SrcAddr[6]; 
	unsigned char DesAddr[6]; 
	char NetType[2]; 
}MACPKG,*pMACPKG; 
 
typedef struct _tagIPPKG 
{ 
	char Ver; 
	int  HeaderLen; 
	char TypeService; 
	UINT TotalLen; 
	UINT Identification; 
	UINT flag; 
	char TimeLife; 
	char Protocol; 
	UINT HeaderCheckSum; 
	unsigned char srcIP[4]; 
	unsigned char desIP[4]; 
}IPPKG,*pIPPKG; 
 
typedef struct _tagTCPPKG 
{ 
	INT SrcPort; 
	INT DesPort; 
	int SeqNum; 
	int AknNum; 
	int HeaderLen; 
	char Flags; 
	UINT window; 
	UINT CheckSum; 
	UINT UrgentPtr; 
}TCPPKG,*pTCPPKG; 
 
typedef struct _tagTCPIPPKG 
{ 
	TCHAR TimeBuff[10]; 
	MACPKG macpkg; 
	IPPKG ippkg; 
	TCPPKG tcppkg; 
	int DataLen; 
	int nLine; 
	int Num; 
	unsigned char databuff[1500]; 
	struct _tagTCPIPPKG *next; 
}TCPIPPKG,*pTCPIPPKG; 
 
class CIrisAnalyseDoc : public CDocument 
{ 
protected: // create from serialization only 
	CIrisAnalyseDoc(); 
	DECLARE_DYNCREATE(CIrisAnalyseDoc) 
 
// Attributes 
public: 
	IRISHEAD m_sHead; 
	UINT m_nFileLength; 
	BYTE *m_pFileData; 
	TCPIPPKG m_LeftData,m_RightData; 
	TCPIPPKG *m_pLeftDataHead,*m_pRightDataHead; 
	//default is left 
	bool m_bLeftData; 
// Operations 
public: 
 
// Overrides 
	// ClassWizard generated virtual function overrides 
	//{{AFX_VIRTUAL(CIrisAnalyseDoc) 
	public: 
	virtual BOOL OnNewDocument(); 
	virtual void Serialize(CArchive& ar); 
	//}}AFX_VIRTUAL 
 
// Implementation 
public: 
	void AnalyseData(BYTE *pFileData,UINT nFileLength); 
	virtual ~CIrisAnalyseDoc(); 
	//int GetDataToDisp(PVOID pBuffer); 
    int HexToAscll(unsigned char *des,unsigned char *src,int len); 
	UINT GetDataLen(); 
#ifdef _DEBUG 
	virtual void AssertValid() const; 
	virtual void Dump(CDumpContext& dc) const; 
#endif 
 
protected: 
 
 
 
// Generated message map functions 
protected: 
	//{{AFX_MSG(CIrisAnalyseDoc) 
	afx_msg void OnFileSave(); 
	//}}AFX_MSG 
	DECLARE_MESSAGE_MAP() 
 
private: 
	int     SaveType; 
    void    SaveLeftFile(CArchive& ar); 
	void    SaveRightFile(CArchive& ar); 
}; 
 
///////////////////////////////////////////////////////////////////////////// 
 
//{{AFX_INSERT_LOCATION}} 
// Microsoft Visual C++ will insert additional declarations immediately before the previous line. 
 
#endif // !defined(AFX_IRISANALYSEDOC_H__92880E38_B50E_4F06_81BD_3E0262E0BEB1__INCLUDED_)