[C#] Multithreading Windows Forms

Noxxxon

Grünschnabel
Hallo!

Ich möchte gerne in C# ein Programm schreiben, welches Daten aus einer XML ausliest. Soweit kein Problem.. Allerdings möchte ich, dass das Programm direkt minimiert im System Tray gestartet wird. Dass das Programm generell im Task abgelegt wird, bekomme ich hin, allerdings muss das Programm ja die Daten aus der XML auslesen und gleichzeitig minimiert werden.

Mein erster Einfall dazu waren Threads. Bloß bin ich in Sachen Threads nicht wirklich fit, weshalb ich mir das HowTo von Galileo Computing zu Visual C# 2005 durchgelesen habe. Nun bekomme ich allerdings die Fehlermeldung, dass das Programm nicht von einem Thread minimiert werden kann, da es bereits von einem Thread genutzt wird.

Ich hoffe ihr könnt mir helfen.. Danke im voraus!

Code:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Xml;
using System.Data.SqlClient;
using System.Threading;

namespace StreamStatistik
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            
            ThreadStart del;
            del = new ThreadStart(MyProcedure);
            Thread myFirstThread = new Thread(del);

            myFirstThread.Start();
            
            // Programmcode..
        }
        
        public static void MyProcedure()
        {
            Form1.ActiveForm.Hide();
        }

    }
}

Muss das so ungefähr?
 
Macht die Anwendung nichts anderes als das XML auszulesen? Dann brauchst du grundsätzlich keinen eigenen Thread dazu. Einfach minimieren und das Auslesen starten.
 
Naja, es liest Daten aus das XML und schreibt diese in eine SQL Server Datenbank. Hab's schon! Danke noch mal..
 
Zuletzt bearbeitet:
Zurück