Página 1 de 2

TempFolder Cleaner( Mi primera app con c#)

Publicado: 28 May 2011 01:16
por rafaxplayer
Wenas compañeros , aquí va mi primera app con VS y c# , la verdad las diferencias con ams son tan abismales en cuestiones tan simples como carga y configuración y opciones en controles que no pienso realizar ninguna app un poco seria en ams , no por eso voy a desacreditar autoplay al que le debo muy buenos momentos y este foro , seguire aportando aqui todo la ayuda que pueda sobre ams y demas , este aprendizaje tambien me servira para hacer aportes para autoplay como dll , plugins y demas , desde C# se puede sacar de todo..
sin mas royos aquí va la aplicación , es un gestor de archivos temporales en principio pero se puede gestionar cualquier otro directorio que queramos , utiliza algún filtrillo para borrar archivos , info sobre los mismos y dos xorradas mas , para ir aprendiendo sobre el tema es un principio, ay me direis que os parece ;):

Captura:

Imagen

Source:
using System;
using System.ComponentModel;
using System.Windows.Forms;
using System.IO;
using System.Diagnostics;


namespace listBox
{
public partial class Form1 : Form
{

public Form1()
{
InitializeComponent();


}


private void buttonFolder_Click(object sender, EventArgs e)
{
if (folderBrowserDialog1.ShowDialog() == DialogResult.OK)
{

Ruta.Text = folderBrowserDialog1.SelectedPath;
GetFilesFromDirectory(Ruta.Text);



}

}


private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
{


}

private void listBox1_MouseDoubleClick(object sender, MouseEventArgs e)
{
object o = listBox1.SelectedItem;
if (o is LBItem)
{
try
{
LBItem lbi;
lbi = (LBItem)o;

Process.Start(lbi.Data);

}
catch(Exception ex)
{
MessageBox.Show(ex.Message);
}

}
}

private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
//string todos = "All";
if (Ruta.Text != "")

{

listBox1.Items.Clear();
dataGridView1.Rows.Clear();

DirectoryInfo dir = new DirectoryInfo(Ruta.Text);
FileInfo[] files = dir.GetFiles(sExtension());

listBox1.BeginUpdate();

foreach (FileInfo f in files)
{
string[] row0 = { f.Name, f.Extension, f.FullName, f.Length.ToString(), f.Attributes.ToString(), f.CreationTime.ToString(), f.LastAccessTime.ToString(), f.LastWriteTime.ToString() };

listBox1.Items.Add(new LBItem(f.Name, f.FullName));
dataGridView1.Rows.Add(row0);

}
if (comboBox1.SelectedItem.ToString() == "All")
{
string[] dirs = Directory.GetDirectories(Ruta.Text);
foreach (string folder in dirs)
{
if (Directory.Exists(folder))
{
string curdir = Path.GetFileNameWithoutExtension(folder);
listBox1.Items.Add(new LBItem(curdir, folder));
}
}
}

listBox1.EndUpdate();
}


}

private void buttonDelete_Click(object sender, EventArgs e)
{

if (MessageBox.Show("Delete files?", "Delete Files Selected ? ", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.OK)
{

if (listBox1.SelectedItem == null)
{

if (comboBox1.SelectedItem.ToString() == "All")
{
//MessageBox.Show(comboBox1.SelectedText);
DirectoryInfo dir = new DirectoryInfo(Ruta.Text);
FileInfo[] files = dir.GetFiles();
foreach (FileInfo f in files)
try
{
{
f.Delete();

}
DirectoryInfo[] dirs = dir.GetDirectories();
foreach (DirectoryInfo folder in dirs)
{
folder.Delete(true);
}
}
catch (System.IO.IOException ex)
{
MessageBox.Show(ex.Message);
break;

}
}
else
{
string[] fileList = Directory.GetFiles(Ruta.Text, "*" + comboBox1.SelectedItem.ToString());
foreach (string fileName in fileList)
try
{
File.Delete(fileName);
}
catch (IOException ex)
{
MessageBox.Show(ex.Message);
break;

}
}
}
else
{
for (int i = listBox1.SelectedItems.Count - 1; i >= 0; i--)
try
{
LBItem lbi;
lbi = (LBItem)listBox1.SelectedItems;

if (File.Exists(lbi.Data))
{
File.Delete(lbi.Data);
}
else
{
Directory.Delete(lbi.Data, true);
}
}
catch (System.IO.IOException ex)
{
MessageBox.Show(ex.Message);
break;

}

}
string Title = "Files deleted successfull!";
string Texto = "-----------------------------------";

notifyIcon1.ShowBalloonTip(2000, Title,Texto, ToolTipIcon.Info);

}
else
{
MessageBox.Show("No files selcted");
}

GetFilesFromDirectory(Ruta.Text);
}


// carga del listbox desde un directorio
private void GetFilesFromDirectory(string fullDirectoryPath)
{

comboBox1.Items.Clear();
listBox1.Items.Clear();
comboBox1.Items.Add("All");
DirectoryInfo dir = new DirectoryInfo(fullDirectoryPath);
FileInfo[] files = dir.GetFiles();

listBox1.BeginUpdate();
comboBox1.BeginUpdate();
dataGridView1.Rows.Clear();
foreach (FileInfo f in files)
{
string[] row0 = { f.Name, f.Extension, f.FullName, f.Length.ToString(), f.Attributes.ToString(), f.CreationTime.ToString(), f.LastAccessTime.ToString(), f.LastWriteTime.ToString() };

listBox1.Items.Add(new LBItem(f.Name, f.FullName));
dataGridView1.Rows.Add(row0);

if (comboBox1.FindString(f.Extension) == -1)
{

comboBox1.Items.Add(f.Extension);
}
}
comboBox1.EndUpdate();
string[] dirs = Directory.GetDirectories(fullDirectoryPath);
foreach (string folder in dirs)
{
if (Directory.Exists(folder))
{
string curdir = Path.GetFileNameWithoutExtension(folder);
listBox1.Items.Add(new LBItem(curdir, folder));
}
}
listBox1.EndUpdate();
if (fullDirectoryPath != "")
Ruta.Text = fullDirectoryPath;
buttonDelete.Enabled = true;
}


private void Form1_Load(object sender, EventArgs e)
{
GetFilesFromDirectory(Path.GetTempPath());
}


//abrir url...
private void linkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
{
try
{
VisitLink();
}
catch (Exception ex)
{
MessageBox.Show("Unable to open link that was clicked.");
}
}


private void VisitLink()
{

linkLabel1.LinkVisited = true;

Process.Start("http://www.amsspecialist.info/index.php");
}


private void dataGridView1_CellMousseDoubleClick(object sender, DataGridViewCellMouseEventArgs e)
{
try
{

string spath = Convert.ToString(dataGridView1.CurrentRow.Cells[2].Value);
Process.Start(spath);

}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}

}

// clase para añadir un item y una data en los listbox
class LBItem
{
public string texto;
public string Data;

public LBItem(string c, string v)
{
texto = c;
Data = v;

}
public override string ToString()
{
return texto;

}

}

public string sExtension()
{
string extension;
// string todos = "All";

if (comboBox1.SelectedItem != null)
{

if (comboBox1.SelectedItem.ToString() == "All")
{
extension = "*.*";
}
else
{
extension = "*" + comboBox1.SelectedItem.ToString();
}
}
else
{
// Aqui deberías asignar algún valor a extension en caso de que el combo no tenga un item seleccionado
extension = "*.*";
}

return extension;
}

private void notifyIcon1_MouseDoubleClick(object sender, MouseEventArgs e)
{

}

private void Ruta_MouseDoubleClick(object sender, MouseEventArgs e)
{
Process.Start(Ruta.Text);
}






}
}


Descarga TemFolder Cleaner:

HIDE: ON
Hidebb Message Hidden Description

Re: TempFolder Cleaner( Mi primera app con c#)

Publicado: 28 May 2011 01:31
por Pabloko
voy a echarle un ojo, os recibo con porros y alcohol en el lado oscuro!

Re: TempFolder Cleaner( Mi primera app con c#)

Publicado: 30 May 2011 03:00
por ahmed elsayed
Good Iam Comming In C# Programming its Advanced

Re: TempFolder Cleaner( Mi primera app con c#)

Publicado: 03 Jun 2011 21:11
por krsk9999
Probando.... gracias por el aporte!

Re: TempFolder Cleaner( Mi primera app con c#)

Publicado: 04 Jun 2011 23:50
por danielpz
ese programa creado, sirve para monitorear los archivos que se encuentran en la carpeta temp...

Me pregunto si se puede aser un codigo para que monitoreee en tiempo real los procesos que se estan ejecutando a tiempo real,,, es como decir crear un.. mmm Anti Hacker.. que se ejecute.. en modo silencioso y verifike si un ejecutable se abre y que ese ejecutable sea un hacker y lo sierre automaticamente??!!!!... (wuau que larga mi pregunta) :SOS:

Re: TempFolder Cleaner( Mi primera app con c#)

Publicado: 05 Jun 2011 07:15
por rafaxplayer
danielpz escribió:ese programa creado, sirve para monitorear los archivos que se encuentran en la carpeta temp...

Me pregunto si se puede aser un codigo para que monitoreee en tiempo real los procesos que se estan ejecutando a tiempo real,,, es como decir crear un.. mmm Anti Hacker.. que se ejecute.. en modo silencioso y verifike si un ejecutable se abre y que ese ejecutable sea un hacker y lo sierre automaticamente??!!!!... (wuau que larga mi pregunta) :SOS:
Hacerse seguro se puede XD ,pero yo estoy empezando con esta historia y después del 1 viene el 2 , si te ves capacitado... tira palante! ;)

Re: TempFolder Cleaner( Mi primera app con c#)

Publicado: 05 Jun 2011 07:57
por danielpz
rafaxplayer escribió:
danielpz escribió:ese programa creado, sirve para monitorear los archivos que se encuentran en la carpeta temp...

Me pregunto si se puede aser un codigo para que monitoreee en tiempo real los procesos que se estan ejecutando a tiempo real,,, es como decir crear un.. mmm Anti Hacker.. que se ejecute.. en modo silencioso y verifike si un ejecutable se abre y que ese ejecutable sea un hacker y lo sierre automaticamente??!!!!... (wuau que larga mi pregunta) :SOS:
Hacerse seguro se puede XD ,pero yo estoy empezando con esta historia y después del 1 viene el 2 , si te ves capacitado... tira palante! ;)
Mmmm interesante respuesta mi estimado fafaxplayer...., lo curioso es que las respondes sutilmente, eso me agrada, eres un dicto colega de programacion...., bueno, veremos con el tiempo que para sorpresa tuya de 4 o 5 enves de 2 o 1... :), si o no? :lol:

Re: TempFolder Cleaner( Mi primera app con c#)

Publicado: 05 Jun 2011 09:57
por Ceone
danielpz aprende a escribir o instálate un corrector ortográfico por que me parece una locura que en tres lineas metas esas cagadas.

Re: TempFolder Cleaner( Mi primera app con c#)

Publicado: 20 Ago 2011 13:23
por abood1987
thanks

Re: TempFolder Cleaner( Mi primera app con c#)

Publicado: 21 Ago 2011 09:25
por DArkore
que buena noticia , lastima que no pueda instalar VB en mi pc (un tarro :cabreado: ), pero listo para armar uno nuevo ,solo falta $$ :lol: XD

bueno sin nada ma que decir

:pc: adios XDD

Re: TempFolder Cleaner( Mi primera app con c#)

Publicado: 15 Oct 2011 21:08
por morfis
muy bueno

Re: TempFolder Cleaner( Mi primera app con c#)

Publicado: 15 Oct 2011 22:02
por mecivic
Thank you

Re: TempFolder Cleaner( Mi primera app con c#)

Publicado: 01 Ene 2012 22:25
por mpcu
thank

Re: TempFolder Cleaner( Mi primera app con c#)

Publicado: 15 Ene 2012 14:38
por bumbo
thanx

Re: TempFolder Cleaner( Mi primera app con c#)

Publicado: 17 Ene 2012 13:12
por bariza-dz
Good

Publicado: 07 Ago 2013 00:05
por Vampirgotk
Vielen Danke :friends: :friends:

Publicado: 24 Ago 2013 15:34
por Cael
observando!!

Publicado: 20 Sep 2013 03:50
por Metafunken
En cuanto tiempo te la aventaste Rafa? Me refiero al estudio del Sharp...

Saludos viejo ;)

Re: TempFolder Cleaner( Mi primera app con c#)

Publicado: 20 Sep 2013 03:51
por Metafunken
Pabloko escribió:voy a echarle un ojo, os recibo con porros y alcohol en el lado oscuro!
Espero te sobre algo para cuando llegue hasta alla :lol:

Publicado: 20 Sep 2013 07:29
por rafaxplayer
jejejej poco , todos los lenguajes tienen la misma base , aunque mi nivel es muy principiante porque lo deje , estoy muy metido en java - android ahora.