Bonjour à tous,
Je développe actuellement une application qui utilise Internet Explorer pour se connecter sur un site (à l'aide de la méthode CreateProcess)...
J'aimerais pouvoir supprimer de l'historique IE uniquement le site visité par mon application...
J'ai pu remarquer, que Windows gère l'historique en deux "parties différentes" :
- Historique affichée (Ctrl+H)
- Lorsqu'on entre l'url à la main (historique des URL visitées (autocomplétion))
J'arrive actuellement à supprimer la 2ème partie de l'historique à l'aide de la fonction suivante :
Code C++ : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 // Recuperation de l historique pUrlHistoryStg2 = NULL; CoInitialize( NULL ); // Instancie un objet avec le CLSID History hr = CoCreateInstance( CLSID_CUrlHistory, NULL, CLSCTX_INPROC, IID_IUrlHistoryStg2, ( void** )&pUrlHistoryStg2 ); if ( SUCCEEDED( hr ) ) hr = pUrlHistoryStg2->EnumUrls( &ppEnum ); // Enumeration des URLs while( ppEnum->Next( 1, &url, &ures ) == S_OK ) // On parcours toute la liste { if (!(url.dwFlags & STATURL_QUERYFLAG_NOURL)) { sprintf_s( strUrl, "%ls", url.pwcsUrl ); // Copie l url (pour le strstr) if( strstr( strUrl, "http://www.monsite.com" ) ) // Si l url contient l'adresse de mon site pUrlHistoryStg2->DeleteUrl( url.pwcsUrl, 0 ); // Suppression de l entree } } // Liberation de la memoire pUrlHistoryStg2->Release(); ppEnum->Release(); CoUninitialize();
Cette fonction fonctionne parfaitement pour supprimer l'autocomplétion (lorsque j'entre l'URL de mon site, IE ne la propose pas)...
Cependant, lorsque je fais un Ctrl+H pour afficher l'historique, l'URL apparaît encore dans le dossier Shell Historique d'Internet Explorer...
Je sais où se trouve ce dossier (C:\Documents and Settings\User\Local Settings\Historique\Aujourd'hui\), mais je n'arrive pas à l'effacer (je sais qu'il est en lecture seule, mais même en remettant tous les droits au dossier à la main ça ne fonctionne pas...
Est-ce que quelqun aurait une idée pour pouvoir supprimer ce dossier d'historique ?
Merci d'avance pour votre aide !
Partager