void Initialize() { if (base::win::get_version() < base::win::VERSION_WIN7) { return ; } const wchar_t* currentAppID = 0; HRESULT hr = windows7::GetCurrentProcessExplicitAppUserModelID((wchar_t**)¤tAppID); if (FAILED(hr) || !currentAppID) { currentAppID = getCurrentAppID(); windows7::SetCurrentProcessExplicitAppUserModelID(currentAppID); } JumpList jumpList; jumpList.SetAppID(currentAppID); if (jumpList.InitializeList()) { fs::path ydweDirectory = base::path::get(base::path::DIR_MODULE).remove_filename().remove_filename(); jumpList.AddTaskSeparator(); jumpList.AddTask(L"YDWEÅäÖÃ", [&](CComPtr<IShellLinkW>& shellLinkPtr) { shellLinkPtr->SetPath((ydweDirectory / L"bin" / L"YDWEConfig.exe").c_str()); shellLinkPtr->SetDescription(L"´ò¿ªYDWEÅäÖóÌÐò¡£"); shellLinkPtr->SetIconLocation((ydweDirectory / L"bin" / L"logo.ico").c_str(), 0); }); } }