Inactivity detection

46 отговора 890 прегледа
в отговор на SDR #41

Re: Една дървена идейка...

хех ;) може и плодни, папрати и лишеи да нахакаме но най-вече трънки и глогинки ше сложим :)

еми пишеш един шел екстеншън и юзера ше има шанс да си стартира конзолен прозорец само ако цъкне два пъти върху цмд.екзе / комманд.екзе (за по дебилните версии на виндовс). И през шел екстеншъна си стартираш твой конзолен прозорец с прихванати изход вход и али бали и командите просто ги пускаш на истинския шел, който е скрит отзад....:) ама тва нема да му ареса на нашия човек ....прекалено много екшън е .....

There are 10 types of people in this world one who understand binary jokes and one who not
Отговор
в отговор на SDR #42

За да е още по-гадно...

... пак само за >=2000:
GetLastInputInfo(...)

Отговор
в отговор на synchu #43

Re: Една дървена идейка...

az wse pak predlagam da se implementira masow dll enjection i da si reshi problema s debilniq windows :)

------------------------------
I got a COMPILER, and I'm not afraid to use it!
Отговор
в отговор на bass #44

Напредък някакъв

Ето тази функция за момента се държи прекрасно (дори и в конзола ). Стиснал съм си палците на краката (очевидно е защо на краката, след като пиша тук) да не би утре да открия някакъв фатален проблем, заради който и тя да се окаже неприложима.
Вярно, че проверява само за един клавиш на извикване, но бройката може да се сведе до разумно количество.

--------------------------------------------------------------------------------
GetAsyncKeyState Function
--------------------------------------------------------------------------------

The GetAsyncKeyState function determines whether a key is up or down at the time the function is called, and whether the key was pressed after a previous call to GetAsyncKeyState.

Syntax

SHORT GetAsyncKeyState(int vKey);
Parameters

vKey
[in] Specifies one of 256 possible virtual-key codes. For more information, see Virtual-Key Codes.
Windows NT/2000/XP: You can use left- and right-distinguishing constants to specify certain keys. See the Remarks section for further information.

Return Value

If the function succeeds, the return value specifies whether the key was pressed since the last call to GetAsyncKeyState, and whether the key is currently up or down. If the most significant bit is set, the key is down, and if the least significant bit is set, the key was pressed after the previous call to GetAsyncKeyState. However, you should not rely on this last behavior; for more information, see the Remarks.

Windows NT/2000/XP: The return value is zero for the following cases:

The current desktop is not the active desktop
The foreground thread belongs to another process and the desktop does not allow the hook or the journal record.
Windows 95/98/Me: The return value is the global asynchronous key state for each virtual key. The system does not check which thread has the keyboard focus.

Windows 95/98/Me: Windows 95 does not support the left- and right-distinguishing constants. If you call GetAsyncKeyState with these constants, the return value is zero.

Редактирано от bass на

Отговор
в отговор на bass #45

За протокола

Вариантът с GetAsyncKeyState ме устройва напълно (както се оказа след още известно човъркане) и засега се спирам на него.
Предвид силното опростяване на проблема, има ли нужда да поствам код? (Нещата са струпани в компонент, макар че се чудя за чий си играх - цялата работа представлява една функция, една променлива и един таймер...почти...)

Отговор
в отговор на bass #46

Re: За протокола

e to vinagi e taka :) sega mu e vremeto za "refactoring do dupka".
Dejstvash, dejstvash, dejstvash i nakraj se okazva che edna funkcia i pet reda pravjat tva, koeto ti trjabva ama dokato gi precedish prez hiljadite Windows funkcii si e zor, no pone nauchavash "che ima takava i takava funkcia, kojato pravi tva i tva..."
ajde chestito :)

There are 10 types of people in this world one who understand binary jokes and one who not
Отговор
в отговор на synchu #47

Re: За протокола

>>Dejstvash, dejstvash, dejstvash i nakraj se okazva ... no pone nauchavash "che ima takava i takava funkcia, kojato pravi tva i tva..."
Вярно, даже според някои източни философии пътят е по-важен от крайната цел (макар да не съм напълно съгласен с това) :-)))
btw, ще помоля модераторите за извинение - тази тема не беше точно за тук, доколкото проблемът не е изцяло делфийски. В клуб "Програмисти" обаче много трудно отсявам съществените постинги от общия спам :-\\
10x!

Отговор