none
請問一個already defined in XXXXX.obj 的問題 RRS feed

  • 問題

  • Dear all

    我在VC2008 建了一個Dialog based 的 專案

    然後在該專案的 XXXDlg.h 打了一行code就出現問題了

    不知該怎麼解決

    程式碼如下...

    有去網路找解決辦法, 可是只有看到vc6的

    http://support.microsoft.com/default.aspx?scid=kb;EN-US;Q148652

    請問vc 2008該怎麼處理??

     

    HMODULE  hModule_dll; <-----就打這行而已QQ"


    // CE6651ADlg dialog
    class CE6651ADlg : public CDialog
    {
    // Construction
    public:
        CE6651ADlg(CWnd* pParent = NULL);    // standard constructor

    // Dialog Data
        enum { IDD = IDD_E6651A_DIALOG };

        protected:
        virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support


    // Implementation
    protected:
        HICON m_hIcon;

        // Generated message map functions
        virtual BOOL OnInitDialog();
        afx_msg void OnSysCommand(UINT nID, LPARAM lParam);
        afx_msg void OnPaint();
        afx_msg HCURSOR OnQueryDragIcon();
        DECLARE_MESSAGE_MAP()
    public:
        afx_msg void OnBnClickedButton1();
    };

     

    Error message

    1>------ Build started: Project: E6651A, Configuration: Debug Win32 ------
    1>Linking...
    1>E6651ADlg.obj : error LNK2005: "struct HINSTANCE__ * hModule_dll" (?hModule_dll@@3PAUHINSTANCE__@@A) already defined in E6651A.obj
    1>D:\Pratice\E6651A\Debug\E6651A.exe : fatal error LNK1169: one or more multiply defined symbols found
    1>Build log was saved at "file://d:\Pratice\E6651A\E6651A\Debug\BuildLog.htm"
    1>E6651A - 2 error(s), 0 warning(s)
    ========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

     

    2010年11月15日 下午 01:07

解答

  • 宣告在類別外面的變數請加上static, 或是將變數宣告在類別中

    • 已標示為解答 陸雲 2010年11月16日 上午 05:15
    2010年11月16日 上午 02:37

所有回覆