ОС: Windows 7 32 бит
Инструмент разработки: Visual Studio 2008
Проблема:
При запуске в Windows 7 это нормально, но в XP есть ошибка утверждения в режиме DEBUG, ошибка управления невидимой сеткой в режиме RELEASE. (как вы можете видеть это на картинках ниже)
Ситуация:
Класс управления сеткой, который я использовал для программы, был загружен из code-project . (Я думаю, что я не могу загрузить файл в stackoverflow? Если вам это нужно, пожалуйста, скажите мне.)
Я использовал этот класс в VS 6.0. Я впервые использую его в VS 9.0. Когда я использовал его в VS 6.0, ошибки не было.
При компиляции программы в Windows 7 и XP ошибки компиляции не возникает.
В Windows 7 он хорошо работает как в режиме отладки, так и в режиме RELEASE.
В Windows XP при запуске exe-файла в папке DEBUG выдается ошибка подтверждения. И когда я запускаю exe-файл в папке RELEASE, элемент управления сеткой не отображается.
И я также попытался скомпилировать в XP с Visual Studio, чтобы увидеть, есть ли какая-либо ошибка, но она дает только ошибку во время выполнения.
Ошибка:
Ошибка отладочного подтверждения! Программа: ...
Файл: ... / gridctrl_src / gridcell.cpp
Линия: 228
Для получения информации о том, как ваша программа
может привести к ошибке подтверждения, см.
документация по Visual C +
утверждает.
Ниже приведен исходный код gridcell.cpp в строке ошибки.
/////////////////////////////////////////////////////////////////////////////
// CGridDefaultCell
CGridDefaultCell::CGridDefaultCell()
{
#ifdef _WIN32_WCE
m_nFormat = DT_LEFT|DT_VCENTER|DT_SINGLELINE|DT_NOPREFIX;
#else
m_nFormat = DT_LEFT|DT_VCENTER|DT_SINGLELINE|DT_NOPREFIX | DT_END_ELLIPSIS;
#endif
m_crFgClr = CLR_DEFAULT;
m_crBkClr = CLR_DEFAULT;
m_Size = CSize(30,10);
m_dwStyle = 0;
#ifdef _WIN32_WCE
LOGFONT lf;
GetObject(GetStockObject(SYSTEM_FONT), sizeof(LOGFONT), &lf);
SetFont(&lf);
#else // not CE
NONCLIENTMETRICS ncm;
ncm.cbSize = sizeof(NONCLIENTMETRICS);
VERIFY(SystemParametersInfo(SPI_GETNONCLIENTMETRICS, sizeof(NONCLIENTMETRICS), &ncm, 0));
SetFont(&(ncm.lfMessageFont));
#endif
}
Заранее спасибо !!