【发布时间】:2015-10-06 15:05:39
【问题描述】:
我们努力使名为 JabRef (http://jabref.sourceforge.net/) 的 Java Swing 应用程序可固定到 Windows 的任务栏。到目前为止我们做了什么:
- 通过 JNA 在 JabRef 中设置 AppModelUserID。我们通过输出验证了正确的值
- 使用launch4j 构建fat jar 并从中生成可执行文件(exe)
- 使用 WinShell 插件通过 NSIS 创建安装程序
- 安装程序使用在 JabRef 中设置的相同 AppModelUserID 创建快捷方式。我们通过十六进制编辑器对此进行了验证。
- 分组工作:可以通过快捷方式或exe启动
- 什么不工作:右键单击任务栏项目只显示“关闭应用程序”动作,没有别的。
任何想法如何进一步调试?
【问题讨论】:
-
你确定右键菜单只有一个项目吗?请发布屏幕截图。当您右键单击任务栏项目时,您是否在谈论您已经在运行的应用程序窗口,因为单击快捷方式意味着它已经被固定?如果您右键单击开始菜单/屏幕中的快捷方式会发生什么情况,它是否提供了 pin 选项?
-
"我们通过输出验证了正确的值" 这是什么意思?您确定您的窗口和/或进程的 ID 设置正确吗?
-
快捷方式提供了一个固定到任务栏选项,但是如果您通过固定任务栏条目启动应用程序,您基本上在任务栏上有两个图标,因为正在运行的实例没有分组到固定图标。
标签: java windows nsis launch4j taskbar