Modify

Opened 11 years ago

Closed 10 years ago

#3103 closed Bug (Works For Me)

_Timer_GetIdleTime not working properly in Windows 10

Reported by: drummer@… Owned by:
Milestone: Component: AutoIt
Version: 3.3.14.0 Severity: None
Keywords: _Timer_GetIdleTime Cc:

Description

The _Timer_GetIdleTime function returns invalid data when run on
Windows 10.

I have three systems with the same problem. Worked properly on
Windows 7, but now returns no more than 2,500 ticks even if the
keyboard and mouse are not touched for several minutes.

This might be a problem in the underlying "GetLastInputInfo"
function in the user32.dll

Attachments (1)

ErrorSub.AU3 (417 bytes ) - added by drummer@… 11 years ago.

Download all attachments as: .zip

Change History (9)

by drummer@…, 11 years ago

Attachment: ErrorSub.AU3 added

comment:1 by BrewManNH, 11 years ago

I just tested this on my Windows 10 machine, using 3.3.14.0 and I don't have the same problem as you're describing.

Here are my results:

0|0
1000|1
2000|2
3000|3
4016|4
5016|5
6016|6
7031|7
8031|8
9031|9

I ran this using both x86 and x64 versions of AutoIt and got similar results in both.
Your test script does not demonstrate the issue you say you're having for me.

comment:2 by anonymous, 11 years ago

Here are the incorrect results I'm seeing. The keyboard and mouse were not touched while the script was running. Note the machine is running Windows 10 with EFI firmware. The function worked properly on the same machine running Windows 7 with EFI firmware. It doesn't matter whether you use a compiled script or run the source directly. Same problem.

1657|1
578|0
1578|1
515|0
1515|1
437|0
1453|1
375|0
1375|1
313|0

comment:3 by jchd18, 11 years ago

Can you retry with the mouse unplugged (and no fly walking on the touch screen, if any [just joking])?

comment:4 by drummer@…, 11 years ago

I tried the test again with the mouse unplugged. Same result, same problem.

By the way, I don't have a touchscreen so no flies were involved. - Thanks, Dave

comment:5 by drummer@…, 11 years ago

I just tried booting the machine to Windows in BIOS mode instead of EFI. Same problem. - Dave

comment:6 by BrewManNH, 11 years ago

I just tested this on my Windows 10 x86 VM on my work computer, still not seeing any problems with this at all.

31|0
984|0
1984|1
3000|3
4016|4
5016|5
6016|6
7016|7
8031|8
9047|9

I can only assume it only happens on some hardware or there is something wrong with the computers/software on the computers that are showing the error. I can't imagine that the counter should be decrementing between measurements the way your counter results show, although this page in MSDN explains that GetLastInputInfo isn't a system wide function, it only registers the current user's last input. So if you've got something running in the background simulating mouse/key actions it will throw it off.
https://msdn.microsoft.com/en-us/library/windows/desktop/ms646302(v=vs.85).aspx

comment:7 by drummer@…, 11 years ago

This error occurs consistently on a machine with a clean Windows 10 install. No other software or user services. The exact same hardware and software works properly in Windows 7. Perhaps this has to do with either the Windows 10 version of the Nvidea video driver, the optical mouse or keyboard driver. All drivers and options are vanilla. No unusual hareware, services or programs running In any event it fails every time.

What next? - Dave

comment:8 by BrewManNH, 10 years ago

Resolution: Works For Me
Status: newclosed

Modify Ticket

Action
as closed The ticket will remain with no owner.

Add Comment


E-mail address and name can be saved in the Preferences .
 
Note: See TracTickets for help on using tickets.