Панель управления Windows XP - предоставление значения для поля «комментарии» - PullRequest
3 голосов
/ 11 июня 2010

Откуда панель управления Windows XP получает значение для поля «Комментарии»? Я пишу приложение панели управления EXE, и из документации не видно, что вы можете указать значение для этого поля.

image

Ответы [ 3 ]

1 голос
/ 16 июня 2010

Регистрация исполняемого файла (exe) в качестве апплета панели управления в Windows Vista с использованием установщика Windows XML (WIX) при http://blogs.msdn.com/b/cjacks/archive/2007/05/03/registering-an-executable-file-exe-as-a-control-panel-applet-on-windows-vista-using-windows-installer-xml-wix.aspx


[предыдущий ответ]

См. Выполнение регистрации элемента панели управления из Регистрация элементов панели управления в http://msdn.microsoft.com/en-us/library/cc144195(VS.85).aspx

В частности, вы хотите InfoTip, который является комментариями.

Регистрация элементов панели управления

Элементы панели управления должны быть зарегистрированы для того, чтобы появиться в элементе управления Панельное окно. Если панель управления элемент реализован как часть .exe файл, то он зарегистрирован как командный объект. Регистрация отличается если элемент реализован как .dll файл, который экспортирует CPlApplet функция.

1 голос
/ 21 июня 2010

Эта строка извлекается из значения реестра HKCR \ CLSID {guid} \ InfoTip.Как привести реестр в порядок, очень хорошо объяснено в этой статье MSDN Library , я не могу добавить к этому немного.

1 голос
/ 14 июня 2010

Использование CPLApplet :

Когда панель управления загружает файл .dll (или .cpl), она вызывает функцию CPlApplet для получения информации, такой как номер панели управления.элементы файла hosts, , а также информация о каждом элементе .

Когда Windows сначала загружает элемент панели управления, она получает адрес функции CPlApplet и затемиспользует этот адрес для вызова функции и передачи ей сообщений.Он может отправлять следующие сообщения.

Вам необходимо обработать Сообщение CPL_INQUIRE и заполнить структуру CPLINFO .

typedef struct tagCPLINFO {
  int      idIcon;
  int      idName;
  int      idInfo;
  LONG_PTR lpData;
} CPLINFO;

idInfo - это идентификатор ресурса строки, содержащей описание.Вы не можете просто установить эту вещь, заполнив какой-то ключ реестра.

Редактировать: Хорошо, плохо, это старое решение.

...