LibSymbolInfo.h
Go to the documentation of this file.
1 // LibSymbolInfo.h: interface for the CLibSymbolInfo class.
2 //
4 
5 #if !defined(AFX_LIBSYMBOLINFO_H__1A7003B4_BA53_11D1_AE46_1CFB51000000__INCLUDED_)
6 #define AFX_LIBSYMBOLINFO_H__1A7003B4_BA53_11D1_AE46_1CFB51000000__INCLUDED_
7 
8 #include <string>
9 #include <iostream>
10 
11 #include <stdio.h>
12 #include <assert.h>
13 #include <windows.h>
14 
16 {
17 public:
19  virtual ~CLibSymbolInfo();
20  BOOL DumpSymbols(LPTSTR lpszLibPathName, std::ostream& pFile);
21  std::string GetLastError() const;
22 
23 protected:
26 
27  BOOL Dump(LPTSTR lpszLibPathName, std::ostream& pFile);
28  BOOL IsRegularLibSymbol( PSTR pszSymbolName );
29  BOOL IsFiltedSymbol( std::string& pszSymbolName );
30  DWORD ConvertBigEndian(DWORD bigEndian);
31 };
32 
35 
37 {
38  public:
39  MEMORY_MAPPED_FILE( PSTR pszFileName );
40  ~MEMORY_MAPPED_FILE(void);
41 
42  PVOID GetBase( void ){ return m_pMemoryMappedFileBase; }
43  DWORD GetFileSize( void ){ return m_cbFile; }
44  BOOL IsValid( void ) { return errMMF_NoError == m_errCode; }
45  errMMF GetErrorType(){ return m_errCode; }
46 
47  private:
48 
49  HANDLE m_hFile;
50  HANDLE m_hFileMapping; // Handle of memory mapped file
52  DWORD m_cbFile;
54 };
55 
57 
58 #endif // !defined(AFX_LIBSYMBOLINFO_H__1A7003B4_BA53_11D1_AE46_1CFB51000000__INCLUDED_)
PVOID GetBase(void)
Definition: LibSymbolInfo.h:42
std::string GetLastError() const
std::string m_strResultsString
Definition: LibSymbolInfo.h:24
MEMORY_MAPPED_FILE * PMEMORY_MAPPED_FILE
Definition: LibSymbolInfo.h:56
STL class.
DWORD GetFileSize(void)
Definition: LibSymbolInfo.h:43
BOOL Dump(LPTSTR lpszLibPathName, std::ostream &pFile)
std::string m_strErrorMsg
Definition: LibSymbolInfo.h:25
BOOL IsValid(void)
Definition: LibSymbolInfo.h:44
errMMF
Definition: LibSymbolInfo.h:33
BOOL IsFiltedSymbol(std::string &pszSymbolName)
PVOID m_pMemoryMappedFileBase
Definition: LibSymbolInfo.h:51
DWORD ConvertBigEndian(DWORD bigEndian)
STL class.
BOOL DumpSymbols(LPTSTR lpszLibPathName, std::ostream &pFile)
virtual ~CLibSymbolInfo()
BOOL IsRegularLibSymbol(PSTR pszSymbolName)