Witam, zwiesilem sie na petli i zapisywaniu.
private static void Zapisywacz()
{
MojaKlasa okienko = new MojaKlasa();
String plik = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);
plik = plik + @"\jakisFolder\";
if (!Directory.Exists(plik))
{
Directory.CreateDirectory(plik);
}
string sciezka = (plik + "jakisPlik.txt");
if (!File.Exists(sciezka))
{
using (StreamWriter zapisz = File.CreateText(sciezka)) { }
}
while (true)
{
if (okienko.GetActiveWindowTitle().Contains("") == true)
{
using (StreamWriter zapisz = File.AppendText(sciezka))
{
zapisz.Write(okienko.GetActiveWindowTitle());
Thread.Sleep(60);
}
}
}
}
Petla musi byc aby program dzialal caly czas , ale gdy uruchamiam np. Moj Komputer, to zostaje to zapisywane setki razy do pliku. Gdy dam break-a to automatycznie koncze dzialanie programu jako, ze przerywam while-a.
Otwierajac folder chce aby zostalo to zapisane do pliku raz, nastepnie przechodzac do innego folderu lub programu, program zapisuje nastepne okienko, ale ponownie tylko raz, caly czas dzialajac.
Bawilem sie rowniez z String.Compare starajac sie przypisac obecna nazwe okna do zmiennej, ale bez skutku.