Jump to content

Understanding function execution time


Go to solution Solved by mLipok,

Recommended Posts

Posted

Hello, I have a question about the execution of what I believe are called functions (WinActivate/WinClose/Run/and so forth). What determines the amount of time it will take the specified command to finish and move on to the next. Is there a way to decrease this time?

For example:

Run("notepad.exe")
WinWait("[CLASS:Notepad]")
$W1hndl = Wingethandle("[CLASS:Notepad]")
Winsettitle($W1hndl,'',"Window 1")
ConsoleWrite("Window Title Renamed." & @CRLF)
Send("!{Tab}") ;unfocus
$begin = TimerInit()
WinActivate($W1hndl)
Local $dif = TimerDiff($begin)
WinClose($W1hndl)
MsgBox(0, "Time Difference", $dif)

When I run this, It takes about 250ms, however if the send alt-tab is commented out it takes about 500ms. It doesn't make sense to me, why would it take longer to give focus to a window that already has it? Also 250ms to seems like a lot of time to move from one function to the next. Am I wrong? Is this normal, and theres no faster way to do this?

On a side note, I'm just trying to understand the capabilities and limitations of autoit. It's not that I need a window to activate and move on within 10ms.

Thank you for your time.

Posted

Send("!{Tab}") ;unfocus  <--- comment out for different timing / If removed window is active and it will take 500ms to refocus/ if kept the window becomes inactive will take 250ms to refocus

$begin = TimerInit() ;Timer is starting
WinActivate($W1hndl)    ;Refocus notepad window
Local $dif = TimerDiff($begin) ;Timer has ended
WinClose($W1hndl)

Winactive is the only function being timed in this situation. I just added the winclose so you wouldn't have to do it manually :P

  • Solution
Posted

use this:

Opt("WinWaitDelay",10)

Signature beginning:
Please remember: "AutoIt"..... *  Wondering who uses AutoIt and what it can be used for ? * Forum Rules *
ADO.au3 UDF * POP3.au3 UDF * XML.au3 UDF * IE on Windows 11 * How to ask ChatGPT for AutoIt Codefor other useful stuff click the following button:

  Reveal hidden contents

Signature last update: 2023-04-24

Posted

Disable Aero and Enable Classic Windows Them.

Remember:

Install Driver for VGA.

Change - increace the Refresh Rate in Monitor and VGA driver.

Remove any wallpaper from your desktop.

 

It speed up GUI API.

and of course:

use Intel i7 instead Intel Pentium III  :D

Signature beginning:
Please remember: "AutoIt"..... *  Wondering who uses AutoIt and what it can be used for ? * Forum Rules *
ADO.au3 UDF * POP3.au3 UDF * XML.au3 UDF * IE on Windows 11 * How to ask ChatGPT for AutoIt Codefor other useful stuff click the following button:

  Reveal hidden contents

Signature last update: 2023-04-24

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...