vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
sevDataGrid - Gönnen Sie Ihrem SQL-Kommando diesen krönenden Abschluß!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
Merfaches senden verhindern 
Autor: Stefan1510
Datum: 10.07.07 10:55

Hallo an alle.... Ich bin immer noch dabei mein Interface zu schreiben und es sind noch eineige Sachen, die ich nicht loesen kann oder wo man die herangehensweise betrachten kann.
Ich schicke Daten an einen Client, um das senden "sauber" zu beenden, habe nachdem ich auf den sendKnopf gerueckt habe erstmal den Knopf disabled, sind die Daten gesendet, schalte ich ihn wieder frei. Wenn ich jetzt einmal den Button drueck, kommen die Daten alle an der richtigen Stelle am Server an, jedoch beim mehrmaligen nachtriggern werden nicht die zu senden Werte im mein Empfangsarray gespeichert. Wieso kann das sein, normalerweise sollte der Button erst nach Ende der Anweisung wiede aktiv werden. Wie leicht zu erkennen ist, ist der Code sehr einfach dafuer aber viel zu lang, leider habe ich noch kleine Moeglchkeit gefunden, den Texboxname in einer Schleifenanwendung zu veraendern.

Noch eine Sache wuerde ich eleganter loesen wollen, es werden nicht immer gleich viele Daten gesendet, ich wuerde das am liebsten mit einer message machen, die immer bei jedem senden geschickt wird und dem gegenueber verraet was als naechste alles kommen wird. Eine Moeglxihkeit waere vielleicht eine zeitliche Verzoegerung einzubauen, erst immer die Message (Empfaenger kann sich drauf einstellen, evt. Handshake) und dann die Daten.


Noch eine Uebelegung, wenn ich auf ein Bit reagieren will, kann man das vielleicht am besten mit einem Event, wenn das Bit true ist, koennte man ein Event ausloesen. Das dann irgendwas macht.
Wenn da jemand eine Loesung/ Vorschlaege kennt, waere ich fuer jeden Tipp dankbar....

Stefan


Das soll meine Strucktur werden
Structure structsend
 
    Dim message As Byte
 
    Dim steuerbyte As Byte
    'steuerbyte.[0]// homing
    'steuerbyte.[1]// start
    'steuerbyte.[2]// stopp
 
    Dim set_pos As Int32
    Dim set_speed As Int32
 
 
 
    Dim HoleAX() As Int16
    Dim HoleAY() As Int16
    Dim HoleBX() As Int16
    Dim HoleBY() As Int16
 
End Structure
 
Structure structreceive
 
    Dim message As Byte
 
    Dim statusbyte As Byte
    'steuerbyte.[0]// homing
    'steuerbyte.[1]// start
    'steuerbyte.[2]// stopp
 
    Dim is_pos As Int32
    Dim is_speed As Int32
 
End Structure
Das ist mein Click

    Private Sub bt_set_Click(ByVal sender As System.Object, ByVal e As _
      System.EventArgs) Handles bt_set.Click
 
        bt_set.Enabled = False
 
        ' get position and velocity from the texbox
        send.set_pos = Convert.ToInt32(txt_setpos.Text)
        send.set_speed = Convert.ToInt32(txt_setspeed.Text)
 
 
 
        Try
            If txt_ah1x.Modified Then
                send.HoleAX(0) = Convert.ToInt16(txt_ah1x.Text)
            Else
                send.HoleAX(0) = 0
            End If
        Catch ex As Exception
            MsgBox(ex.Message, MsgBoxStyle.Information)
 
        End Try
        Try
            If txt_ah2x.Modified Then
                send.HoleAX(1) = Convert.ToInt16(txt_ah2x.Text)
            Else
                send.HoleAX(1) = 0
            End If
 
        Catch ex As Exception
 
        End Try
        Try
            If txt_ah3x.Modified Then
                send.HoleAX(2) = Convert.ToInt16(txt_ah3x.Text)
            Else
                send.HoleAX(2) = 0
            End If
 
        Catch ex As Exception
 
 ..........insgesamt 48 mal convert
 
 
 
        ' is an Value in the Textbox
        'write in the stream
        my_writer.Write(send.message)
        my_writer.Write(send.steuerbyte)
 
        my_writer.Write(send.set_pos)
        my_writer.Write(send.set_speed)
 
        my_writer.Write(send.HoleAX(0))
        my_writer.Write(send.HoleAX(1))
        my_writer.Write(send.HoleAX(2))
        my_writer.Write(send.HoleAX(3))
        my_writer.Write(send.HoleAX(4))
        my_writer.Write(send.HoleAX(5))
        my_writer.Write(send.HoleAX(6))
        my_writer.Write(send.HoleAX(7))
        my_writer.Write(send.HoleAX(8))
        my_writer.Write(send.HoleAX(9))
        my_writer.Write(send.HoleAX(10))
        my_writer.Write(send.HoleAX(11))
 
...... insgesamt 48 mal write
        my_writer.Flush()
 
        bt_set.Enabled = True
 
 
    End Sub
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Merfaches senden verhindern672Stefan151010.07.07 10:55

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel