Здравствуйте, TOPAZ23, Вы писали:
TOP>Добрый вечер всем. У меня возник такой неприятный момент в проекте с использованием MFC. Имеется класс, наследник от CWinApp. Имеется переопределенный метод AddToRecentFileList примерно такой:
TOP>TOP>MyClass::AddToRecentFileList(LPCTSTR lpszPathName)
TOP>{
TOP> ...
TOP> if (m_pRecentFileList != NULL)
TOP> m_pRecentFileList->Add(lpszPathName);
TOP> ...
TOP>}
TOP>
TOP>на Windows 7 все работает нормально, но на Windows 8 и старше на строчке Add падает с ошибкой "access violation". Сейчас скажите, что нужно писать что-то типо того:
TOP>TOP>MyClass::AddToRecentFileList(LPCTSTR lpszPathName)
TOP>{
TOP> ...
TOP> if (m_pRecentFileList != NULL)
TOP> if(WINVER >= 0x0601)
TOP> m_pRecentFileList->Add(lpszPathName, m_pszAppID);
TOP> else
TOP> m_pRecentFileList->Add(lpszPathName);
TOP> ...
TOP>}
TOP>
TOP>Пробовал, во-первых, параметр m_pszAppID пустой, а во-вторых winver не определяется. Может есть какая-то функция для Windows 8 и старше для добавления в список или есть какой-то способ, подскажите пожалуйста!!!
Версию Windows надо определять с помощью
IsWindows8OrGreater