Laden...

Forenbeiträge von ratalert Ingesamt 22 Beiträge

03.06.2011 - 09:29 Uhr

sehr ihr also keine lösung in meinen bestehenden code den reconnect noch einzubauen?
oder ihn so zu verändern dass ich ihn einbauen kann?

01.06.2011 - 10:29 Uhr

vielleicht mit kurzem sleep dazwischen? irgendwie find ich nicht so die wirklich schöne lösung bei der ich nicht alles umbauen muss...

01.06.2011 - 09:30 Uhr

und einfach so geht nicht?

public void ClientWork()
{
        TcpClient client = new TcpClient();

        try
        {
            try
            {
                client.Connect(ip, port);
            }
            catch(Exception ex)
            {
                logger.ErrorFormat("client.Connect: {0}", ex.Message);
                return false;
            }

            NetworkStream ns = client.GetStream();
            byte[] buff;

            while (__bRunning)
            {
                buff = new byte[1000];
                ns.Read(buff, 0, 1000);

                string line = System.Text.Encoding.Default.GetString(buff);
                //tu was mit line...
            }

            //ns.Close();
            client.Close();
        }
        catch(Exception e)
        {
            //Reconnect?
            client.Close();
            client = null;

            ClientWork();  <<----???

            return false;
        }
}
31.05.2011 - 17:08 Uhr

bedeutet ich muss an die stelle die ich im codeausschnitt schon mit //Reconnect?? markiert habe?

würdet ihr dann eine Rekursion an der Stelle machen oder wie das Wiederverbinden lösen?

31.05.2011 - 16:10 Uhr

ich kann aber nicht entscheiden wie die pakete aussehen die ich empfange. darauf habe ich keinen einfluss...

31.05.2011 - 15:53 Uhr

würdest du dann einen extra (zb workerthread) machen der alle offenen verbindungen "pingt" und wenn eine nicht antwortet nach 10 sek dann diese zumacht und neu öffnet?

31.05.2011 - 15:19 Uhr

ich hab mittlerweile nun was von polling gelesen. am besten in einem eigenen thread der immer wieder überpüft ob die verbindung noch am leben ist.

wir würde man das am besten realisieren?

31.05.2011 - 14:40 Uhr

Hallo zusammen,

wie ist der beste Weg eine automatische Reconnect Funktionalität bei einem TcpClient zu implementieren für den Fall dass die Verbindung abbricht (Netzwerkkabel gezogen, Server aus, etc)

Hier ein Aussschnitt aus meinem derzeigen code:


public void ClientWork()
{
        TcpClient client = new TcpClient();

        try
        {
            try
            {
                client.Connect(ip, port);
            }
            catch(Exception ex)
            {
                logger.ErrorFormat("client.Connect: {0}", ex.Message);
                return false;
            }

            NetworkStream ns = client.GetStream();
            byte[] buff;

            while (__bRunning)
            {
                buff = new byte[1000];
                ns.Read(buff, 0, 1000);

                string line = System.Text.Encoding.Default.GetString(buff);
                //tu was mit line...
            }

            //ns.Close();
            client.Close();
        }
        catch(Exception e)
        {
            //Reconnect?
            client.Close();
            client = null;

            return false;
        }
}

02.08.2010 - 22:54 Uhr

Hallo zusammen,

ich bin auf der Suche nach einer Möglichkeit den Eingangspegel von Mic und diversen Line-In Eingängen zu verändern. Neben der Lautstärke wäre auch Balance wichtig zu kalibieren.

Leider kann ich nur zig Lösungen finden wie man den Ausgangspegel verändert aber keine davon lässt sich auf Eingangsdevices anwenden. Gibt es evtl. mit DirectSound eine Möglichkeit? Wenn ja, wie sieht diese aus?

Danke schonmal!

21.04.2010 - 00:20 Uhr

geht erstmal wirklich nur um die anzeige

20.04.2010 - 16:54 Uhr

Hallo zusammen,

ich versuche gerade den eingehenden Ton auf meiner Soundkarte, der der über Line-in bzw. Mic kommt, zu visualisieren.
Ein entsprechendes Control habe ich gebastelt, das einfach einen balken Höher oder niedriger zeichnet ähnlich dem Equalizer an einer Stereoanlage.

Nun möchte ich das ding immer im zb. Sekundentakt (Timer) mit der Max-Amplitude füttern. Leider finde ich keine lib oder dergleichen mit der ich das einfach vom Line-In abgreifen kann. Für Line-Out scheint es ein paar (sehr umfangreiche - zu umfangreiche) Lösungen auf Codeproject zu geben.

Hat jemand vielleicht eine Idee?

Grüße

13.04.2010 - 14:30 Uhr

ok klingt gut. wenn's nicht zuviel aufwand ist kannst du mir evtl mal ein kleines beispiel zaubern? nur so als mini projekt ohne viel inhalt damit ich das erweitern kann so wie ich's brauch?

13.04.2010 - 13:43 Uhr

ich bin ehrlichgesagt nicht so der c# profi und mit usercontrols kenn ich mich auch nicht so wirklich aus. wie geht man dass denn an dass man ein panel auf dem label und buttons sitzen als listview eintrag setzt. und dann auch noch mit dem focus von jeder listview row entsprechend arbeitet?

13.04.2010 - 13:22 Uhr

auf codeproject habe ich schon gesucht - leider ohne erfolg.

wie krieg ich denn das schön und auch schnell gebastelt?

13.04.2010 - 11:40 Uhr

Hallo zusammen,

ich bräuchte einen Dialog der ähnlich dem Addon-Dialog in Firefox aussieht. Weiss wer da ein fertiges control das man so verwenden könnte oder hat wer Tips wie man es angehen könnte?

Brauchte das ganze für ein "Software Center" in dem verschiedene Produkte angezeigt werden.

Hab mal einen Screenshot von dem Dialog angehängt...

Grüße,
ratalert

17.03.2010 - 11:49 Uhr

achso,alles klar. danke

17.03.2010 - 11:38 Uhr

Hallo zusammen,

ich bekomme beim Regex.Match eine seltsame Exception bei dem folgenden Fall:


string nr = "69126010";
string expression1 = "6912601?";
string expression2 = "691260??";
string expression3 = "69126???";

Match m = Regex.Match(nr, expression1); // <-keine Exception
Match m = Regex.Match(nr, expression2); // <-keine Exception
Match m = Regex.Match(nr, expression3); // <-Exception!

der genaue Exception lautet:

An unhandled exception of type 'System.ArgumentException' occurred in System.dll

Additional information: "69126???" wird analysiert - Geschachtelter Quantifizierer ?.

Hoffe es kann wer was damit anfangen.

Viele Grüße & danke schonmal.

16.06.2009 - 16:08 Uhr

danke! jetzt hab ich das auch kapiert 😉

Die Zeichnung der Kreise kriegt man nicht noch smoother oder?

16.06.2009 - 15:41 Uhr

ok, danke für die Rückmeldung.

Wie soll ich das machen mit der Klasse? Eine Klasse für den Button und dort hinein auch die OnPaint?

Evtl. kannst du mir ja ein mini demo projekt anlegen - würde mir sehr helfen.

16.06.2009 - 15:05 Uhr

Naja ich habs jetzt folgendermaßen gemacht:

public Form1()
        {
            InitializeComponent();

            this.button1.Text = "";
        }

        private void button1_Paint(object sender, PaintEventArgs e)
        {
            Graphics g;

            base.OnPaint(e);

            int iRadius = 20;

            g = e.Graphics;

            g.DrawEllipse(new Pen(Color.Black),
                     210 / 2 - iRadius,
                     50 / 2 - iRadius,
                     2 * iRadius,
                     2 * iRadius);

            g.FillEllipse(new SolidBrush(Color.Yellow),
                     210 / 2 - (iRadius - 1),
                     50 / 2 - (iRadius - 1),
                     2 * (iRadius-1),
                     2 * (iRadius-1));


            g.DrawString("Label 1",
                          new Font("Arial", 12, FontStyle.Bold),
                          Brushes.Black,
                          50 / 2 - iRadius, 50 / 2 - iRadius);

            g.DrawString("Label 2",
                          new Font("Arial", 8, FontStyle.Bold),
                          Brushes.Black,
                          52 / 2 - iRadius, 100 / 2 - iRadius);

            g.DrawString("2",
                          new Font("Arial", 18, FontStyle.Bold),
                          Brushes.Black,
                          229 / 2 - iRadius, 63 / 2 - iRadius);
        }

Nun weiss ich leider nicht wie ich den Kreis zum Button machen kann. Bzw. hätte ich dabei einen Button nehmen sollen und diesen darauf zeichen?

16.06.2009 - 13:44 Uhr

danke für den Hinweis was die performance betrifft.

Die Zeichnlogik in der OnPaint ist aber garnicht so einfach die ich dazu brauche...

16.06.2009 - 11:39 Uhr

Hallo zusammen,

ich brauche ein ganz spezielles Control. Der Button soll zwei Label und eine Art zweiten Button drauf haben. Im Anhang ein kleines Paint-Gemälde davon.

Wenn ich das richtig sehe ist ein Custom Control nicht was ich hier brauche, da ich nicht bestehende Controls wie zb. ein Textfeld und einen Button gruppieren und als eines verwenden will sondern da ich etwas neues brauche.

Da ich aus der MFC-Ecke komme vermute ich jetzt dass ich die OnPaint Methode eines Buttons überschreiben muss und dort andere Controls reinzeichnen muss. Wie soll das ganze von statten gehen?

Danke schonmal für die Hilfe.

Viele Grüße,
ratalert