为什么 windows 任务栏自定义任务列表在没有 windows 10 的情况下无法工作?

Why windows task bar custom task list doesn`t work without pin on windows 10?

C++ 中 QML JumpList (same behaviour if using QWinJumpList 的最小工作示例。

import QtQuick 2.3
import QtQuick.Window 2.2
import QtWinExtras 1.0

Window {
    visible: true

    JumpList {
        JumpListCategory {
            visible: true
            title: "Test"

            JumpListLink {
                title: "Test Link"
                executablePath: "http://google.com"
            }
        }
    }
}

启动应用程序后,您可以在 windows 任务栏中的应用程序上按鼠标右键,然后查看如下内容:

如果按 Test Link 菜单项,应打开带有 http://google.com url 的默认浏览器,因为它在后台使用 shell 执行。这在 windows 7、8、8.1 中运行良好。

在 windows 10 中,当您不手动将应用程序固定到任务栏时,这将不起作用。完成后 link 开始工作了。

为什么会这样,如何解决?

更新 1:这种奇怪的行为在 Windows 10 - dev 上使用 Qt 5.5、5.5.1、5.6 和 master 分支进行了测试,第一个发布的家庭版本,最后的家,亲。结果是一样的 - 不起作用。此外,例如,chrome 使用自定义列表(site 部分)并且无需固定即可正常工作。

更新 2:这是我的 qt 错误 QTBUG-49486 about this and related to it QTBUG-48751。但问题是现在 Qt 开发者也不知道如何解决这个问题。

它已在 2015 年 11 月 12 日的 windows 10 次主要更新中修复