Opened 9 years ago

Last modified 3 years ago

#2912 assigned Feature Request

Additional include paths: New command line switch for AutoIt3.exe

Reported by: Tomasz Szreder (tomasz.szreder@… Owned by: Jpm
Milestone: Component: AutoIt
Version: Severity: None
Keywords: Command-line switches, include paths Cc:


It is possible to set additional include paths in the Registry as below:

[HKEY_CURRENT_USER\Software\AutoIt v3]

[HKEY_CURRENT_USER\Software\AutoIt v3\AutoIt]
"Include"="C:\\Program Files\\AutoIt3\\Include;Y:\\automation\\core"

We often use AutoIt3 in a portable way (non-installable: copy scripts and interpreter and then execute). As a rule, we do not alter Registry in test environments.

Our test scripts are decomposed into many small libraries in subfolders including each other by relative paths (because no assumptions can be made about working directory). It would be very convenient if include paths could be specified relative to a predefined root directory, provided as a command line switch to AutoIt3.exe interpreter.


AutoIt3.exe /AutoIt3Include="C:\\Program Files\\AutoIt3\\Include;Y:\\automation\\core" MyTestScript.au3

It would greatly improve maintainability of larger projects written in AutoIt3.

Thanks for considering.

Tomasz Szreder

Attachments (0)

Change History (5)

comment:1 Changed 9 years ago by BrewManNH

You state you don't want to alter the registry in your test environments, yet you're asking for registry entries to be used by AutoIt? I'm confused as to exactly what it is you're asking for.

comment:2 Changed 9 years ago by Tomasz Szreder <tomasz.szreder@…>

Sorry for the confusion. What I asked for was that in addition to AutoIt3 scanning Registry entries mentioned, AutoIt3 could also read additional include paths from command line. This way, I wouldn't have to add anything to the Registry *and* make AutoIt3 recognize more include paths.

So once again, as in the example:
AutoIt3.exe /AutoIt3Include="Y:\\automation\\core" MyTestScript.au3

If I put MyTestScript.au3 on user's Desktop, and have it call another include like:
#include "logging\MyLogger.au3"
I would like AutoIt3 to look for MyLogger.au3 in "Y:\automation\core\logging" as well.

I know I can write
#include "Y:\automation\core\logging\MyLogger.au3"
but the paths change very often, and I'd prefer to specify the root include paths when starting AutoIt3.exe.

Hope this clarifies the request.
Tomasz Szreder

comment:3 Changed 4 years ago by mLipok

Replying to Tomasz Szreder <tomasz.szreder@…>:

I know I can write
#include "Y:\automation\core\logging\MyLogger.au3"
but the paths change very often, and I'd prefer to specify the root include paths when starting AutoIt3.exe.

It is possible to solve your problem with:


comment:4 follow-up: Changed 3 years ago by Jpm

  • Owner set to Jpm
  • Status changed from new to assigned

Fix sent to Jon

comment:5 in reply to: ↑ 4 Changed 3 years ago by Jos

Replying to Jpm:

Fix sent to Jon

Fix for what exactly as this is an feature request of which I am not so sure this is a real requirement needed to be implemented?
To me having to provide some variable path on the commandline is much more cumbersome than in the source itself or am I missing something?


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

as assigned The owner will remain Jpm.

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

Note: See TracTickets for help on using tickets.