Windows Vista présente une nouvelle API en remplacement du carnet d'adresses (WAB) des systèmes précédents. Cette API est d'une approche ardue et mal documentée. Programmez! a débroussaillé le terrain pour vous.
L'API Windows Contacts est un mécanisme permettant de stocker et gérer les informations relatives à vos contacts. Un logiciel de messagerie comme Windows Mail utilise cette API pour son carnet d'adresses. L'avantage d'une telle API, découplée de tous logiciels, est qu'elle offre une interface commune à toute application souhaitant l'utiliser. Un autre avantage étant que les données sont sauvegardées au format XML. L'inconvénient dans le cas présent résulte de ce que cette API est entièrement écrite en COM. Microsoft ne semble donc pas tant que cela disposée à abandonner la technologie COM, contrairement à ce qui se dit parfois. La programmation d'un client COM en C ou C++ n'est pas chose facile dans l'absolu. Dans ce cas particulier, la difficulté est considérablement augmentée par une documentation pas du tout à la hauteur, contenant moult erreurs et des exemples de codes ne fonctionnant pas. Nous parlons de la MSDN de juillet 2007, dernière version disponible au moment de la rédaction de cet article.