• 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
Hình đại diện của người dùng
truongphu
VIP
VIP
Bài viết: 4756
Ngày tham gia: CN 04/11/2007 10:57 am
Đến từ: Cam Đức, Khánh hòa
Has thanked: 14 time
Been thanked: 509 time

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

Gửi bàigửi bởi truongphu » T.Bảy 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:

Mã: Chọn hết

  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
Tập tin đính kèm
Cac Hàm Thoi Gian.rar
(17.31 KiB) Đã tải 987 lần


o0o--truongphu--o0o

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

Khai Nguyen
Bài viết: 4
Ngày tham gia: T.Bảy 10/08/2013 9:47 pm
Has thanked: 11 time

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

Gửi bàigửi bởi Khai Nguyen » T.Năm 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 .

Hình đại diện của người dùng
truongphu
VIP
VIP
Bài viết: 4756
Ngày tham gia: CN 04/11/2007 10:57 am
Đến từ: Cam Đức, Khánh hòa
Has thanked: 14 time
Been thanked: 509 time

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

Gửi bàigửi bởi truongphu » T.Hai 17/02/2014 8:49 am

Khai Nguyen đã viết:ị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
Bài viết: 4
Ngày tham gia: T.Ba 02/04/2013 4:46 pm

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

Gửi bàigửi bởi kochodoi » T.Hai 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!


Quay về “[VB] Chuỗi và Thời gian”

Đang trực tuyến

Đang xem chuyên mục này: Không có thành viên nào trực tuyến.1 khách