-4
Option Explicit
Private Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long
Private Declare Function GetExitCodeProcess Lib "kernel32" (ByVal hProcess As Long, lpExitCode As Long) As Long
Function TimerCreate() As Boolean
If g_CTimer Is Nothing Then Exit Function
' Create the timer
g_CTimer.TimerID = SetTimer(0&, 0&, g_CTimer.Interval, AddressOf TimerProc)
If g_CTimer.TimerID Then
TimerCreate = True
Else
TimerCreate = False
g_CTimer.TimerID = 0
End If
End Function
Sub TimerProc(ByVal hwnd As Long, ByVal uMsg As Long, ByVal idEvent As Long, ByVal dwTime As Long)
On Error Resume Next
If g_CTimer Is Nothing Then Exit Sub
g_CTimer.ThatTime
End Sub
Вам действительно нужно задать вопрос. Есть ли что-то, в чем вы испытываете проблемы? Кажется, что за несколько минут вы получите около 95% конверсии. Тогда вы можете задать * конкретный вопрос о том, с чем вы столкнулись. –
У меня возникают проблемы при записи ниже строки на C# с правильными параметрами и типом данных: 'g_CTimer.TimerID = SetTimer (0 &, 0 &, g_CTimer.Interval, AddressOf TimerProc)' – apratik
Вам не нужно ни одного из них на C#, потому что в .Net есть несколько «Timer» и подобных классов, которые уже делают то, что вы здесь делаете. Я имею в виду, что миграция «VB6 -> C#» - это не просто перевод кода. Вам нужно полностью переписать, используя классы .Net и философию ООП. –