Jump to content

Recommended Posts

Posted

If you look at the code of Yashied's HotKey UDF and read the description of the '$iFlags' parameter value "$HK_FLAG_NOOVERLAPCALL", it says that if you pass this flag to '_HotKey_Assign()', it "Prevents a call the user function if it has not complete. ..."  This clearly implies that if you do NOT use this flag value, the user function will be invoked again even if that function is still working on the previous invocation.  This in turn seems to imply that the Hotkey UDF allows reentrant coding/processing, which I had thought was not possible for AutoIt code.

If my reasoning regarding these implications is correct, I would be extremely pleased!  But I'm having trouble believing those implications - it really does seem impossible for AutoIt.  So my question is: does Yashied's Hokey UDF truly provide reentrance?

If not, is there any straightforward way to implement this ability without running two simultaneous scripts that communicate with each other?  My needs are too minor to bother with such a complex project...

Thanks!

 

Posted

If you use hotkeyset you'll notice you can call a function at any time.

Never used that UDF but yes, it seems like the flag you talk about is a check to make sure the function completed it's task.

Spoiler

Renamer - Rename files and folders, remove portions of text from the filename etc.

GPO Tool - Export/Import Group policy settings.

MirrorDir - Synchronize/Backup/Mirror Folders

BeatsPlayer - Music player.

Params Tool - Right click an exe to see it's parameters or execute them.

String Trigger - Triggers pasting text or applications or internet links on specific strings.

Inconspicuous - Hide files in plain sight, not fully encrypted.

Regedit Control - Registry browsing history, quickly jump into any saved key.

Time4Shutdown - Write the time for shutdown in minutes.

Power Profiles Tool - Set a profile as active, delete, duplicate, export and import.

Finished Task Shutdown - Shuts down pc when specified window/Wndl/process closes.

NetworkSpeedShutdown - Shuts down pc if download speed goes under "X" Kb/s.

IUIAutomation - Topic with framework and examples

Au3Record.exe

Posted
Quote

; $HK_FLAG_NOOVERLAPCALL
; Prevents a call the user function if it has not complete. This flag is primarily to be set if the user function uses the MsgBox() and similar to it.
; Remember that your specified function is an interrupt function to the program and should not suspend the program or the program may hang. However,
; it is not recommended to use the MsgBox() inside your function, it is better to define the control flag which will test the main program loop.
; Only the _HotKey_Assign() function uses this flag.

 

1 hour ago, Mbee said:

This in turn seems to imply that the Hotkey UDF allows reentrant coding/processing

I do not read this as the UDF allowing reentrant coding but that the results of calling the function multiple times while it is still running might be undefined or even hang your script. That's why $HK_FLAG_NOOVERLAPCALL is th default.

My UDFs and Tutorials:

Spoiler

UDFs:
Active Directory (NEW 2024-07-28 - Version 1.6.3.0) - Download - General Help & Support - Example Scripts - Wiki
ExcelChart (2017-07-21 - Version 0.4.0.1) - Download - General Help & Support - Example Scripts
OutlookEX (2021-11-16 - Version 1.7.0.0) - Download - General Help & Support - Example Scripts - Wiki
OutlookEX_GUI (2021-04-13 - Version 1.4.0.0) - Download
Outlook Tools (2019-07-22 - Version 0.6.0.0) - Download - General Help & Support - Wiki
PowerPoint (2021-08-31 - Version 1.5.0.0) - Download - General Help & Support - Example Scripts - Wiki
Task Scheduler (2022-07-28 - Version 1.6.0.1) - Download - General Help & Support - Wiki

Standard UDFs:
Excel - Example Scripts - Wiki
Word - Wiki

Tutorials:
ADO - Wiki
WebDriver - Wiki

 

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
×
×
  • Create New...