cresource.h
上传用户:romrleung
上传日期:2022-05-23
资源大小:18897k
文件大小:4k
源码类别:

MySQL数据库

开发平台:

Visual C++

  1. #ifndef _CRESOURCE_H
  2. #define _CRESOURCE_H
  3. /////////////////////////////////////////////////////////////////////////////
  4. #define MYSQL_PORT_AS_STRING "3306" /* Can't use # in preprocessor because of bugs in VC++ 5.0 */
  5. class CResource
  6. {
  7. public:
  8.    enum eRESOURCETYPE
  9.    {
  10.       eNone
  11.    ,  eServer
  12.    ,  eDatabase
  13.    ,  eTable
  14.    ,  eField
  15.    ,  eProcesslist
  16.    ,  eProcesslistItem
  17.    };
  18.    virtual LPCTSTR GetDisplayName() { return ""; }
  19.    virtual LPCTSTR GetHostName() { return LOCAL_HOST; }
  20.    virtual LPCTSTR GetUserName() { return "root"; }
  21.    virtual LPCTSTR GetPassword() { return ""; }
  22.    virtual LPCTSTR GetPortName() { return MYSQL_PORT_AS_STRING; }
  23.    virtual int     GetPortNumber() { return MYSQL_PORT; }
  24.    virtual eRESOURCETYPE GetType() { return eNone; }
  25. };
  26. /////////////////////////////////////////////////////////////////////////////
  27. class CResourceServer : public CResource
  28. {
  29. public:
  30.    CResourceServer(LPCTSTR pszName = "",LPCTSTR pszHost = LOCAL_HOST ,LPCTSTR pszUser = "root", LPCTSTR pszPassword = "", LPCTSTR pszPort = MYSQL_PORT_AS_STRING)
  31.        : m_strName(pszName)
  32.        , m_strHost(pszHost)
  33.        , m_strUser(pszUser)
  34.        , m_strPassword(pszPassword)
  35.        , m_strPort(pszPort)
  36.    {
  37.    }
  38.    virtual LPCTSTR GetDisplayName() { return m_strName; }
  39.    virtual LPCTSTR GetHostName() { return m_strHost; }
  40.    virtual LPCTSTR GetUserName() { return m_strUser; }
  41.    virtual LPCTSTR GetPassword() { return m_strPassword; }
  42.    virtual eRESOURCETYPE GetType() { return eServer; }
  43.    virtual LPCTSTR GetPortName() { return m_strPort; }
  44.    virtual int     GetPortNumber() { return atoi(m_strPort); }
  45.    CString     m_strName;
  46.    CString     m_strHost;
  47.    CString     m_strUser;
  48.    CString     m_strPassword;
  49.    CString     m_strPort;
  50.    CStringArray   m_rgFields;
  51. };
  52. /////////////////////////////////////////////////////////////////////////////
  53. class CResourceDatabase : public CResource
  54. {
  55. public:
  56.    CResourceDatabase(LPCTSTR pszName = "")
  57.        : m_strName(pszName)
  58.    {
  59.    }
  60.    virtual LPCTSTR GetDisplayName() { return m_strName; }
  61.    virtual eRESOURCETYPE GetType() { return eDatabase; }
  62.    CString     m_strName;
  63.    CStringArray   m_rgFields;
  64. };
  65. /////////////////////////////////////////////////////////////////////////////
  66. class CResourceTable : public CResource
  67. {
  68. public:
  69.    CResourceTable(LPCTSTR pszName = "")
  70.        : m_strName(pszName)
  71.    {
  72.    }
  73.    virtual LPCTSTR GetDisplayName() { return m_strName; }
  74.    virtual eRESOURCETYPE GetType() { return eTable; }
  75.    CString     m_strName;
  76.    CStringArray   m_rgFields;
  77. };
  78. /////////////////////////////////////////////////////////////////////////////
  79. class CResourceField : public CResource
  80. {
  81. public:
  82.    CResourceField(LPCTSTR pszName = "")
  83.        : m_strName(pszName)
  84.    {
  85.    }
  86.    virtual LPCTSTR GetDisplayName() { return m_strName; }
  87.    virtual eRESOURCETYPE GetType() { return eField; }
  88.    CString     m_strName;
  89.    CStringArray   m_rgFields;
  90. };
  91. /////////////////////////////////////////////////////////////////////////////
  92. class CResourceProcesslist : public CResource
  93. {
  94. public:
  95.    CResourceProcesslist(LPCTSTR pszName = "Processlist")
  96.        : m_strName(pszName)
  97.    {
  98.    }
  99.    virtual LPCTSTR GetDisplayName() { return m_strName; }
  100.    virtual eRESOURCETYPE GetType() { return eProcesslist; }
  101.    CString        m_strName;
  102.    CStringArray   m_rgFields;
  103. };
  104. /////////////////////////////////////////////////////////////////////////////
  105. class CResourceProcesslistItem : public CResourceProcesslist
  106. {
  107. public:
  108.    CResourceProcesslistItem(LPCTSTR pszName = "ProcesslistItem")
  109.        : CResourceProcesslist(pszName)
  110.    {
  111.    }
  112.    virtual eRESOURCETYPE GetType() { return eProcesslistItem; }
  113. };
  114. #endif