2010-01-27 1 views
8

Существует несколько приложений вокруг этих экранных объектов на панели задач Windows, но они не реализуют интерфейс IDeskBand. Например, измеритель теста Lenovo и Notebook BatteryInfo.Как приложение может отображать объект на панели задач Windows?

Например:

Notebook BatteryInfo http://home.arcor.de/batteryinfogateway/img/taskbar_new.png

На рисунке выше, объект на панели задач ставится там приложением и исчезает, когда приложение закрывается. Это отличается от IDeskBand, в котором COM-объект загружается непосредственно explorer.exe.

Какой API/метод можно использовать в Windows для этого?

ответ

1

Это называется «appbars». Вам нужно будет написать модуль с использованием Shell API и зарегистрировать его с помощью Shell. Пожалуйста, не то, чтобы в случае, если у пользователя установлена ​​ОС x64, ваш модуль также должен быть 64-разрядным, что обычно означает, что при распространении вашей утилиты должны быть как 32-разрядные, так и 64-разрядные версии.

Win7 имеет гораздо более гибкий интерфейс для этого, называется «taskbar extensions»

+1

Я прочитал на AppBars, и я не думаю, что это то, что я ищу. AppBars отделены от панели задач. Я ищу что-то, что отображает что-то внутри панели задач. –

+0

AppBars отображаются внутри панели, содержащей кнопку запуска, кнопки приложения и область уведомлений. Например, панель QuickLaunch является примером AppBar. С точки зрения пользователя AppBars ARE на панели задач. Это как можно ближе к вашей цели с использованием документированных API. – Rom

+1

Я использую интерфейс IDeskBand прямо сейчас, и я верю в то, о чем вы говорите. –