winpeDoc.h
上传用户:ch83438830
上传日期:2007-01-01
资源大小:104k
文件大小:2k
源码类别:

文件操作

开发平台:

Visual C++

  1. // winpeDoc.h : interface of the CWinpeDoc class
  2. //
  3. /////////////////////////////////////////////////////////////////////////////
  4. //#include "pefile.h"
  5. #define FILETYPE_EXE 1
  6. #define FILETYPE_DLL  2
  7. #define PRINTMARGIN 2
  8. class CWinpeDoc : public CDocument
  9. {
  10. protected: // create from serialization only
  11. CWinpeDoc();
  12. DECLARE_DYNCREATE(CWinpeDoc)
  13. // Attributes
  14. public:
  15. void SetDocPrtFont(LPLOGFONT lp);
  16. void SetDocScrnFont(LPLOGFONT lp);
  17. // font data used by all views
  18. CFont* m_screenFont;
  19. CFont* m_printerFont;
  20. UINT m_cyScreen;
  21. //UINT m_cyPrinter;
  22. // menu data used by all views
  23. BOOL m_Dump_Checked;
  24. BOOL m_DebugDir_Checked;
  25. BOOL m_Exports_Checked;
  26. BOOL m_Imports_Checked;
  27. BOOL m_Headers_Checked;
  28. BOOL m_Resources_Checked;
  29. BOOL m_Sections_Checked;
  30. // functions
  31. void TurnChecksOff();
  32. INT GetOpenFileType();
  33. BYTE* GetDocumentDataP();
  34. UINT GetDocumentLength();
  35. UINT GetBytes(UINT,UINT,PVOID);
  36. PIMAGE_SECTION_HEADER GetEnclosingSectionHeader(DWORD rva,PIMAGE_NT_HEADERS pNTHeader);
  37. // Operations
  38. public:
  39. // Overrides
  40. // ClassWizard generated virtual function overrides
  41. //{{AFX_VIRTUAL(CWinpeDoc)
  42. public:
  43. virtual BOOL OnNewDocument();
  44. virtual void Serialize(CArchive& ar);
  45. virtual void DeleteContents();
  46. virtual BOOL OnOpenDocument(LPCTSTR lpszPathName);
  47. //}}AFX_VIRTUAL
  48. // Implementation
  49. public:
  50. virtual ~CWinpeDoc();
  51. #ifdef _DEBUG
  52. virtual void AssertValid() const;
  53. virtual void Dump(CDumpContext& dc) const;
  54. #endif
  55. protected:
  56. // Generated message map functions
  57. protected:
  58. //{{AFX_MSG(CWinpeDoc)
  59. afx_msg void OnUpdateViewsDebugdir(CCmdUI* pCmdUI);
  60. afx_msg void OnUpdateViewsDump(CCmdUI* pCmdUI);
  61. afx_msg void OnUpdateViewsExports(CCmdUI* pCmdUI);
  62. afx_msg void OnUpdateViewsHeaders(CCmdUI* pCmdUI);
  63. afx_msg void OnUpdateViewsImports(CCmdUI* pCmdUI);
  64. afx_msg void OnUpdateViewsResources(CCmdUI* pCmdUI);
  65. afx_msg void OnUpdateViewsSectntbl(CCmdUI* pCmdUI);
  66. //}}AFX_MSG
  67. DECLARE_MESSAGE_MAP()
  68. private:
  69. INT m_nFileType;
  70. LPBYTE m_pFileData;
  71. DWORD m_nDocLength;
  72. HANDLE m_hFileMapping;
  73. HANDLE m_hFile;
  74. BOOL m_DebugDir_Enabled;
  75. BOOL m_Exports_Enabled;
  76. BOOL m_Imports_Enabled;
  77. BOOL m_Dump_Enabled;
  78. BOOL m_Headers_Enabled;
  79. BOOL m_Resources_Enabled;
  80. BOOL m_Sections_Enabled;
  81. //
  82. };
  83. /////////////////////////////////////////////////////////////////////////////