Créer en Cleaner en c#

Signaler
Messages postés
13
Date d'inscription
lundi 5 juillet 2004
Statut
Membre
Dernière intervention
20 octobre 2010
-
Messages postés
5487
Date d'inscription
dimanche 4 août 2002
Statut
Modérateur
Dernière intervention
20 juin 2013
-
Bonjour à tous,
Je débute dans la programmation et j'ai un petit projet en tête mais je manque de connaissance pour avancer.
Je voudrais simplement créer un petit cleaner qui nettoie les traces d'IE et qui vide les fichiers TEMP.
Supprimer un fichier je sais comment faire mais en revanche pour supprimer tout les fichiers d'un répertoire j'en ai aucune idée, si vous aviez la gentillesse de me montrer la voie merci encore pour vos futures réponses !

8 réponses

Messages postés
13
Date d'inscription
lundi 5 juillet 2004
Statut
Membre
Dernière intervention
20 octobre 2010

J'ai recherché sur votre site et j'ai trouvé comment supprimer toute une liste de fichier dans un répertoire défini Directory.Delete (@"nom du dossier", true);
Le soucis c'est que je veux que cette application fonctionne peu importe le poste sauf que là c'est pas le cas car je définis le chemin du dossier temp mais selon le nom de la session ou selon la version de windows le chemin n'est pas le même.

Existe-il une commande pour connaitre le nom de la session ouverte ?
Messages postés
5487
Date d'inscription
dimanche 4 août 2002
Statut
Modérateur
Dernière intervention
20 juin 2013
57
Bonsoir,
Pour les répertoires spéciaux, voir System.
Environment.
SpecialFolder
Pour avoir le nom de l'utilisateur actuellement loggué, tu peux utiliser System.Windows.Forms.
SystemInformation.UserName

<hr />
-My Blog-
Messages postés
13
Date d'inscription
lundi 5 juillet 2004
Statut
Membre
Dernière intervention
20 octobre 2010

Merci pour votre réponse en effet je dois utiliser System.Environment.SpecialFolder :

J'ai regardé sur le site msdn et j'ai vu :
Namespace:

System
Assembly: mscorlib (in mscorlib.dll)Specifies enumerated constants used to retrieve directory paths to system special folders

[ComVisibleAttribute(true)] public enum SpecialFolder

Ma question étant comment on supprime :
Cookies

InternetCache

History

Désolé je débute seulement dans ce monde qu'est la programmation.
Messages postés
5487
Date d'inscription
dimanche 4 août 2002
Statut
Modérateur
Dernière intervention
20 juin 2013
57
System.





Environment

.GetFolderPath(


Environment

.


SpecialFolder

.Cookies)
Par exemple....












<hr />
-My Blog-
Messages postés
13
Date d'inscription
lundi 5 juillet 2004
Statut
Membre
Dernière intervention
20 octobre 2010

Je pensais avoir fini le prog et non j'ai un soucis j'ai une erreur comme quoi le fichier index.dat est utilisé par un autre processus.
Le code ressemble à ça :

private
void button1_Click(
object sender,
EventArgs e){

string name =
Environment.UserName.ToString();

//Je r‚cupŠre le chemin d'accŠs de l'historique que je place dans history et ensuite je supprime le dossier

Console.WriteLine(
"GetFolderPath: {0}",
Environment.GetFolderPath(System.
Environment.
SpecialFolder.History));

string history =
Environment.GetFolderPath(System.
Environment.
SpecialFolder.History);

Directory.Delete(history,
true);

//Je r‚cupŠre le chemin d'accŠs du cache d'IE que je place dans InternetCache et ensuite je supprime le dossier

Console.WriteLine(
"GetFolderPath: {0}",
Environment.GetFolderPath(System.
Environment.
SpecialFolder.InternetCache));

string InternetCache =
Environment.GetFolderPath(System.
Environment.
SpecialFolder.InternetCache);

Directory.Delete(InternetCache,
true);

//Je r‚cupŠre le nom de la session que je place dans le chemin d'accŠs au fichier temp et je supprime

string name2 =
Environment.UserName.ToString();

Directory.Delete(
@"C:\Users" + name +
"\\AppData\\Roaming\\temp",
true);
Messages postés
13
Date d'inscription
lundi 5 juillet 2004
Statut
Membre
Dernière intervention
20 octobre 2010

Et là j'ai ce message d'erreur :
IOException
The process cannot access the file 'index.dat' because it is being used by another process.

Quelqu'un peut m'aider ? Merci pour vos futures réponses.
Messages postés
13
Date d'inscription
lundi 5 juillet 2004
Statut
Membre
Dernière intervention
20 octobre 2010

J'ai terminé le programme tout fonctionne sauf une chose : l'historique d'internet explorer !
Existe t'il une commande pour supprimer l'history ?
Merci
Messages postés
5487
Date d'inscription
dimanche 4 août 2002
Statut
Modérateur
Dernière intervention
20 juin 2013
57
string[] theFiles = Directory.GetFiles(Environment.GetFolderPath(Environment.SpecialFolder.History), "*", SearchOption.AllDirectories); ???

Voir:
http://www.codeproject.com/KB/cs/ponta.aspx?df=100&forumid=67589&exp=0&select=897325
http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=799794&SiteID=1

<hr />
-My Blog-