News:

 

Topic: 64-bit Version Test  (Read 35334 times)

0 Members and 1 Guest are viewing this topic.

  • No avatar
  • Posts: 2103
  • Polygon
January 23, 2014, 12:40:49 pm
The hook is in the .exe file.

From my limited understanding, a "Global hook" should always be in a .dll.


I made a quick search to check:-
http://msdn.microsoft.com/en-us/library/windows/desktop/ms644959%28v=vs.85%29.aspx
Quote
A global hook monitors messages for all threads in the same desktop as the calling thread. A thread-specific hook monitors messages for only an individual thread. A global hook procedure can be called in the context of any application in the same desktop as the calling thread, so the procedure must be in a separate DLL module. A thread-specific hook procedure is called only in the context of the associated thread. If an application installs a hook procedure for one of its own threads, the hook procedure can be in either the same module as the rest of the application's code or in a DLL. If the application installs a hook procedure for a thread of a different application, the procedure must be in a DLL.

WH_Keyboard_LL (The hook type you are using) is a "Global Hook"

Maybe you should be using "WH_Keyboard"? which can be either thread specific or global.


-----------------------

I have been searching for more info, the more info I find, the more warnings I see against using global hooks, as they can cause conflicts/issues (as we are seeing with Nvil).
I have been checking all the other applications I use, and none of them use the low level global hook you are attempting to use.
« Last Edit: January 23, 2014, 02:35:25 pm by steve »

  • No avatar
  • Posts: 2103
  • Polygon
January 23, 2014, 01:34:08 pm
I have tried to improve it. Please try this one.

I do not see how changes would help, unless you implement the hook correctly.

I had a quick test, and still similar problems.

At one time, I would only see this problem after using Nvil for about 40+ minutes, which then forced me to restart Nvil, or even have to re-boot windows if Nvil had corrupted windows explorer shell.
But now it is happening almost straight away which makes Nvil unusable for me (even with a new config)

  • No avatar
  • Posts: 3760
  • Developer
  • Administrator
  • Polygon
January 24, 2014, 09:57:37 am
Try this one. It uses application level key hijack so it wont' interfere with the system. But "Shift+NumPadKey" combination is no longer available as I couldn't find a possible way. If any one still wants the low level keyboard hooking, I can consider an option.

http://www.digitalfossils.com/Download/NVil-Jan-25-14.rar

  • No avatar
  • Posts: 2103
  • Polygon
January 24, 2014, 12:19:19 pm
Try this one.

Thank you for taking the time to implement an alternative to global hook.

I am limited to what monitoring I can make on my current win7 64 setup due to default KPP(patchguard), but initial usage of Nvil is looking better, as it is no longer interfering with key-bindings of a background programme I use.

I will be doing some modeling later, so will see how Nvil is with prolonged use.

  • No avatar
  • Posts: 232
  • Spline
January 24, 2014, 12:45:25 pm
Try this one. It uses application level key hijack so it wont' interfere with the system. But "Shift+NumPadKey" combination is no longer available as I couldn't find a possible way. If any one still wants the low level keyboard hooking, I can consider an option.
Thanks IStonia! I can't say yet whether this actually solved the problem (as I could not identify
a pattern causing the global stickiness). But I sure can live with Shift+Numpad no more being map-able,you still offer tons more of options than every other app I know.

  • No avatar
  • Posts: 130
  • Spline
January 24, 2014, 01:23:45 pm
Cool.  I've had strange keyboard issues with NVIL for ages, but have never been able to pin them down in a reproduceable way.  Downloading this new version now - shift-numpad can easily be lived without.

  • No avatar
  • Posts: 3760
  • Developer
  • Administrator
  • Polygon
January 24, 2014, 01:32:15 pm
"Shift+NumPadKey" is now available in the Jan-26-2014 update.

  • No avatar
  • Posts: 130
  • Spline
January 24, 2014, 03:23:27 pm
In the version just prior to the one you posted moments ago, I noticed within 1 minute of playing with it that pressing the Tab key once(to tab between fields) resulted in TWO tab presses being registered.  Will download the Jan 26 version and see if the problem still exists.

  • No avatar
  • Posts: 2103
  • Polygon
January 24, 2014, 03:43:26 pm
Pressing "Tab" in the newly released version (Jan-26-2014) causing Nvil to crash.
(Nvil has stopped working:- Event name: CLR20r3)

Pressing other keys, such as "Spacebar" or "Shift" also make Nvil crash.


« Last Edit: January 24, 2014, 06:48:26 pm by steve »

  • No avatar
  • Posts: 3760
  • Developer
  • Administrator
  • Polygon
January 24, 2014, 08:05:32 pm
Pressing "Tab" in the newly released version (Jan-26-2014) causing Nvil to crash.
(Nvil has stopped working:- Event name: CLR20r3)

Pressing other keys, such as "Spacebar" or "Shift" also make Nvil crash.




Does it still happen? Does the Jan-25 update have the same problem? The two versions are basically the same, just a couple two lines differences.

  • No avatar
  • Posts: 2103
  • Polygon
January 24, 2014, 08:34:13 pm
I have not had much time to fully check, but..

With Jan-25 build, I only see a problem with the "Tab" key, where it will tab across 2 input fields with just one press of "Tab". All other keys appear to be OK up to now.

With Jan-26 build, [with new config], it looks like any key (on release) causes Nvil to crash. For example. If I press "Spacebar" (with default new config), the window under mouse pointer will maximize, but when I then release the "Spacebar" nvil crashes. If I pres "Alt + LMB" I can rotate viewport, I can release LMB and still no problem, but when "Alt" released, then crash.
I can press any key without a problem, but when the key released, Nvil will crash.

  • No avatar
  • Posts: 3760
  • Developer
  • Administrator
  • Polygon
January 24, 2014, 09:18:00 pm
I have fixed the double Tab bug and renewed the Jan-26 update silently.


I have not had much time to fully check, but..

With Jan-25 build, I only see a problem with the "Tab" key, where it will tab across 2 input fields with just one press of "Tab". All other keys appear to be OK up to now.

With Jan-26 build, [with new config], it looks like any key (on release) causes Nvil to crash. For example. If I press "Spacebar" (with default new config), the window under mouse pointer will maximize, but when I then release the "Spacebar" nvil crashes. If I pres "Alt + LMB" I can rotate viewport, I can release LMB and still no problem, but when "Alt" released, then crash.
I can press any key without a problem, but when the key released, Nvil will crash.

It does not happen to me at all. Can you try this debug version? The key up processing is disabled.
http://www.digitalfossils.com/Download/NVil-Jan-26a-14.rar

  • No avatar
  • Posts: 2103
  • Polygon
January 24, 2014, 09:32:53 pm
The download link is giving me a "Page not found" error.

  • No avatar
  • Posts: 3760
  • Developer
  • Administrator
  • Polygon
January 24, 2014, 09:43:35 pm

  • No avatar
  • Posts: 2103
  • Polygon
January 24, 2014, 09:59:03 pm
Still same crash with debug build:-