Ситуация следующая.
Имеется программа, которой по "сети" приходят команды от сервера. Сеть эмулирует класс, назовем его gs (globalSettings). Основной класс программы (mainPDA) по таймеру забирает из gs список команд и обрабатывает их. В процессе обработки могут открываться новые формы.
и вот тут начинаются чудеса.При вызове функций из классов форм внутри этих функций эмулятор ПДА как бы подвисает.
т.е код такого вида
public bool UpdateDishListView()
{
try
{
ListViewItem ii = new ListViewItem("asdfg");
ii.SubItems.Add("1111");
ii.SubItems.Add("1111");
listViewDishList.Items.Add(ii);
return true;
}
catch
{
return false;
}
finally
{
int i=0;
if (i==0) i++;
}
На строке listViewDishList.Items.Add(ii) система подвисает. До строки return оно не доходит. Происходит выход из окна VisualStudio (в режиме отладки) , он делает вид что передал управление в эмулятор. Окно эмулятора не обновляется. И помогает выйти из всего этого безобразия ресет эмулятора.
В блоки catch и finally программа не попадает. Т.е если и возникает ошибка , то непонятно какая.
Эмулятор Pocked PC 2003 Emulator
Может кто сталкивался с похожей проблемой? В чем тут может быть дело?