Speccy - наш выбор!

Speccy - наш выбор! (http://zx-pk.ru/index.php)
-   Эмуляторы отечественных компьютеров (http://zx-pk.ru/forumdisplay.php?f=61)
-   -   Эмулятор терминала типа VT52 (http://zx-pk.ru/showthread.php?t=20092)

Titus 2nd January 2013 15:29

Quote:

Originally Posted by Patron (Post 563920)
Проще ровно в 2 раза ( сообщение извлекается из очереди за один вызов, а не за два ).

Ну не в этом суть. И так, и так будет тормозить.

Но тормозит не только в отладчике, тормозит и не в отладчике, если мое информационное окно консоли активно. Тормозит на вышеописанных местах.

Patron 2nd January 2013 15:33

Quote:

Originally Posted by Titus (Post 563925)
тормозит и не в отладчике, если мое информационное окно консоли активно. Тормозит на вышеописанных местах.

Это точно какая-то проблема реализации.
А если отключить хук в коде, но запускать перед эмулятором хук-тест - тогда какие симптомы ?

Titus 2nd January 2013 15:39

Quote:

Originally Posted by Patron (Post 563928)
Это точно какая-то проблема реализации.
А если отключить хук в коде, но запускать перед эмулятором хук-тест - тогда какие симптомы ?

Тогда все работает идеально.
Однако, вся инициализация и обработчик хука в эмуляторе - предельно просты и приведены выше.

Patron 2nd January 2013 15:47

Quote:

Originally Posted by Titus (Post 563933)
Тогда все работает идеально.

А если запустить хук-тест после запуска эмулятора, а потом переключиться в эмулятор ?

Можно сделать два захода - когда эмулятор оставлен в окне эмуляции, а после запуска хук-теста переключается в окно консоли, и наоборот - оставлен в окне консоли, а потом переключается в окно эмуляции.

Titus 2nd January 2013 15:48

Quote:

Originally Posted by Patron (Post 563938)
А если запустить хук-тест после запуска эмулятора, а потом переключиться в эмулятор ?

Можно сделать два захода - когда эмулятор оставлен в окне эмуляции, а после запуска хук-теста переключается в окно консоли, и наоборот - оставлен в окне консоли, а потом переключается в окно эмуляции.

Все работает, хоть до, хоть после. Пробовал.

Patron 2nd January 2013 15:57

Можно сделать так, чтобы окно эмуляции устанавливало хук только при получении фокуса, а при потере фокуса - убирало хук..

Но лучше - сделать в эмуляторе ещё одно пустое окно, переключение в которое происходило бы без тормозов - и добавлять туда код реализации консоли, пока тормоза не проявятся.

Titus 2nd January 2013 17:09

Хочу для эксперимента сделать в библиотеке.

Есть пример пустой библиотеки? А то VisualC по умолчанию пихает туда какой-то фигни, из-за чего размер 160кб. Причем, фиг отключишь в настройках линкера. Не получилось пока что.

Patron 2nd January 2013 17:39

1 Attachment(s)
Quote:

Originally Posted by Titus (Post 563953)
Есть пример пустой библиотеки?

В приложении - статически собранная DLL ( с проектом ), которая при загрузке устанавливает хук и начинает писать лог в файл GlobalHook.log, а при выгрузке - убирает хук и закрывает лог.

Хук будет работать только тогда, когда загрузившая эту DLL программа обрабатывает сообщения.

Так в теории. На практике мне эту DLL грузить нечем, а писать в отдельном проекте ещё и специальный загрузчик - лень.

...

Titus 2nd January 2013 17:47

Эм... а 86кб почему?)

Patron 2nd January 2013 17:52

Quote:

Originally Posted by Titus (Post 563964)
Эм... а 86кб почему?)

Сборка статическая - код реализации всех использованных в исходнике DLL вызовов прилинкован к "телу" DLL.


All times are GMT +4. The time now is 02:42.

Powered by vBulletin® Version 3.8.3
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.