Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Problem med vb-timers

Postades av 2003-08-15 12:33:18 - Calle Mellergårdh, i forum api-windows, Tråden har 5 Kommentarer och lästs av 1241 personer

Har ett problem med en multimediatimer. Timern skapas av ett API (timeSetEvent)
Till skillnad från vb standard timer så är denna timer lite stabilare och går fortare. Problemet är bara att när windows avbryter timern så försöker den köra ikapp för att inte förlora tid.
Jag gjorde ett test med att mäta antal ticks mellan två timer-events, och ibland blir den noll, vilket gör att koden som jag skrivit i timer-eventet ballar ur ibland.
Trodde jag kunde mäta ticksen och helt enkelt avbryta timereventet om ticken var 0 men felet uppstår tydligen innan jag kan mäta 0.

Är den någon som har några idéer eller kanske en helt annan timer-lösning??

Hälsningar en som e trött på dåliga VB-timers
/Calle


Svara

Sv: Problem med vb-timers

Postades av 2003-08-15 12:42:32 - Oskar Johansson

Du kan inte skicka med lite kod?


Svara

Sv: Problem med vb-timers

Postades av 2003-08-15 14:03:10 - Calle Mellergårdh


Visst, här är ett urdrag:

'TimerProc' är den rutinen som Multimediatimern kallar på.
'WriteDongleFunction' skriver till parallellporten

Sub TimerProc(ByVal uID As Long, ByVal uMsg As Long, ByVal dwUser As Long, ByVal dw1 As Long, ByVal dw2 As Long)

Dim I As Integer
Dim R As Integer
Dim W As Boolean
Dim TimerError As Boolean
Dim WriteDMX As Boolean
Dim CurrTime As Long
Dim TimeDiff As Long


'---------------------------------------------------
'**** Calculate time elapsed since last timer-event
'---------------------------------------------------
CurrTime = GetTickCount&
TimeDiff = CurrTime - OldTime
OldTime = CurrTime

'if time elapsed between two timer-events is less
'than 20ms a flag is raised
If TimeDiff < 20 Then
TimerError = True
End If


'-------------------------------------------------------------
'******* Read and write channeldata to/from DMXDongle *******
'-------------------------------------------------------------

If DongleConnected And (Not TimerError) Then
'only read input if selected printerport is bidirectional
If BiDirPort Then
'set parameters and address for inputmode
I = WriteDongleFunction(False, 0, False, False, True, False, True, False, DongleTimeout)

For R = 0 To 255
I = ReadDongleData(DMXInData(R), DongleTimeout)
If I <> 0 Then
MsgBox "DMXDongle Error! ErrCode=" & Str(I), vbCritical
W = ConnectDongle(False)
Exit Sub
End If
Next R
End If

'write dmx-values to dongle only if nessecary
If WriteDMX Then
'set parameters and address for outputmode
I = WriteDongleFunction(False, 0, False, False, False, False, True, False, DongleTimeout)

For R = 0 To 511
I = WriteDongleData(DMXOutData(R), DongleTimeout)
If I <> 0 Then
MsgBox "DMXDongle Error! ErrCode=" & Str(I), vbCritical
W = ConnectDongle(False)
Exit Sub
End If
Next R
End If
End If

End Sub


Svara

Sv: Problem med vb-timers

Postades av 2003-08-15 16:02:54 - Sven Åke Persson

Vad vill du ha för minsta Interval ?


Svara

Sv: Problem med vb-timers

Postades av 2003-08-15 17:03:37 - Calle Mellergårdh

Minsta interval...typ 40ms


Svara

Sv: Problem med vb-timers

Postades av 2003-08-15 19:31:04 - Sven Åke Persson

Då rekommenderar jag FreeWare Active OCX RSTimer
Kan hämtas här, finns på flera ställe sök Goggle "RSTimer"
http://www.codelines.com/actxport.htm

Den kan du köra på 10 ms utan problem. Man kan köra den ner till 1 ms.


Svara

Nyligen

  • 18:42 Hvor finder man håndlavede lamper
  • 18:41 Hvor finder man håndlavede lamper
  • 16:36 Allt du behöver veta om keramiskt
  • 16:14 Vem anlitar man egentligen när tak
  • 16:14 Vem anlitar man egentligen när tak
  • 16:13 Vem anlitar man egentligen när tak
  • 11:52 Noen erfaring med uttak hos Mostbe
  • 11:51 Noen erfaring med uttak hos Mostbe

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 570 574
27 958
271 741
5 815
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies