Suchergebnisse

Suchergebnisse 1-9 von insgesamt 9.

  • Benutzer-Avatarbild

    Hallo Community, es geht mal wieder um Invoke und Delegate. Ich, als VB6 Umsteiger, verstehe den Zusammenhang von Invoke, Delegate und Thread leider noch nicht so richtig. Es gibt sehr viele Beiträge im Netz zu diesem Thema, aber die sind irgendwie doch jedes Mal etwas anders, was mich nur noch mehr verwirrt. Es muss doch irgendwo einen Beitrag geben, der für einen „Unwissenden“ verständlich macht, (gerne auch anhand von Beispielen) wann und wie Delegate und Invoke bei einem anderen Thread einzu…

  • Benutzer-Avatarbild

    Hallo RodFromGermany Vielen Dank für deine schnelle Antwort. Meine Frage Nr.2 ist damit beantwortet, bleibt also noch die Nr.1. Wenn ich dein Vorschlag richtig verstehe, werden alle Daten aus der SerialPort1_DataReceived Sub in das Label1 auf dem Formular geschrieben, egal welchen Button ich anklicke. Die SerialPort1_DataReceived Sub wäre dann auch wieder im Formular. Ich würde aber die Form1.vb der Übersicht wegen nicht gerne so „voll stopfen“ und habe deswegen unter anderen diese Sub in ein Mo…

  • Benutzer-Avatarbild

    Hallo zusammen Ich habe jetzt meine ausgelagert DataReceived Sub wieder in das Formular gebracht und sie nach dem Vorschlag von RodFromGermany abgewandelt. Wie bekomme ich aber jetzt die, aus der Schnittstelle gelesenen, Daten in das jeweilige Label? Da ich noch ein „Frischling“ in Sachen VB Programmierung bin, kann ich meine Probleme möglicherweise nicht so verständlich beschreiben und habe hier mal mein gekürztes Projekt. Ist leider immernoch sehr viel. @ ZaporiZed wie stelle ich das hier mit …

  • Benutzer-Avatarbild

    @RodFromGermany Jedem Button Steuerelement ist optisch ein Label Steuerelement zugeordnet. Beispiel: Auf meiner Form befindet sich der Button „Button1“. Rechts neben diesem Button ist das Label Steuerelement „Label1“ angeordnet. Dort sollte die Antwort auf die von Button1 gesendete Abfrage angezeigt werden. Der RXD String ist aus einem alten VB6 Projekt übernommen. Das zu sendende als auch das empfangene Telegramm von der seriellen Schnittstelle bestehen aus 6 Bytes (1 Control Byte, 2 Address By…

  • Benutzer-Avatarbild

    @VaporiZed Der Vorschlag funktioniert, ist aber wegen den vielen Buttons mit sehr vielen Codezeilen verbunden. Die Label Zuweisung müsste ich ja dann mit Select Case geschehen. Aber abgesehen davon ist der Vorschlag super, vielen Dank. @RodFromGermany Ja, so habe ich mir das vorgestellt. Ich bekommen den ReadTimeout nicht zum feuern. Obwohl ich versuchsweise den SerialPort1.ReadTimeout = 10 gesetzt habe, wird kein ReadTimeout gefeuert wenn der Empfangspuffer leer bleibt. Damit ich aus der Do – L…

  • Benutzer-Avatarbild

    @VaporiZed “Option Explicit On” und “Option Strict On” sind bei mir immer im Projekt aktiviert. In Zeile 5 bin ich dann wohl wieder in die VB6 Syntax gefallen. Deinen Bericht über die Exceptions habe ich zur Kenntnis genommen und versuche es zu befolgen. Vielen Dank für die Empfehlungen zu meine Function. @RodFromGermany Ja, es handelt sich um eine RS232. Das habe ich schon versucht. Es wird irgendwie kein TimeOut gefeuert. Ich weis momentan nicht wo der Fehler liegen könnte.

  • Benutzer-Avatarbild

    Hallo RodFromGermany Ich habe in der “SendCommandWait4Answer” Funktion (s.o.) auch schon versuchsweise die Zeile 25 gegen Catch ex As TimeoutException ausgetauscht. War aber auch nicht erfolgreich. Ich habe noch eine eher allgemeine Frage. Diese Art über den seriellen Port zu kommunizieren ähnelt stark dem, was ich von VB6 her kenne. Wenn man im Internet nach „.Net“ und „serialport“ sucht, bekommt man nur Beispiele mit Delegate und Invoke, so als ob es keine andere Möglichkeit der Port Kommunika…

  • Benutzer-Avatarbild

    @RodFromGermany Es soll schon unmittelbar nach dem Senden eines Befehls unmittelbar eine Antwort abgeholt werden. Nun kann es vorkommen, dass das angeschlossene Steuergerät aus irgendwelchen Gründen nicht antwortet. Das möchte ich dem Benutzer, mit einer "Time Out" Message, dann mitteilen. Desweiteren könnte ich in der Function SendCommandWait4Answer in Zeile 19 und 21 den Schleifenzähler entfallen lassen. Die MessageBox in Zeile 23 habe ich nur für mich zu Debug- Zwecken eingesetzt, diese wird …

  • Benutzer-Avatarbild

    @RodFrom Germany Das werde ich machen. Vielen Dank an alle die in diesem Thema mirgewirkt haben. Ihr habt mir sehr bei meinem Problem geholfen.