- PureBasic version of following AutoIt functions:
- Environment functions
- File, Directory and Disk functions
- Graphic and Sound functions
- Keyboard functions
- Message Boxes and Dialogs functions
- Misc. functions (non-complete)
- Mouse functions
- Process functions (non-complete)
- Registry functions
- String functions
- Timer and Delay functions
- Window functions (include controls functions)
- AutoIt macros
- Window and control related functions is fully AutoIt-compatible.
(Include options of WinTitleMatchMode, WinSearchChildren, WinDetectHiddenText,
and full support of "Advanced Window Descriptions".) - Syntax for Send(), ControlSend() and HotKeySet() is fully AutoIt-compatible.
(Include all send command, related options, and SendKeepActive() function.) - File read/write functions can detect different text encoding automaticly.
Following encoding are supported: Unicode/UTF8/Ascii with or without BOM.
(MemoryStringFormat() can detect more encoding.) - High speed string functions wrote in C source.
- Easy to use StringRegExpReplace() function with PHP style back-references.
- Thread safety. All dialog functions can create dialog from child thread.
- OnAutoItExitRegister/OnAutoItExitUnRegister to realize atexit for PureBasic.
- Assembly optimizer to strip unused procedures, strings, and externs.
(Not yet ready, I will publish it in next release.)
- This is only a BETA VERSION, use on your own risk
- The library is developed under windows 10, x86 compiler, unicode mode.
Some functions may not work correctly in different environment.
If you have any problems, please report it.
I hope it finally supports all windows version and all mode what PureBasic supported. - Macros are PureBasic procedures with underline prefix.
For example: _Error(), _Extended(), _MyDocumentsDir() - See the AutoIt document to know how to use the functions and macros, for example:
_Error() and _Extended() will return what the document says.
_HotKeyPressed() only works under HotKeySet() callback function.
_ExitCode() only works under OnAutoItExitRegister() callback function. - FileRead(), FileWrite(), FileWriteLine() like AutoIt, accept file handle or filename.
So FileOpen() actually return a "string" file handle.
Don't mix it with PureBasic built-in file command. - FileReadBinary() And HexToMemory() return a memory buffer if *buffer = 0.
The memory buffer must be freed with FreeMemory(). - Some AutoIt function return an array, but PureBasic cann't.
In PureAutoIt, it return comma separated string for position or size.
e.g. WinGetPos(), WinGetClientSize(), etc.
For others, it accept one extra parameter to return Array or List.
e.g. FileReadToArray(), WinList(), etc. - Some AutoIt function use function name as callback parameter.
For example, HotKeySet(), AdlibRegister(), OnAutoItExitRegister(), etc.
In these functions, you must pass procedure address like @ProcedureName(). - StringRegExp return different result accroding to flag.
So I split it into 5 different procedures (StringRegExp0 ~ StringRegExp4). - Set #PureAutoIt_EnableRegExp to 0 can reduce to output size.
(In this case, REGEXPTITLE and REGEXPCLASS are not supported.)
- Check all function works under x64.
- The document for PureAutoIt is not yet completed...