• Vui lòng đọc nội qui diễn đàn để tránh bị xóa bài viết
  • Tìm kiếm trước khi đặt câu hỏi

Các Hàm đo thời gian

Các thủ thuật liên quan đến xử lý chuỗi và thời gian
User avatar
truongphu
VIP
VIP
Posts: 4764
Joined: Sun 04/11/2007 10:57 am
Location: Cam Đức, Khánh hòa
Has thanked: 14 times
Been thanked: 519 times

Các Hàm đo thời gian

Postby truongphu » Sat 16/05/2009 6:18 pm

Tên bài viết: Các Hàm đo thời gian
Tác giả: truongphu
Cấp độ bài viết: Chưa đánh giá
Tóm tắt: Các Hàm đo thời gian, đặc biệt với Function rdtsc



Các Hàm đo thời gian

Trong VB6, ta hay dùng các hàm đo thời gian sau:

* GetTickCount: Hàm trả về số mili-giây từ khi hệ điều hành làm việc
(độ phân giải đến 16 mili-giây)

Private Declare Function getTickCount Lib "kernel32" Alias "GetTickCount" () As Integer

* timeGetTime: Hàm trả về số mili-giây từ khi hệ điều hành làm việc
(độ phân giải đến 1mili-giây), đương nhiên tốt hơn GetTickCount

Private Declare Function timeGetTime Lib "winmm.dll" () As Integer

* QueryPerformanceCounter: kết quả với độ phân giải dưới mili-giây rất nhiều

Private Declare Function QueryPerformanceCounter Lib "kernel32" (lpPerformanceCount As LARGE_INTEGER) As Long

* rdtsc: kết quả với độ phân giải dưới mili-giây rất nhiều. Cần có file csRdtsc.dll đính kèm

Private Declare Function rdtsc Lib "csRdtsc.dll" () As Currency

Sau đây là Code minh họa và Project đính kèm:

Code: Select all

  1. Private Declare Function rdtsc Lib "csRdtsc.dll" () As Currency
  2. Private Declare Function GetTickCount& Lib "kernel32" ()
  3. Private Declare Function timeGetTime Lib "winmm.dll" () As Long
  4.  
  5. Private Type LARGE_INTEGER
  6.     LowPart As Long
  7.     HighPart As Long
  8. End Type
  9. Private Declare Function QueryPerformanceCounter Lib "kernel32" (lpPerformanceCount As LARGE_INTEGER) As Long
  10. Private Declare Sub CopyMemory Lib "kernel32.dll" Alias "RtlMoveMemory" (Destination As Any, Source As Any, ByVal Length As Long)
  11.  
  12. Private Function LargeIntToCurrency(liInput As LARGE_INTEGER) As Currency
  13.     CopyMemory LargeIntToCurrency, liInput, LenB(liInput)
  14.     LargeIntToCurrency = LargeIntToCurrency * 10000
  15. End Function
  16.  
  17. Private Sub Command1_Click()
  18. Dim xx As LARGE_INTEGER
  19. List1.AddItem rdtsc
  20. List2.AddItem GetTickCount
  21. List3.AddItem timeGetTime
  22. QueryPerformanceCounter xx
  23. List4.AddItem LargeIntToCurrency(xx)
  24. End Sub
Attachments
Cac Hàm Thoi Gian.rar
(17.31 KiB) Downloaded 1070 times


o0o--truongphu--o0o

.........
Ghé thăm:
Chuyện Linh Tinh

Khai Nguyen
Posts: 4
Joined: Sat 10/08/2013 9:47 pm
Has thanked: 11 times

Re: Các Hàm đo thời gian

Postby Khai Nguyen » Thu 13/02/2014 11:04 pm

Bác Trường Phú và cả nhà làm ơn cho mình hỏi : Thông thường cứ gần tết là mọi người lại thiết kế lịch để treo trong nhà . Vậy các Bác có chương trình đã lập trình rồi hoặc hướng dẫn cách lập trình (= Access,Visuabasic ....) để khi cần chỉ việc in ra lịch có cả ngày dương và âm kèm theo ,ví dụ như chương trình lịch trên Desktop của Phan Hải Tú .....không , làm ơn chia sẻ cho mọi người tham khảo được không ?
Thanks Các Bác nhìu nhìu nhé !
Lâu nay mới có thời gain lên Diễn Đàn , xin chào tất cả nhà mạnh khỏe , phát đạt !
Khải Nguyên .

User avatar
truongphu
VIP
VIP
Posts: 4764
Joined: Sun 04/11/2007 10:57 am
Location: Cam Đức, Khánh hòa
Has thanked: 14 times
Been thanked: 519 times

Re: Các Hàm đo thời gian

Postby truongphu » Mon 17/02/2014 8:49 am

Khai Nguyen wrote:ịch có cả ngày dương và âm kèm theo


Code về âm - dương lịch có rất nhiều trong forum, của nhiều tác giả.
Bạn chỉ cần search và chọn lựa ưng ý
o0o--truongphu--o0o

.........
Ghé thăm:
Chuyện Linh Tinh

kochodoi
Posts: 4
Joined: Tue 02/04/2013 4:46 pm

Re: Các Hàm đo thời gian

Postby kochodoi » Mon 20/10/2014 10:25 am

Anh/chị truongphu cho em hỏi là bây giờ em muốn tạo một datareport mà nó chỉ lấy report theo ngày mình cần. Em đã tạo một Form có textBox nhập ngày/tháng. Report của em chỉ lấy một vài thông số từ database và chỉ muốn lấy theo ngày được nhập trên TextBox của Form chính. Xin hỏi anh/chị là em cần làm những gì để tạo được một Report như trên!


Return to “[VB] Chuỗi và Thời gian”

Who is online

Users browsing this forum: No registered users and 0 guests