Ошибка при создании дескриптора Windows
Вопрос
Я создал приложение Windows .net 2.0.Это приложение динамически создает элементы управления формой.Теперь, когда я пытаюсь запустить приложение, оно выдает исключение «Ошибка при создании дескриптора Windows».После этого приложение зависает и ничего не происходит.В первый раз форма отображается правильно.В определенном событии я пытаюсь перезагрузить ту же форму, но в этот раз получаю это исключение.Кто-нибудь знает, как от этого избавиться.Любая помощь была бы очень кстати :)
Решение
Недавно я столкнулся с такой проблемой.
Для каждого процесса существует ограничение в 10 000 дескрипторов, которого легко достичь, если вы динамически создаете сложный пользовательский интерфейс.
Чтобы проверить, происходит ли это у вас, воспользуйтесь диспетчером задач — перейдите на вкладку «Процессы», включите столбцы «Объекты USER» и «Объекты GDI».Затем воспроизведите проблему.
В моем случае количество объектов USER достигло ровно 10 000, а затем «бум».
Если это то, что происходит с вами, вам необходимо убедиться, что старые элементы управления расположены правильно, прежде чем создавать новую форму.Возможно, вам придется изменить дизайн, чтобы использовать меньше дескрипторов — это то, что мне нужно было сделать.