Имя пользователя:
Пароль:
 

Показать сообщение отдельно

Googler


Сообщения: 3665
Благодарности: 1563

Профиль | Отправить PM | Цитировать


Вложения
Тип файла: 7z ticker.7z
(4.9 Kb, 30 просмотров)

Creat0R
Цитата:
если есть интерес могу попробовать на выходных

Есть , спасибо
как ни странно получилось, и выглядит многообещающе...
Код: Выделить весь код
#include <GUIConstants.au3>
; ГУИ
Opt("GuiOnEventMode", 1)
$hWndMain=GUICreate("Test")
GUISetOnEvent(-3, "Quit")
GUICtrlCreateMenu("Test Menu")
GUISetState()
; Регистрируем сообщение
GUIRegisterMsg($WM_USER+1, "Tick")
; Открываем DLL и возвращаем указатель на функцию
$hDll = DllOpen("ticker.dll")
$hProc = DllCall($hDll,"int","TickerPtr")
; Структура для параметров "генератора сообщений"
$parms = DllStructCreate ("hwnd;int;long;long" )
  ; Установка требуемых параметров
DllStructSetData ($parms, 1, $hWndMain) ; хэндл главного окна
DllStructSetData ($parms, 2, $WM_USER+1) ; ID сообщения
DllStructSetData ($parms, 3, 300) ; таймаут между сообщениями
DllStructSetData ($parms, 4, 0) ; сколько раз отправить сообщение
; Запускаем поток
$res = DllCall("kernel32.dll","int","CreateThread","int",0,"int",0,"ptr",$hProc[0],"int",DllStructGetPtr($parms),"int",0,"int_ptr",0)
; Пустой цикл
While 1
    Sleep (1000)
Wend
; Функция обработки события
Func Tick ($hWnd, $iMsg, $WParam, $LParam)
    ConsoleWrite (Number($WParam) & @CRLF)
EndFunc
; Снова ГУИ
Func Quit()
    Exit
EndFunc
Это сообщение посчитали полезным следующие участники:

Отправлено: 15:57, 25-05-2007 | #434