C# - Project-kereső alkalmazás készítése

forráskód letöltése
Készítünk egy alkalmazást, mely segítségével C# project-eket kereshetünk egy megadott könyvtárban, valamint annak alkönyvtáraiban. A megtalált sln állományokat megjelenítjük egy ListBox-ban. Ha valamelyik elemre duplán kattintunk, megnyílik a Visual Studio .NET és betöltődik az adott project.
A project-keresés algoritmusát a ScanDir metódusban programozzuk le.
private void ScanDir(string dir)
Amennyiben a checkBox1 objektum be van jelölve, ennek a függvénynek rekurzív módon kell működnie.
A keresést a dir paraméterben kapott könyvtárban kezdjük. A kereséshez a System.IO.Directory osztályt használjuk fel.
Lekérdezzük a dir paraméterben kapott könyvtár alkönyvtárait.
string[] directories = Directory.GetDirectories(dir);
Ha szükséges, rekurziót hajtunk végre.
if (checkBox1.Checked)
  for (int i = 0; i < directories.Length; i++)
    ScanDir(directories[i]);
Egy adott könyvtár állományait a GetFiles függvénnyel kérdezhetjük le.
string[] files = Directory.GetFiles(dir);
Ha olyan állományt találunk, melynek kiterjesztése sln, feljegyezzük azt a ListBox1-be.
for (int i = 0; i < files.Length; i++)
  if (Path.GetExtension(files[i]) == ".sln")
    listBox1.Items.Add(files[i]);
Ha meg akarjuk nyitni a Visual Studio.Net-et és be akarjuk tölteni a kiválasztott project-et, akkor azt az alábbi módon tehetjük meg.
System.Diagnostics.Process.Start('"' + listBox1.Items[listBox1.SelectedIndex].ToString() + '"');
A System.Diagnostics.Process.Start függvénynek elegendő megadnunk a megnyitandó állomány elérési útját és nevét. Az operációs rendszer tudja, hogy az adott állományhoz milyen alkalmazás van hozzárendelve.