Modify

Opened 12 years ago

Closed 12 years ago

#226 closed Bug (No Bug)

Explorer freezes momentarily when using Windows Shortcut keys while AutoIt scripts are running

Reported by: Koder Owned by:
Milestone: Component: AutoIt
Version: 3.2.10.0 Severity: None
Keywords: shortcut hotkey Cc:

Description

AutoIt seems to be causing long delays when using Windows Shortcut Keys. I have noticed that while 1 or more scripts are running, when I use a windows shortcut key (the hot key combo defined within a shortcut), Explorer freezes for a moment, nothing in Explorer will work until the shortcut launches (other apps work normally). The delay is exponentially longer if more than 1 script is running. There is no delay at all when no scripts are running and the delay is ended immediately if the script is stopped. And it seems like the longer a script has been running the longer the delay.

I have been sitting on this problem for awhile now looking for my own solution. I have found that the script itself does not matter, any script that is currently running, no defined hot keys within the script, they all cause the delay. I created a script that does nothing at all but sit in the system tray, still causes a delay. The problem occurs in all recent builds of AutoIt (betas too).

I suspect that AutoIt must be intercepting hot key messages before Windows Explorer and is then passing them on... Is there anyway to prevent this?

I've included a simplified script that demonstrates the problem although any script seems to have the same effect.

Steps to recreate:

  1. Create a shortcut key on Notepad (Ctrl-Alt N for example), test the shortcut key (while no scripts are running) to check that it works OK.
  2. Run several copies of this (or any) script and wait about 20 seconds before using a shortcut key.

Notice that explorer freezes until Notepad is opened. If you kill the script(s), explorer unfreezes quickly and Notepad opens right away.

Global $nMsg
Global $Form = GUICreate("Run several copies to see the delay", 350, 150, 263, 127)

GUISetState(@SW_SHOW)

While 1
	$nMsg = GUIGetMsg()
	Switch $nMsg
		Case -3
			Exit(0)
	EndSwitch
Wend

Thanks!

Attachments (0)

Change History (1)

comment:1 Changed 12 years ago by Valik

  • Resolution set to No Bug
  • Status changed from new to closed

This has nothing to do with AutoIt. I've experienced this problem in the past without AutoIt scripts running.

Guidelines for posting comments:

  • You cannot re-open a ticket but you may still leave a comment if you have additional information to add.
  • In-depth discussions should take place on the forum.

For more information see the full version of the ticket guidelines here.

Add Comment

Modify Ticket

Action
as closed The ticket will remain with no owner.
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.