Fonction DateAdd sur Win XP dans VB 6.0 [Résolu]

Messages postés
17
Date d'inscription
mardi 27 juillet 2004
Statut
Membre
Dernière intervention
8 décembre 2008
- - Dernière réponse : rami3b
Messages postés
17
Date d'inscription
mardi 27 juillet 2004
Statut
Membre
Dernière intervention
8 décembre 2008
- 1 août 2006 à 03:00
bonjour
j'ai programmé une petite application en "vb6.0" destinée a etre utilisé sur un PC equipé de WINDOWS XP.

Sur windows 98, tout va bien mais quand je l'ai essayé sur winsows XP, il y a eu un problème:
-l'application est simple:un textbox sur lequel on met une heure :"hh:mm",puis on click sur "enregistrer",à cet heure le PC emet un bip, puis apres 3 seconde il emet un autre BIP.
-Le problème sur XP: quand l'heure commence par un "1" comme "11:00", tout va bien, mais quand elle commence par "0" par exemple "06:00" ou "07:15", le deuxième bip n'est pas émi.
voici le code
----------------------------------------------------------------
Dim tps As Date
Private Sub cmdexit_Click()
Unload Me
End Sub
------------------------------
Private Sub Form_Load()
Dim STR_texte As String
Timer1.Enabled = True
Open "alarm.txt" For Input As #1
Input #1, STR_texte
Txt1.Text = STR_texte
Close #1
End Sub
------------------------------------

Private Sub cmdsave_Click()
Dim INT_For1 As Integer
tps = Txt1.Text
Open "alarm.txt" For Output As #1
    Print #1, Txt1.Text
Close #1
End Sub
------------------------------
Private Sub Timer1_Timer()
   If Time$ = tps Then
    Beep
   End If
   If Time$ = DateAdd("s", 3, tps) Then
    Beep
   End If
End Sub
--------------------------------------------------------------------
merci d'avance pour vos reponses
Afficher la suite 

3 réponses

Meilleure réponse
Messages postés
3140
Date d'inscription
vendredi 14 mai 2004
Statut
Membre
Dernière intervention
11 mars 2019
21
3
Merci
Salut,

comparaison String avec Date c'est pas très bon
transforme le Time en Date avant de comparer et le tour est joué


Private Sub Timer1_Timer()

   Dim dt As Date

   dt = Time$

   If dt = tps Then Beep

   If dt = DateAdd("s", 3, tps) Then  Beep

End Sub

Daniel

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 198 internautes nous ont dit merci ce mois-ci

Commenter la réponse de Gobillot
Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
31
0
Merci
Avec VB6 et sous XP Pro Sp2, ça marche, j'ai bien les 2 bips.

Vérifie les chaines que te renvoie Time$ et DateAdd sous XP. Peut-etre qu'en fonction des paramètres régionnaux 1 des deux zéro du début ait été viré.

Sevyc64  (alias Casy)<hr align="center" size="2" width="100%" /><stron></stron># LE PARTAGE EST NOTRE FORCE #
Commenter la réponse de cs_casy
Messages postés
17
Date d'inscription
mardi 27 juillet 2004
Statut
Membre
Dernière intervention
8 décembre 2008
0
Merci
merci pour votre aide

tous amis
Commenter la réponse de rami3b