⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 resourcedirectory.h

📁 一个用BCB写的壳!
💻 H
字号:
#ifndef resdir_h
#define resdir_h

#include "stdafx.h"
#include "resourceentry.h"

namespace PE {

class CResourceDirectory
{
public:
    CResourceDirectory(LPBYTE pData, LPBYTE pBase, BOOL bRoot = FALSE);
    virtual ~CResourceDirectory(void);

    // Get directory information
    void GetInfo(IMAGE_RESOURCE_DIRECTORY *prd);

    // Directory enumeration functions
    DWORD GetNumDirectories(void) const;
    CResourceDirectory *GetDirectory(DWORD dwIndex) const;

    // Entry enumeration functions
    DWORD GetNumEntries(void) const;
    CResourceEntry *GetEntry(DWORD dwIndex) const;

    // Current directory information functions
    std::string GetName(void) const;

protected:
    void SetName(std::string strName);

private: // Definitions
    typedef std::list< CResourceEntry * > resEntList;
    typedef resEntList::const_iterator resEntCIterator;
    typedef resEntList::iterator resEntIterator;

    typedef std::list< CResourceDirectory * > resDirList;
    typedef resDirList::const_iterator resDirCIterator;
    typedef resDirList::iterator resDirIterator;

private: // Variables
    IMAGE_RESOURCE_DIRECTORY m_rd;
    LPBYTE m_pBase;
    resEntList m_lstEntries;
    resDirList m_lstDirs;

    std::string m_strName;
};

}
#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -