IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB.NET Discussion :

[serialport][vb.net] impossible de passer au timer


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Développeur informatique
    Inscrit en
    Mars 2003
    Messages
    201
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2003
    Messages : 201
    Par défaut [serialport][vb.net] impossible de passer au timer
    bonjour à tous,

    j'ai créer un petit programme qui me permet de recevoir un contact électrique et de le lire sur le port série.

    au début cela fonctionnait bien, mais plus je tente de faire prendre forme à mon programme, moins il répond ,... voici le code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
        Public imprime As Boolean = False
        Public minuterie As Integer = 1000
        Public port As String = "COM1"
        Private Sub SerialPort_DataReceived(ByVal sender As Object, ByVal e As System.IO.Ports.SerialDataReceivedEventArgs) Handles SerialPort.DataReceived
            If imprime = False Then
                imprime = True
                Call StartTimer()
                lb.Text = "Impression"
                Exit Sub
            Else
                Exit Sub
            End If
        End Sub
    le port série qui semble pas entrer dans mon timer mais le label avec impression s'affiche ???....mais si je lui met des msgbox("test") à chaque étape, il les fait toutes...comme si une partie de code se ferait trop vite comparé au reste...

    si vous avez des idées

  2. #2
    Membre confirmé
    Profil pro
    Développeur informatique
    Inscrit en
    Mars 2003
    Messages
    201
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2003
    Messages : 201
    Par défaut
    je me suis batis ma propre preuve, mon timer ne fonctionne pas toujours

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
        Public imprime As Boolean = False
        Public minuterie As Integer = 2000
        Public port As String = "COM1"
        Private Sub SerialPort_DataReceived(ByVal sender As Object, ByVal e As System.IO.Ports.SerialDataReceivedEventArgs) Handles SerialPort.DataReceived
            If imprime = False Then             'si le programme imprime pas
                imprime = True
                Dim connectionstring As String = "Data Source=serveur;Initial Catalog=BD;Persist Security Info=True;User ID=test;Password=1"
                'Dim connectionstring As String = "Data Source=SERVEUR;Initial Catalog=PsUnique;Integrated Security=SSPI;User ID=PSUNIQUE\ScanWebUser;Password=56jVSrTs6wsEQTAG"
                Dim impression As Integer = 1
                Using connection As New SqlConnection(connectionstring)
                    connection.Open()
                    Dim commande As SqlCommand = connection.CreateCommand()
                    commande.CommandType = Data.CommandType.StoredProcedure
                    commande.CommandText = "ImpAuto"
                    commande.Parameters.AddWithValue("@impression", impression)
                    commande.ExecuteNonQuery()
                End Using
                SerialPort.DiscardInBuffer()
                Timer.Interval = minuterie
                Timer.Start()
            Else
                MsgBox("data refusé")
            End If
        End Sub
        Private Sub Timer_Tick(ByVal sender As Object, ByVal e As System.EventArgs) Handles Timer.Tick
            Timer.Stop()
            imprime = False
        End Sub
    j'ai réduit à 2 fonction mon programme...1 réception du signal 2 quand le timer est fini dans mon timer_tick, j'avais ajouté un msgbox qui me disait quand il passait la fonction et après 2 réception, il ne passe plus dans le timer ??? a n'y rien comprendre

  3. #3
    Membre confirmé
    Profil pro
    Développeur informatique
    Inscrit en
    Mars 2003
    Messages
    201
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2003
    Messages : 201
    Par défaut
    j'aurai peut-etre dévié mon problème...j'ai enlever le timer et mis la comparaison entre l'heure (minute) d'ouverture du programme ou sa dernière utilisation et celle de la présente requête. encore plus fiable en terme de temps qu'un timer et demande 1 process de moins en général

    on test demain voir si ca marche

  4. #4
    Membre confirmé
    Profil pro
    Développeur informatique
    Inscrit en
    Mars 2003
    Messages
    201
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2003
    Messages : 201
    Par défaut
    Réussi !

    je capte l'heure à l'ouverture du programme et je la remet à jour apres utilisation et le tout fonctionne bien

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
            If DateDiff(DateInterval.Minute, Now, LastUse) <= -1 Then
    bonne journée à tous !!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [VB.Net] "Impossible de créer le handle de fenêtre"
    Par cedric_g dans le forum Windows Forms
    Réponses: 4
    Dernier message: 06/04/2006, 12h49
  2. [VS.NET] Impossible d'ouvrier le fichier ...resources
    Par lucie.houel dans le forum Visual Studio
    Réponses: 13
    Dernier message: 23/03/2006, 15h43
  3. [vb.net] Impossible de créer le composant ActiveX [win98]
    Par arnolem dans le forum Windows Forms
    Réponses: 10
    Dernier message: 12/07/2005, 12h09
  4. [VB.NET] Impossible de supp fichier affiché dans PICTUREBOX
    Par stephane93fr dans le forum Windows Forms
    Réponses: 8
    Dernier message: 14/06/2005, 17h46
  5. [VB.NET] Impossible de lire le contenu du datagrid
    Par jagdjg dans le forum ASP.NET
    Réponses: 2
    Dernier message: 05/05/2004, 21h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo