Leider enthält scheint das Projekt beim Öffnen in meinem Visual Studio C++ 2005 Express noch ein paar von mir nicht ganz gelöste Fehler zu haben.
1.) Beim ersten Ă–ffen muss das Projekt ins aktuelle Visual C++ Project Format konvertiert werden.
Gelöst.
2.) In der StdAfx.h wird ein Include namens "afxwin.h" nicht gefunden.
Habe ich durch hinzufügen des zusätzlichen Include Verzeichnisses "C:\Programme\Microsoft Platform SDK\Include\mfc" in den Projekteinstellungen gelöst.
3.)Beim Build kommt gleich zwei mal untereinander der Error
"C:\projects\cdirectorychangewatcher\delayeddirectorychangehandler.h(297) : error C2248: 'CDirectoryChangeWatcher::CDirWatchInfo' : cannot access private class declared in class 'CDirectoryChangeWatcher'
C:\projects\cdirectorychangewatcher\directorychanges.h(414) : see declaration of 'CDirectoryChangeWatcher::CDirWatchInfo'
C:\projects\cdirectorychangewatcher\directorychanges.h(357) : see declaration of 'CDirectoryChangeWatcher'"
Hier kenne ich mich zwenig mit Klassen aus um den Fehler zu beheben. Vielleicht kann sich da bitte jemand von euch den Quellcode im "Download demo project - 152 Kb" File anschauen?
- Code: Alles auswählen
DelayedDirectoryChangeHandler.h:
...
friend class CDirectoryChangeWatcher;
friend class CDirectoryChangeWatcher::CDirWatchInfo; // hier kommt der Error
...
DirectoryChanges.h:
...
class CDirWatchInfo
{ //Auf diesen Zeile wird im oberen see Declaration Hinweis verwiesen
private:
CDirWatchInfo(); //private & not implemented
CDirWatchInfo & operator=(const CDirWatchInfo & rhs);//so that they're aren't accidentally used. -- you'll get a linker error
public:
CDirWatchInfo(HANDLE hDir, const CString & strDirectoryName,
CDirectoryChangeHandler * pChangeHandler,
DWORD dwChangeFilter, BOOL bWatchSubDir,
bool bAppHasGUI,
LPCTSTR szIncludeFilter,
LPCTSTR szExcludeFilter,
DWORD dwFilterFlags);
private:
~CDirWatchInfo( );//only I can delete myself....use DeleteSelf()
public: ...