Ведение журнала - почти единственный ответ. Не зная вашей структуры, я не могу дать точный ответ, но в основном открываю файл и добавляю сообщения в различных процедурах, представляющих интерес. Наконец закройте его.
В сообщении укажите значения интересующей вас переменной.
Также полезно использовать окно сообщения, чтобы увидеть, находитесь ли вы в правильной ветке или процедуре. Это оказывает минимальное влияние на весь поток.
Наконец, попробуйте загрузить любую из экспресс-версий .NET и используйте Winforms, чтобы попытаться проверить особенно проблемные области. Хотя Winform является собственной платформой, существует высокая степень соответствия между его контролем и теми, которые предоставляет Windows.
Я поддерживаю симуляцию Project Mercury Capsule в качестве дополнения для Orbiter Space Simulator. Он написан на C ++ и должен использовать Win32 напрямую для некоторых панелей и диалогов. Были случаи, когда я запускал VB6 (позже VB.NET) для проработки какого-то сложного взаимодействия, а затем переводил его в эквивалент Win32 в C ++.
Однако это последнее средство.