1

В Windows 7, если я «прикрепляю» приложение к панели задач и запускаю его, окно приложения будет связано со значком панели задач (значок будет светиться, нажатие на значок будет фокусировать окно приложения и т.д.). Как программист, я имею полный доступ к значку на панели задач приложения через API - я могу создавать забавные эффекты при загрузке, управлять контекстным меню и т.д. Но как Windows отслеживает, с каким значком приложения связан? Значок на панели задач - это файл .link в скрытой папке, его можно проверить, нажав shift+ правый клик и выбрав «copy as path». И если я нажму + правый клик на значке на панели задач, выберите «Свойства» и измените «Цель», нажатие на такой измененный значок запустит приложение, которое я указал как «Цель». НО - у такого приложения будет отдельная иконка на панели задач! И если, например, я ввожу «блокнот», меняю «цель» на «wordpad» и запускаю блокнот с помощью «запуска», измененный значок все равно будет связан с noteap! И WordPad начнет иметь отдельный значок на панели задач. Где окна хранят такие ассоциации? Можно ли их изменить?

Обновлено:

Кажется, я поставил неправильный эксперимент. Проблема заключается только в файлах, отличных от exe (.bat, .py и т.д.), Изменение целевого объекта на исполняемый будет эффективно связывать его с иконкой O_O.

1 ответ1

1

Я не могу повторить поведение, которое вы описываете в моей системе.
Когда я прикрепляю блокнот к панели задач, затем меняю цель этого значка на wordpad, тогда этот конкретный значок больше не ассоциируется с блокнотом. Например, когда я открываю блокнот (через запуск - запуск), у него появляется новый значок на панели задач. Когда я открываю WordPad, он все еще ассоциируется с первым значком блокнота, с которого я изменил цель.

Поэтому я думаю, что сопоставление выполняется с помощью значка. Если приложение запускается, оно добавляется на панели задач к значку с той же целью. И вы можете изменить эту цель через свойства иконки, как вы описываете себя.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .