Quelles sont les nouveautés de la barre des tâches de Windows 7 ?

| Microsoft MSDN France | Jérôme Lambert |

Retrouvez l'intégralité des questions/réponses sur le développement sous Windows 7 dans l'article suivant.

Commentez cet article : Commentez ♪

- Titre : Quelles sont les nouveautés de la barre des tâches de Windows 7 ?

- Auteurs : Microsoft MSDN France, Jérôme Lambert

- Parution : 7 février 2010

- Licence : Copyright ® 2011 Microsoft MSDN France. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.

Sommaire

- I. Quelles sont les nouveautés de la barre des tâches de Windows 7 ?

I - Quelles sont les nouveautés de la barre des tâches de Windows 7 ?

La nouvelle barre de tâches de Windows 7 est le résultat de plusieurs années d'évolution. Elle rationalise un certain nombre de scénarios utilisateur incluant :

- le lancement rapide d'applications ;

- la bascule rapide entre chaque application et fenêtre à partir d'une simple application, (Vignette) ;

- la gestion récente et fréquente des destinations utilisateur, (Jump-List) ;

- l'accès à des tâches communes ;

- le rapport de progression et notifications d'états au travers de boutons de la barre tâches (Superposition d'icônes) ;

- le contrôle de l'application sans sortir de la barre de tâches à partir de vignettes.

Pour ajouter une tâche en C++

HRESULT hr;

CComPtr<ICustomDestinationList> customDest;
hr=customDest.CoCreateInstance (CLSID_DestinationList,NULL,CLSCTX_INPROC_SERVER);
if (FAILED(hr))
return;

//Définir l'appID pour la liste
hr=customDest->SetAppID (L"Test Windows 7");
if (FAILED(hr))
return;

//Débuter
UINT *pcMaxSlots=new UINT();
IObjectArray *ptrobjectArray;
hr=customDest->BeginList (pcMaxSlots,IID_IObjectArray,(void **)&ptrobjectArray);
if (FAILED(hr))
return;

CComPtr<IObjectCollection> ptrCollection;
hr=ptrCollection.CoCreateInstance (CLSID_EnumerableObjectCollection,NULL,CLSCTX_INPROC_SERVER);
if (FAILED(hr))
return ;

CComPtr<IShellLinkW> ptrlink;
hr=ptrlink.CoCreateInstance (CLSID_ShellLink,NULL,CLSCTX_INPROC_SERVER);
if (FAILED(hr))
return;
LPCWSTR pathFile=L"C:\\Program Files (x86)\\Microsoft Visual Studio 10.0\\Common7\\IDE\\devenv.exe";
hr=ptrlink->SetPath (pathFile);
if (FAILED(hr))
return;

ptrlink->SetDescription (L"ceci est une description");
ptrlink->SetIconLocation (pathFile,0);

CComQIPtr<IPropertyStore> pPropStore = ptrlink;
PROPVARIANT pv;
if ( !pPropStore )
return;
InitPropVariantFromString ( L"Visual Studio 2010", &pv );

// configure le titre

pPropStore->SetValue (PKEY_Title, pv );
PropVariantClear ( &pv );

//Sauvegarde des modifications
pPropStore->Commit();

//Ajout de l'objet à la collection
hr=ptrCollection->AddObject (ptrlink);
if (FAILED(hr))
return;

CComQIPtr<IObjectArray> ptrTache=ptrCollection ;

hr=customDest->AddUserTasks (ptrTache);
if (FAILED(hr))
return;

//Ajouter la liste récente
hr=customDest->AppendKnownCategory (KDC_RECENT);
if (FAILED(hr))
return;

hr=customDest->CommitList ();
if (FAILED(hr))
return;

Pour plus d'infos :

- MSDN : http://msdn.microsoft.com/fr-fr/windows/default.aspx

- Le coach Windows 7 : http://msdn.microsoft.com/fr-fr/windows/msdn.coach.windows7

- Kit de développement pour Windows 7 : http://msdn.microsoft.com/fr-fr/windows/gg398052.aspx