Вылетает "0xC0000008: An invalid handle was specified" во время отладки любого из проектов.
Без отладки работают нормально. Ругаться на сокеты, на внутренности CRT... логики не вижу никакой.
Жму "Продолжить" — работает нормально... пару секунд до следующего такого исключения.
Снятие флажка с соответствующего пункта в Debug/Exceptions/Win32 Exceptions/ никак не влияет.
Rebuild — не помогает, перезапуск студии — тоже.
Поможите, кто чем может
Здравствуйте, alec_d, Вы писали:
_>Вылетает "0xC0000008: An invalid handle was specified" во время отладки любого из проектов.
_>Без отладки работают нормально. Ругаться на сокеты, на внутренности CRT... логики не вижу никакой.
_>Жму "Продолжить" — работает нормально... пару секунд до следующего такого исключения.
_>Снятие флажка с соответствующего пункта в Debug/Exceptions/Win32 Exceptions/ никак не влияет.
_>Rebuild — не помогает, перезапуск студии — тоже.
_>Поможите, кто чем может
Это 64-битная винда внутри кидает и ловит такое исключение, при работе с сокетами.
Одним из 33 полных кавалеров ордена "За заслуги перед Отечеством" является Геннадий Хазанов.
Здравствуйте, Тот кто сидит в пруду, Вы писали:
ТКС>Это 64-битная винда внутри кидает и ловит такое исключение, при работе с сокетами.
Возможно, но не мой случай... у меня XP 32-битная, еще месяц-два назад все работало нормально, у коллег те же проекты нормально дебажатся и сейчас.
Разве что винда как-то хитро думает подохнуть
Здравствуйте, alec_d, Вы писали:
_>Вылетает "0xC0000008: An invalid handle was specified" во время отладки любого из проектов.
_>Без отладки работают нормально. Ругаться на сокеты, на внутренности CRT... логики не вижу никакой.
_>Жму "Продолжить" — работает нормально... пару секунд до следующего такого исключения.
_>Снятие флажка с соответствующего пункта в Debug/Exceptions/Win32 Exceptions/ никак не влияет.
_>Rebuild — не помогает, перезапуск студии — тоже.
_>Поможите, кто чем может
Ну, в принципе вы наблюдаете документированное поведение: смотрим MSDN на тему закрытия хэндлов, например, CloseHandle.
If the application is running under a debugger, the function will throw an exception if it receives either a handle value that is not valid or a pseudo-handle value. This can happen if you close a handle twice, or if you call CloseHandle on a handle returned by the FindFirstFile function instead of calling the FindClose function.
Т.е. программа без отладчика вполне может нормально работать, но может это в логике где-то надоработка (в смысле, что перед закрытиями хэндлов их следует проверять, а после закрытия, соответственно, обнулять, чтобы нечаянно не попытаться закрыть во второй раз).
... << RSDN@Home 1.2.0 alpha 4 rev. 1446>>