在 Windows 7 中,如果我将应用程序“固定”到任务栏并启动它,应用程序窗口将与任务栏图标相关联(图标将发光,单击图标将聚焦应用程序窗口等)。作为一名程序员,我可以通过 API 完全访问应用程序任务栏图标 - 我可以制作有趣的下载效果、操作上下文菜单等。但 Windows 如何跟踪与哪个应用程序图标相关联?任务栏中的图标是隐藏文件夹中的 .link 文件,可以通过 Shift + 右键单击并选择“复制为路径”进行检查。如果我按住 Shift 并右键单击任务栏中的图标,选择“属性”并更改“目标”,单击此类修改后的图标将启动我指定为“目标”的应用程序。但是 - 这样的应用程序将有单独的任务栏图标!例如,如果我固定“记事本”,将“目标”更改为“写字板”,并通过“运行”启动记事本,修改后的图标仍将与 noteap 相关联!写字板将开始具有单独的任务栏图标。Windows 在哪里保存这种关联?可以修改它们吗?
更新:
看来我设置了一个错误的实验。问题只出现在非 exe 文件(.bat、.py 等)中,将目标更改为可执行文件会有效地将其与图标 O_O 重新关联。
答案1
我无法在我的系统上重复您描述的行为。
当我将记事本固定到任务栏,然后将该图标的目标更改为写字板时,该特定图标不是与记事本不再关联。例如,当我打开记事本(通过开始 - 运行)时,它在任务栏上有自己的新图标。当我打开写字板时,它仍然与我更改目标的第一个记事本图标相关联。
所以我认为映射是由图标的目标完成的。如果启动了某个应用程序,它会被添加到任务栏上具有相同目标的图标上。并且您可以通过图标的属性修改该目标,就像您自己描述的那样。