CaptainFlint
|
Posted: Sat Jun 09, 2012 18:14 Post subject: |
|
|
LonerD wrote: | Полностью возвращает? Или частично в памяти сидит и "наблюдает за процессом"? |
Сейчас — полностью. В памяти он, разумеется, продолжает сидеть, как любой другой загруженный и инициализированный плагин, но это сидение пассивное.
LonerD wrote: | Что если после деинсталляции сделать проверку - открыт ли у пользователя на панели плагин? Если открыт - перечитать содержимое списка, а если не открыт - то ничего не делать (раз пользователь перешёл в другой каталог, то всё-равно список установленных программ автоматом перечитается при следующем открытии плагина). |
Это недостаточное условие. Надо ещё проверить, не активна ли сейчас быстрая фильтрация, т.к. перечитывание панели её убьёт, причём нормального способа это проверить не существует (разве что получить из Тотала количество элементов в списке и сравнить с реальным количеством, да и то, может так получиться, что все элементы подошли под условие фильтра). Кроме того, определить принадлежность панели плагину я смогу только по имени в заголовке или около командной строки. Но пользователь мог и переименовать плагин. Например, если у него разные команды и кнопки работали со старым Uninstaller'ом, он может его удалить, поставить Uninstaller64, а имя виртуальной папки дать Uninstaller, чтобы все прежние скрипты работали без модификации.
Я уж не говорю, что подобные действия являются серьёзным отклонением от стандартного API, и это может привести к неработоспособности плагина в будущем. Гислер обеспечивает совместимость плагинов с Тоталом в рамках предусмотренного набора функциональности, а если плагин лезет за его пределы, то существенно повышается риск огрести проблем. И хорошо, если просто автообновление перестанет работать, а то ведь может случиться, как, например, с плагином AceHelper, в котором невиннейшая система автообновления спсика при переходе на Windows Vista стала зацикливаться и сделала использование плагина невозможным. _________________ Почему же, ё-моё, ты нигде не пишешь "ё"? |
|