Créer en Cleaner en c#

eldaorn Messages postés 13 Date d'inscription lundi 5 juillet 2004 Statut Membre Dernière intervention 20 octobre 2010 - 13 août 2008 à 11:45
cs_Bidou Messages postés 5486 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 - 21 août 2008 à 10:11
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

eldaorn Messages postés 13 Date d'inscription lundi 5 juillet 2004 Statut Membre Dernière intervention 20 octobre 2010
13 août 2008 à 11:55
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 ?
0
cs_Bidou Messages postés 5486 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
13 août 2008 à 19:03
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-
0
eldaorn Messages postés 13 Date d'inscription lundi 5 juillet 2004 Statut Membre Dernière intervention 20 octobre 2010
18 août 2008 à 11:10
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.
0
cs_Bidou Messages postés 5486 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
18 août 2008 à 18:02
System.





Environment

.GetFolderPath(


Environment

.


SpecialFolder

.Cookies)
Par exemple....












<hr />
-My Blog-
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
eldaorn Messages postés 13 Date d'inscription lundi 5 juillet 2004 Statut Membre Dernière intervention 20 octobre 2010
19 août 2008 à 09:30
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);
0
eldaorn Messages postés 13 Date d'inscription lundi 5 juillet 2004 Statut Membre Dernière intervention 20 octobre 2010
19 août 2008 à 13:37
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.
0
eldaorn Messages postés 13 Date d'inscription lundi 5 juillet 2004 Statut Membre Dernière intervention 20 octobre 2010
21 août 2008 à 09:34
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
0
cs_Bidou Messages postés 5486 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
21 août 2008 à 10:11
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-
0
Rejoignez-nous