Wenn es um eine absolut exakte Zeitmessung geht, dann sollten Sie sich die API-Funktionen "QueryPerformanceFrequency" und "QueryPerformanceCounter" einmal zu Gemüte führen. Mit diesen beiden Funktionen lässt sich die Zeit nicht im Millisekundenbereich messen, sondern mit einer Genauigkeit einer 10.000stel Sekunde! Option Explicit ' zunächst die benötigten API-Deklarationen Private Declare Function QueryPerformanceFrequency Lib "kernel32" ( _ lpFrequency As Currency) As Long Private Declare Function QueryPerformanceCounter Lib "kernel32" ( _ lpPerformanceCount As Currency) As Long ' exakte Zeitmessung Public Function TimerEx() As Currency Static nFreq As Currency If nFreq = 0 Then QueryPerformanceFrequency nFreq End If Dim nTimer As Currency QueryPerformanceCounter nTimer TimerEx = nTimer / nFreq End Function Ein kleines Beispiel: Dim nTime As Single nTime = Timer() List1.AddItem "ein neuer Eintrag" Label1.Caption = CStr(Timer - nTime) & " Sekunden" Als Ergebnis kann hier - je nach Prozessorleistung - durchaus ein negativer Wert angezeigt werden, was ja eigentlich gar nicht sein kann Die Zeitmessung mit der neuen TimerEx-Funktion hingegen, gibt das richtige Ergebnis zurück: Dim nTime As Currency nTime = TimerEx() List1.AddItem "ein neuer Eintrag" Label1.Caption = CStr(TimerEx() - nTime) & " Sekunden" Dieser Tipp wurde bereits 27.302 mal aufgerufen. Voriger Tipp | Zufälliger Tipp | Nächster Tipp
Anzeige
Diesen und auch alle anderen Tipps & Tricks finden Sie auch auf unserer aktuellen vb@rchiv Vol.6 (einschl. Beispielprojekt!) Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! - nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten - Symbol-Galerie mit mehr als 3.200 Icons im modernen Look Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m. |
sevISDN 1.0 Überwachung aller eingehender Anrufe! Die DLL erkennt alle über die CAPI-Schnittstelle eingehenden Anrufe und teilt Ihnen sogar mit, aus welchem Ortsbereich der Anruf stammt. Weitere Highlights: Online-Rufident, Erkennung der Anrufbehandlung u.v.m. Tipp des Monats Mai 2024 Hermann Röttger Wochentage eines Datumsbereichs ermitteln Wochentage eines Datumsbereichs ermitteln, optional mit Feiertagsberechnung sevZIP40 Pro DLL Zippen und Unzippen wie die Profis! Mit nur wenigen Zeilen Code statten Sie Ihre Anwendungen ab sofort mit schnellen Zip- und Unzip-Funktionen aus. Hierbei lassen sich entweder einzelnen Dateien oder auch gesamte Ordner zippen bzw. entpacken. |
||||||||||||||||
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. |