closeable tabs für search funktio

bekomme die fehler immer noch nciht los:

Code:
MFC_MUTE_GUI error LNK2001: Nichtaufgelöstes externes Symbol "protected: void __thiscall CMuteSearchDlg::OnTcnSelchangeTab1(struct tagNMHDR *,long *)" (?OnTcnSelchangeTab1@CMuteSearchDlg@@IAEXPAUtagNMHDR@@PAJ@Z)
 MFC_MUTE_GUI error LNK2001: Nichtaufgelöstes externes Symbol "protected: long __thiscall CMuteSearchDlg::OnCloseTab(unsigned int,long)" (?OnCloseTab@CMuteSearchDlg@@IAEJIJ@Z)
 MFC_MUTE_GUI error LNK2001: Nichtaufgelöstes externes Symbol "protected: long __thiscall CMuteSearchDlg::OnDblClickTab(unsigned int,long)" (?OnDblClickTab@CMuteSearchDlg@@IAEJIJ@Z)
 MFC_MUTE_GUI error LNK2001: Nichtaufgelöstes externes Symbol "protected: void __thiscall CMuteSearchDlg::OnBnClickedClearall(void)" (?OnBnClickedClearall@CMuteSearchDlg@@IAEXXZ)
 MFC_MUTE_GUI fatal error LNK1120: 4 unaufgelöste externe Verweise
 
Siet so aus, daß die MFC_MUTE_GUI-Implementierung auf Funktionen der Klasse CMuteSearchDlg zugreifen will und der Linker diese nicht findet. Alle vier Meldungen beziehen sich auf Steuerelement-Funktionen
Symbol "protected: void __thiscall CMuteSearchDlg::OnTcnSelchangeTab1(struct tagNMHDR *,long *)" (?OnTcnSelchangeTab1@CMuteSearchDlg@@IAEXPAUtagNMHDR@@PAJ@Z)
MFC_MUTE_GUI error LNK2001: Nichtaufgelöstes externes Symbol "protected: long __thiscall CMuteSearchDlg::OnCloseTab(unsigned int,long)" (?OnCloseTab@CMuteSearchDlg@@IAEJIJ@Z)
MFC_MUTE_GUI error LNK2001: Nichtaufgelöstes externes Symbol "protected: long __thiscall CMuteSearchDlg::OnDblClickTab(unsigned int,long)" (?OnDblClickTab@CMuteSearchDlg@@IAEJIJ@Z)
MFC_MUTE_GUI error LNK2001: Nichtaufgelöstes externes Symbol "protected: void __thiscall CMuteSearchDlg::OnBnClickedClearall(void)" (?OnBnClickedClearall@CMuteSearchDlg@@IAEXXZ)
MFC_MUTE_GUI fatal error LNK1120: 4 unaufgelöste externe Verweise
Gesucht werden also in CMuteSearchDlg die Funktionen
OnTCnSelchangeTab1
OnCloseTab
OnDblClickTab
OnBnClickedClearall

Hast du die implementiert?

Mfg

langer
 
ja in MuteSearchDlg.h:

afx_msg void OnBnClickedClearall();
afx_msg LRESULT OnCloseTab(WPARAM wParam, LPARAM lParam);
afx_msg LRESULT OnDblClickTab(WPARAM wParam, LPARAM lParam);
afx_msg void OnTcnSelchangeTab1(NMHDR *pNMHDR, LRESULT *pResult);

Code:
#if !defined(AFX_MUTESEARCHDLG_H__3CCC811C_5408_4ADE_A9BC_29E6B9BA087D__INCLUDED_)
 #define AFX_MUTESEARCHDLG_H__3CCC811C_5408_4ADE_A9BC_29E6B9BA087D__INCLUDED_
 
 #if _MSC_VER > 1000
 #pragma once
 #endif // _MSC_VER > 1000
 
 #include "MuteSearchListCtrl.h"
 
 #include "minorGems/system/MutexLock.h"
 #include "minorGems/system/Thread.h"
 #include "minorGems/util/stringUtils.h"
 #include "minorGems/util/SimpleVector.h"
 #include "ClosableTabCtrl.h"
 
 #include "ResizableLib\ResizableDialog.h"
 //#include "ResizableLib\ResizableFormView.h"
 #include "Led.h"
 #include "Label.h"
 #include "StrParse.h"
 #include "NumberEdit.h"
 #include "BtnST.h"
 
 #include "SearchThread.h"
 #include "ExternString.h"
 
 
 enum
 {
 	SEARCH_TIMEOUT_EVENT = WM_USER + 4,
 	SEARCH_RESULTS_EVENT,
 	SEARCH_STOP_EVENT
 };
 
 enum
 {
 	SEARCH_BOOLEAN_AND = 0,
 	SEARCH_BOOLEAN_OR,
 	SEARCH_BOOLEAN_ENTIRE_PHRASE
 };
 
 enum
 {
 	SEARCH_FILESIZE_ATLEAST = 0,
 	SEARCH_FILESIZE_ATMOST
 };
 
 
 enum {
 	MUTE_SEARCH_DO_DOWNLOAD_EVENT = WM_USER+400,
 };
 
 
 
 // MuteSearchDlg.h : header file
 //
 
 
 /////////////////////////////////////////////////////////////////////////////
 // CMuteSearchDlg dialog
 
 class CMuteSearchDlg : public CResizableDialog
 {
 // Construction
 public:
 	void SetStrings();
 	CMuteSearchDlg(CWnd* pParent = NULL);   // standard constructor
 	~CMuteSearchDlg();
 	CClosableTabCtrl searchselect;
 
 // Dialog Data
 	//{{AFX_DATA(CMuteSearchDlg)
 	enum { IDD = IDD_MUTE_SEARCH_DLG };
 	CComboBox	m_comboSearchBoolean;
 	CComboBox	m_comboFileSize;
 	CLed				m_oSearchingLED;
 	CStatic				m_staticSearchingText;
 	CLabel				m_oSearchForLabel;
 	CLabel				m_oExcludeLabel;
     CEdit		    	m_SearchEdit;	
 	CMuteSearchListCtrl	m_SearchList;
 CString		 	m_strSearchEdit; // this is the word(s) to search for text
 	CString 		 m_strSearchExcludeEdit; // filter out search results with these words in them
 	CNumberEdit			m_oFileSizeEditCtrl;
 CString		 	m_strFileSizeEdit; // text of file size filter in kilo bytes
 	int 		 	m_nSearchBoolean; // this is the index of the combo box for 
 	int 		 	m_nFileSizeBoolean; // this is the index of the combo File Size Boolean
 	CButtonST			m_btnPurgeHashFolder;
 	CButtonST			m_btnExportResultsButton;
 	CButtonST			m_btnClearResultsButton;
 	CButtonST			m_btnDownloadButton;
 
 	//}}AFX_DATA
 	vector<CMuteSearchListItem>	m_vecSearchItems;
 
 	/**
 	* Cancels any active search.
 	*
 	* Must be called before shutting down MUTE filesharing layer.
 	*/
 	void cancelActiveSearch();
 
 //	char mPrintSearchSyncTrace;
 
 	MutexLock *mSearchLock;
 	char mSearchActive;
 	char mSearchCanceled;
 	
 	MutexLock *mResultLock;
 	SimpleVector<char *> *mResultsFromAddresses;
 	SimpleVector<char *> *mResultsFilePaths;
 	SimpleVector<char *> *mResultsFileHashes;
 	SimpleVector<unsigned long> *mResultsFileSizes;
 	inline SetPtrToDownloadWindow( CDialog *pDlg ) { m_pDownloadDialog = pDlg; }
 	bool DoWeKeepSearchResult( CMuteSearchListItem& item );
 
   // ENDURION -> Funktionsdefinition eingesetzt
   void SetSearchResultsIcon( UINT uSearchID, int iImage );
 
 	afx_msg void OnDownloadButton();
 	afx_msg void OnClearResults();
 // Overrides
 	// ClassWizard generated virtual function overrides
 	//{{AFX_VIRTUAL(CMuteSearchDlg)
 	public:
 	virtual BOOL PreTranslateMessage(MSG* pMsg);
 	protected:
 	virtual void DoDataExchange(CDataExchange* pDX);	// DDX/DDV support
 	//}}AFX_VIRTUAL
 
 
 // Implementation
 protected:
 	vector<SearchThread *>	m_vecSearchThread;
 CDialog		 		*m_pDownloadDialog;
 	CStringParser			m_oSearchParser;
 	CStringParser			m_oSearchExcludeParser;
 	CExternStr			  m_ExtStr;
 	
 	// Generated message map functions
 	//{{AFX_MSG(CMuteSearchDlg)
 	afx_msg void OnClose();
 	afx_msg void OnSearchButton();
 	afx_msg void OnStopButton();
 	virtual BOOL OnInitDialog();
 	afx_msg LRESULT OnSearchTimeout(WPARAM, LPARAM); 
 	afx_msg LRESULT OnSearchResults(WPARAM, LPARAM); 	
 	afx_msg LRESULT DoStopSearch(WPARAM, LPARAM); 
 	afx_msg LRESULT DoDownload(WPARAM, LPARAM);
 	afx_msg void OnExportSearchResultsButton();
 	afx_msg void OnPurgeHashFolder();
 	afx_msg void OnShowWindow(BOOL bShow, UINT nStatus);
 
 	afx_msg void OnBnClickedClearall();
 	afx_msg LRESULT OnCloseTab(WPARAM wParam, LPARAM lParam);
 	afx_msg LRESULT OnDblClickTab(WPARAM wParam, LPARAM lParam);
 	afx_msg void OnTcnSelchangeTab1(NMHDR *pNMHDR, LRESULT *pResult);
 
 	//}}AFX_MSG
 	DECLARE_MESSAGE_MAP()
 };
 
 //{{AFX_INSERT_LOCATION}}
 // Microsoft Visual C++ will insert additional declarations immediately before the previous line.
 
 #endif // !defined(AFX_MUTESEARCHDLG_H__3CCC811C_5408_4ADE_A9BC_29E6B9BA087 D__INCLUDED_)
 
Habe mir die .cpp angesehen. Die vier Funktionen sind zwar in der .h in der .cpp in der MessageMap, als implementierte Funktionen finde ich sie aber nirgends. Hast du die vielleicht gelöscht?
Übrigens, der Link auf die CPP führt ins Leere, mußte die URL von Hand eintippen.

Mfg

langer
 
Kann sein die funktionen sind nciht drin ich habe ja nur diese sachen implementiert sonst den rest weis ich nicht momentan was zu den funktione noch dazu gehört!

Den rest muss ich beim emule46a source noch rausfischen was notwendig ist glaube ich!

habe ja am anfang das closeabletabctrl.cpp/.h intregriert und
andere noch

andere noch die searchparams gehen nicht!
 
Zuletzt bearbeitet:
hi

es kommmt trotzdem der gleiche fehler!
MFC_MUTE_GUI fatal error LNK1120: 4 unaufgelöste externe Verweise
MFC_MUTE_GUI error LNK2001: Nichtaufgelöstes externes Symbol "protected: void __thiscall CMuteSearchDlg::OnTcnSelchangeTab1(struct tagNMHDR *,long *)" (?OnTcnSelchangeTab1@CMuteSearchDlg@@IAEXPAUtagNMHDR@@PAJ@Z)
MFC_MUTE_GUI error LNK2001: Nichtaufgelöstes externes Symbol "protected: void __thiscall CMuteSearchDlg::OnBnClickedClearall(void)" (?OnBnClickedClearall@CMuteSearchDlg@@IAEXXZ)
MFC_MUTE_GUI error LNK2001: Nichtaufgelöstes externes Symbol "protected: long __thiscall CMuteSearchDlg::OnDblClickTab(unsigned int,long)" (?OnDblClickTab@CMuteSearchDlg@@IAEJIJ@Z)
MFC_MUTE_GUI error LNK2001: Nichtaufgelöstes externes Symbol "protected: long __thiscall CMuteSearchDlg::OnCloseTab(unsigned int,long)" (?OnCloseTab@CMuteSearchDlg@@IAEJIJ@Z)
 
Hast du den Code so, wie ich ihn geschickt habe, in die MuteSearchDlg.cpp implementiert? Dann findet der Linker auch die Funktionen. Bei mir hier funktioniert das problemlos. Zeig doch noch mal deine geänderte .cpp:

Mfg

langer
 

Neue Beiträge

Zurück