У меня есть приложение MFC, которое работает на XP и аварийно завершает работу в Windows 7. (У меня нет исходного кода - это стороннее приложение, которое сторонний производитель больше не поддерживает; я просто пытаюсь получить проклятая вещь, чтобы бежать).
Большинство приложений работает, но есть один экран (окно MDI), который содержит массу элементов управления (худший пользовательский интерфейс), включая 3 элемента управления ComboBox. Простое перемещение мыши над этими элементами управления (которые находятся в сжатом состоянии) вызывает сбой приложения с ошибкой «Приложение MFC перестало работать».
Из того, что я могу определить с помощью Spy ++, элементы управления являются стандартными классами окон ComboBox. Разумеется, они делятся на подклассы, и я предполагаю, что любая обработка, выполняемая в ответ на сообщение при наведении курсора мыши, вызывает ошибку.
Я надеялся, что запуск его в режиме совместимости с XP поможет, но это не так.
Что может вызвать сбой в Windows 7, когда он нормально работает на XP? (Некоторые другие части приложения перестали работать, потому что некоторые библиотеки DLL отсутствовали, и я смог это исправить, скопировав библиотеки DLL из более старой среды. Я надеялся, что это может быть что-то похожее).
PS. В старой среде был Office 2003, а в новой - Office 2010. Хотя эта вещь на самом деле не имеет отношения к Office, я упоминаю об этом на случай, если она как-то уместна.