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