Если программа работает правильно и оно зависает, то в ремонт его...
Для проверки записать программу попроще и потестить...