Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: Таймер - с помощью timerSetEvent Добавлено: 06.05.06 14:49  

Автор вопроса:  Telishev S | Web-сайт: tsa-molotoff.jino-net.ru
Использую вот такой код, а IDE вылетает - не подскажете как подправить?:
Форма:

Private Sub Form_Load()
create_timer
End Sub

Public Sub create_timer()
timID = timeSetEvent(100, 20, AddressOf TimerProc, 1, 0)
End Sub


Модуль:

Public Declare Function timeSetEvent Lib "winmm.dll" (ByVal uDelay As Long, ByVal uResolution As Long, ByVal lpFunction As Long, ByVal dwUser As Long, ByVal uFlags As Long) As Long
Public Declare Function timeKillEvent Lib "winmm.dll" (ByVal uID As Long) As Long

Public timID As Long
Public Function TimerProc(uID, uMsg As Long, dwUser, dw1 As Long)
Form1.Print "Time to die!!"
timeKillEvent timID
End Function

Ответить

  Ответы Всего ответов: 7  

Номер ответа: 1
Автор ответа:
 LamerOnLine



ICQ: 334781088 

Вопросов: 108
Ответов: 2822
 Профиль | | #1 Добавлено: 06.05.06 15:15
Ну интересно, а на что ты расчитывал?

the lpTimeProc parameter is interpreted as a function pointer with the following signature: void (CALLBACK)(UINT uTimerID, UINT uMsg, [BDWORD_PTR dwUser, DWORD_PTR dw1, DWORD_PTR dw2);

Ответить

Номер ответа: 2
Автор ответа:
 LamerOnLine



ICQ: 334781088 

Вопросов: 108
Ответов: 2822
 Профиль | | #2 Добавлено: 06.05.06 15:17
ПАрдон, глюк с тегами...

the lpTimeProc parameter is interpreted as a function pointer with the following signature: void (CALLBACK)(UINT uTimerID, UINT uMsg, DWORD_PTR dwUser, DWORD_PTR dw1, DWORD_PTR dw2);

В общем, добавь еще один параметр и объяви ВСЕ как long

Ответить

Номер ответа: 3
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #3 Добавлено: 06.05.06 17:59
Может лучше SetTimer/KillTimer которые с kernel32 экспортируются? Я могу пример дать...

Ответить

Номер ответа: 4
Автор ответа:
 Neco



ICQ: 247906854 

Вопросов: 133
Ответов: 882
 Web-сайт: neco.pisem.net
 Профиль | | #4
Добавлено: 06.05.06 22:02
Насколько я знаю timeSetEvent обладает бОльшей точностью срабатывания, нежели SetTimer.

Ответить

Номер ответа: 5
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #5 Добавлено: 07.05.06 19:42
насчёт этого незнаю... но я много раз пользовался SetTimer - срабатывал точно по расписанию :) хотя я конечно доли секунд не замерял, мне и не особо надо было...

Ответить

Номер ответа: 6
Автор ответа:
 Fever



Вопросов: 60
Ответов: 808
 Профиль | | #6 Добавлено: 11.05.06 14:12
Я знаю. SetTimer работает на BEATах, а timeSetEvent на MSECах

Ответить

Номер ответа: 7
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #7 Добавлено: 11.05.06 18:49
а чем отличается если соотношение BEAT'a к MSEC'у подогнать?

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам