четверг, 17 июня 2010 г.

Почему "Установка и удаление программ" иногда показывают большое пустое место?

Это перевод Why does Add or Remove Programs show a large blank space?. Автор: Реймонд Чен.

Некоторые люди заметили, что некоторые программы приводят к тому, что апплет "Установка и удаление программ" Панели Управления создаёт огромное пустое пространство. Что происходит?

Бывают программы, у которых плохо зарегистрирована иконка удаления программы.

Если вы откроете ключ реестра HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Uninstall, то вы увидите список программ, которые зарегистрированы для появления в апплете "Установка и удаление программ" Панели Управления. Некоторые из них могут быть столь любезны, что предоставляют значение "DisplayIcon", не заставляя, таким образом, апплет угадывать подходящую иконку.

К сожалению, если они указывают неверный путь к иконке в этом значении, то в результате получается большое пустое пространство, которое апплет резервирует для пропавшей иконки.

Формат регистрации иконки представляет собой имя файла, за котором опционально следует запятая и десятичный номер иконки в файле.

C:\full\path\to\icon\file.dll
C:\full\path\to\icon\file.dll,123

Поскольку это не командная строка, здесь не нужны кавычки (хотя они допускаются). Более того, номер может быть любым значением, кроме -1. Почему кроме -1? Потому что функция ExtractIcon трактует -1 особым образом.

Если в заданном файле указанная иконка не существует или номер иконки равен -1, то регистрация иконки будет некорректной и апплет "Установка и удаление программ" зарезервирует место для иконки, которая не существует.

Возможно, апплету "Установка и удаление программ" стоило бы более терпимо относится к бажным регистрациям? Или он должен оставаться таким, как это есть сейчас, придерживаясь политики "Не смотреть назад, не исправлять баги в программах; заставить авторов программы исправлять свои ошибки", которая очень нравится многим моим читателям? (кроме того, заметьте, что отказ от размещения недействительной иконки выглядит как баг в апплете "Установка и удаление программ", а не в программе)

Комментариев нет:

Отправить комментарий

Можно использовать некоторые HTML-теги, например:

<b>Жирный</b>
<i>Курсив</i>
<a href="http://www.example.com/">Ссылка</a>

Вам необязательно регистрироваться для комментирования - для этого просто выберите из списка "Анонимный" (для анонимного комментария) или "Имя/URL" (для указания вашего имени и ссылки на сайт). Все прочие варианты потребуют от вас входа в вашу учётку (поддерживается OpenID).

Пожалуйста, по возможности используйте "Имя/URL" вместо "Анонимный". URL можно просто не указывать.

Ваше сообщение может быть помечено как спам спам-фильтром - не волнуйтесь, оно появится после проверки администратором.