Почему win32 api перестает показывать windows
У меня есть программа Win32 API windows, которая отображает txt-файл, содержащий французский документ. Я могу нажать на слово, и программа прочитает файл словаря, откроет окно редактирования и отобразит английское определение, тип и время. После нескольких запросов программа перестает отображать результаты. На самом деле любые щелчки мыши, по-видимому, не дают никаких результатов (включая щелчки по панели инструментов и полосе прокрутки). Щелчок правой кнопкой мыши должен вызвать появление MessageBox, но этого не происходит.
При отслеживании моей программы я вижу, что программа ведет себя так, как будто она работает, но никаких окон не появляется и никакого отображаемого текста не появляется.
Я повторно использую окно редактирования и просто изменяю его размер и перемещаю (вместо того, чтобы удалять и воссоздавать его для каждого определения), поэтому я попытался создать его, когда это было необходимо, и удалить, когда это было сделано, но никаких изменений.
Я также создаю глобальный шрифт при запуске и применяю его при необходимости, поэтому я попробовал его без шрифта, но опять же без изменений.
Когда я компилирую с помощью CodeBlocks, программа перестает отображаться примерно после 45 запросов. Когда я компилирую с DevCpp, проблема возникает примерно после 20 запросов. Я также следил за GlobalMemoryStatus, но там, похоже, много памяти, так что я не могу списать это на утечку памяти. Это почти как если бы я выбежал из какой-то структуры windows, но я не знаю, что?
Программа содержит ~1300 строк, поэтому я не знаю, есть ли подмножество, которое могло бы проиллюстрировать причину, но опубликует выбранные блоки кода, если я знаю, что может помочь.
У кого-нибудь есть какие-нибудь предложения?
Что я уже пробовал:
удаление ненужных шрифтов, повторное использование диалогов, ненужных кистей, различных компиляторов.
Richard MacCutchan
Проблема может быть вызвана любой из множества проблем, но единственный способ выяснить это-провести некоторую отладку. Здесь никто не может догадаться, что делает ваш код.