Witam,
proszę o pomoc w rozwiązaniu problemu.
mam prostą aplikację która odpytuje co 5sec. tabelę dBaseIV 2.0 (dbf)
i zapisuje wynik w datatable i niby wszystko ok
jednak po ok 2 godzinach pracy programu pojawia się błąd "Przekroczono zasoby systemu"
przeglądając procesy w menagerze zadań okazuje się że każde odpytanie powoduje że zużycie pamięci zwiększa się o ok 100K, jakby coś nie zwalniało pamięci
poniżej kod (czyżby to sterownik OLEDB to powodował?)
using System.Data.OleDb;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
DataSet dsTabele = new DataSet();
DataTable dtObecni = new DataTable();
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
timer1.Enabled = true;
}
private void timer1_Tick(object sender, EventArgs e)
{
string LancuchNorthwind = "Provider=Microsoft.Jet.OLEDB.4.0;" +
"Extended Properties=dBASE IV; Data Source=C:\\Program Files\\SystemObecni\\";
OleDbConnection PolaczNorthwind = new OleDbConnection(LancuchNorthwind);
PolaczNorthwind.Open();
string Zapytanie = "SELECT KONTROLER, PRACOWNIK, DATA, GODZINA FROM RCPOBECNI";
OleDbCommand Polecenie = new OleDbCommand(Zapytanie, PolaczNorthwind);
//Polecenie.Parameters.Add("NazwaMiasta", textBox1.Text);
OleDbDataAdapter AdapterKlientow = new OleDbDataAdapter(Polecenie);
dtObecni.Clear();
dsTabele.Clear();
AdapterKlientow.Fill(dsTabele, "Obecni");
dtObecni = dsTabele.Tables["Obecni"];
PolaczNorthwind.Close();
}
}
}