пятница, 10 декабря 2010 г.

Используйте в IE событие onclick вместо onchange

IE logo

Обнаружился новый интересный баг в ИЕ, причем насколько я понял он присутствует практически во всех версиях: в IE5, IE5.5, IE6, IE7, IE8. В Internet Explorer как-то своеобразно работает событие onchange в полях checkbox и radio в формах. При нажатии не происходит события onChange, оно происходит только, например, при нажатии в области формы.

<input type="radio" name="btn" value="1" onchange="alert(this.value);"/>1
<input type="radio" name="btn" value="2" onchange="alert(this.value);"/>2

Пример:

1
2

Решение - для совместимости с IE использовать в формах для полей checkbox и radio не событие onchange, а onclick
<input type="radio" name="btn" value="1" onclick="alert(this.value);"/>1

четверг, 11 ноября 2010 г.

Баг в Avira AntiVir Personal EN 10.0.0.561 нарушает работу Windows

Avira AntiVir Personal

Avira AntiVir Personal хороший антивирус, использую его довольно давно, да и по тестам постоянно показывает хорошие результаты. Но с последней версией разработчики что-то намудрили.

После обновления с компьютером стали твориться неприятные вещи: после некоторого времени работы, хотя по показаниям свободной памяти оставалось еще много всплывало сообщение (Всплывающее окно приложения Windows) "Слишком мало виртуальной памяти : Свободная виртуальная память системы заканчивается. Windows увеличит размер файла подкачки виртуальной памяти. Во время этого процесса некоторые приложения могут получить отказ на запросы к памяти. Дополнительные сведения содержатся в справочной системе."

После этого переставали отрисовываться окна и текст, программы аварийно заканчивали работу, терялись их настройки и данные, открытые файлы не сохраняись, а новые файлы не открывались. Лог заполнялся ошибками "Не найдено описание для события с кодом ( XX ) в источнике ( YY ). Возможно, на локальном компьютере нет нужных данных в реестре или файлов DLL сообщений для отображения сообщений удаленного компьютера. Попробуйте использовать ключ /AUXSOURCE= для получения этого описания, - дополнительные сведения об этом содержатся в справке. В записи события содержится следующая информация..."

По видимому антивирус блокирует нормальную работу системы, мешая освобождать неиспользуемую память (приводя к утечкам памяти), что приводит к ухудшению работы. Предыдущая версия этими недостатками не обладала.

Хотя на форуме писали, что помогает открыть Avira -> Configuration -> General -> Security и отключить "Protect processes from unwanted termination", но у меня система пришла в норму только после полного удаления Авиры.

Так что, если у вас возникают описанные симптомы и установлена Avira AntiVir Personal EN 10.0.0.561, то вы знаете что делать - сначала измените настройки, если же не поможет, то удалите до выхода исправленной версии.