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.
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




