User Defined Functions: Difference between revisions

From AutoIt Wiki
Jump to navigation Jump to search
m (→‎Introduction: reorder)
mNo edit summary
(27 intermediate revisions by 3 users not shown)
Line 1: Line 1:
== Introduction ==
==Introduction==
===Preface===
This page is a listing of libraries of '''user defined functions''' (UDF). These libraries have been written to allow easy integration into your own scripts and are a very valuable resource for any programmer.<br />
This page is a listing of libraries of '''user defined functions''' (UDF). These libraries have been written to allow easy integration into your own scripts and are a very valuable resource for any programmer.<br />
This list is probably not complete (378 UDFs on 2023-07-27), but constantly supplemented.
This list is probably not complete (383 UDFs on 2023-11-14), but constantly supplemented.
If you do not find a solution here, ask a new question on the [https://www.autoitscript.com/forum/forum/2-general-help-and-support/ forum].
If you do not find a solution here, ask a new question on the [https://www.autoitscript.com/forum/forum/2-general-help-and-support/ forum].


Line 9: Line 8:
None of the UDFs has been tested by the maintainers of this list so you as a user need to make sure that they deliver the expected results.<br />
None of the UDFs has been tested by the maintainers of this list so you as a user need to make sure that they deliver the expected results.<br />
<br />
<br />
 
'''When will an UDF be added to this list?'''<br>
===Added in the past two years===
It should meet all/most of the general requirements for UDFs as described [[UDF-spec|here]].<br>
In addition the following requirements should be met:
* '''Documentation''': So users can tell what the UDF is intended to do (''mandatory'')
* '''Examples''': So users can get an idea how to use the UDF. The more the better (''mandatory'')
* '''Operating''' systems: Should support the latest Microsoft OS (''mandatory'') plus as many predecessors as possible (''optional'')
* '''AutoIt''': Should support the latest version of AutoIt (''mandatory'') plus as many predecessors as possible (''optional'')
* '''Author''': The author should still be active on the forum so he can reply to questions (''optional'')
<br />
'''What to do when one of your UDFs is missing?'''<br />
Please send a [https://www.autoitscript.com/forum/messenger/compose/?to=7903 PM] to user water. Add a short description of the UDF and a link to your post in the [https://www.autoitscript.com/forum/forum/9-autoit-example-scripts/ Example Scripts] or [https://www.autoitscript.com/forum/forum/49-autoit-projects-and-collaboration/ Projects and Collaboration] forum.<br />
<br />
'''Added in the past two years'''<br />
{| class="wikitable"
{| class="wikitable"
|-
|-
! Date !! Section !! Creator !! Description
! Date !! Section !! Creator !! Description
|-
|-
|2023-07-27 || [[User_Defined_Functions#Files.2C_Databases_and_web_connections|Files, Databases and web connections]] || AspirinJunkie || [https://www.autoitscript.com/forum/imndex.php?showtopic=209526 xlsxNative (by AspirinJunkie)] - Read and write xlsx files without excel.
|2023-11-14 || [[User_Defined_Functions#Files.2C_Databases_and_web_connections|Files, Databases and web connections]] || TheXman || [https://www.autoitscript.com/forum/index.php?showtopic=208932 Xml2Json] - Transform XML to JSON.
|-
|2023-10-30 || [[User_Defined_Functions#Hardware|Hardware]] || Nine || [https://www.autoitscript.com/forum/index.php?showtopic=210968 Printer Manager] - Manage printers with winspool.drv DLL.
|-
|2023-10-30 || [[User_Defined_Functions#Controls|Controls]] || Andreik || [https://www.autoitscript.com/forum/index.php?showtopic=211024 Toggle Button] - Create simple toggle buttons.
|-
|2023-10-01 || [[User_Defined_Functions#Encryption_and_hash|Encryption and hash]] || willichan || [https://www.autoitscript.com/forum/index.php?showtopic=210901 Enigma] - Simple encryption based on the Enigma Machine.
|-
|2023-09-06 || [[User_Defined_Functions#Files.2C_Databases_and_web_connections|Files, Databases and web connections]] || willichan || [https://www.autoitscript.com/forum/index.php?showtopic=151116 DIF] - Read/write DIF (Data Interchange Format) files.
|-
|2023-07-27 || [[User_Defined_Functions#Files.2C_Databases_and_web_connections|Files, Databases and web connections]] || AspirinJunkie || [https://www.autoitscript.com/forum/imndex.php?showtopic=209526 xlsxNative] - Read and write xlsx files without excel.
|-
|-
|2023-07-27 || [[User_Defined_Functions#OpenOffice.2FLibreOffice|OpenOffice/LibreOffice]] || donnyh13 || [https://www.autoitscript.com/forum/index.php?showtopic=210514 LibreOffice Writer] - A huge list of functions for LibreOffice Writer.
|2023-07-27 || [[User_Defined_Functions#OpenOffice.2FLibreOffice|OpenOffice/LibreOffice]] || donnyh13 || [https://www.autoitscript.com/forum/index.php?showtopic=210514 LibreOffice Writer] - A huge list of functions for LibreOffice Writer.
Line 38: Line 58:
|-
|-
| 2022-04-25 || [[User_Defined_Functions#Social_Media_and_other_Website_API|Social Media and other Website API]] || Ascer || [https://www.autoitscript.com/forum/index.php?showtopic=192391 oAuth] - Open standard for access delegation, commonly used to grant websites or applications access to other websites.
| 2022-04-25 || [[User_Defined_Functions#Social_Media_and_other_Website_API|Social Media and other Website API]] || Ascer || [https://www.autoitscript.com/forum/index.php?showtopic=192391 oAuth] - Open standard for access delegation, commonly used to grant websites or applications access to other websites.
|-
| 2022-02-22 || [[User_Defined_Functions#Files.2C_Databases_and_web_connections|Files, Databases and web connections]] || czardas || [https://www.autoitscript.com/forum/index.php?showtopic=155748 CSVSplit] - Convert to and from CSV format.
|-
| 2022-02-11 || [[User_Defined_Functions#Inter_Process_Communications|Inter Process Communications]] || Nine || [https://www.autoitscript.com/forum/index.php?showtopic=204734 Overlapped Named Pipe IPC] - Very fast interprocess communication that could be used between VBS or AutoIt.
|-
| 2022-01-11 || [[User_Defined_Functions#Media|Media]] || MrKm || [https://www.autoitscript.com/forum/index.php?showtopic=206133 OCRSpace] - Convert Images to text with the OCRSpace API.
|-
| 2022-01-11 || [[User_Defined_Functions#Media|Media]] || Danyfirex || [https://www.autoitscript.com/forum/index.php?showtopic=207324 UWPOCR] - Universal Windows Platform Optical Character Recognition API.
|-
| 2021-08-18 || [[User_Defined_Functions#Graphics_and_image|Graphics and image]] || smbape || [https://www.autoitscript.com/forum/index.php?showtopic=206432 OpenCV v4+] -  OpenCV UDF with support for OpenCV v4+.
|-
| 2021-08-04 || [[User_Defined_Functions#Windows|Windows]] || DonChunior || [https://www.autoitscript.com/forum/index.php?showtopic=206400 BITS] - Background Intelligent Transfer Service to download/upload files from/to HTTP web servers and SMB file shares.
|}
|}
<br />
<br />


===Contact and support===
<!-- Place the Table of contents (TOC) here -->
'''When will an UDF be added to this list?'''<br>
__TOC__
It should meet all/most of the general requirements for UDFs as described [[UDF-spec|here]].<br>
In addition the following requirements should be met:
* '''Documentation''': So users can tell what the UDF is intended to do (''mandatory'')
* '''Examples''': So users can get an idea how to use the UDF. The more the better (''mandatory'')
* '''Operating''' systems: Should support the latest Microsoft OS (''mandatory'') plus as many predecessors as possible (''optional'')
* '''AutoIt''': Should support the latest version of AutoIt (''mandatory'') plus as many predecessors as possible (''optional'')
* '''Author''': The author should still be active on the forum so he can reply to questions (''optional'')
<br />
'''What to do when one of your UDFs is missing?'''<br />
Please send a [https://www.autoitscript.com/forum/messenger/compose/?to=7903 PM] to user water. Add a short description of the UDF and a link to your post in the [https://www.autoitscript.com/forum/forum/9-autoit-example-scripts/ Example Scripts forum].<br />
<br />


== Automation ==
== Automation ==
Line 153: Line 150:
* [https://www.autoitscript.com/forum/index.php?showtopic=197909 CSV (by seangriffin)] - Manipulate CSV files using SQLite.
* [https://www.autoitscript.com/forum/index.php?showtopic=197909 CSV (by seangriffin)] - Manipulate CSV files using SQLite.
* [https://www.autoitscript.com/forum/index.php?showtopic=155748 CSVSplit (by czardas)] - Convert to and from CSV format.
* [https://www.autoitscript.com/forum/index.php?showtopic=155748 CSVSplit (by czardas)] - Convert to and from CSV format.
* [https://www.autoitscript.com/forum/index.php?showtopic=151116 DIF (by willichan)] - Read/write DIF (Data Interchange Format) files.
* [https://www.autoitscript.com/forum/index.php?showtopic=119238 Excel file generation (by jerome)] - Excel file generation (multi-sheet workbook) without the need to have Excel installed.
* [https://www.autoitscript.com/forum/index.php?showtopic=119238 Excel file generation (by jerome)] - Excel file generation (multi-sheet workbook) without the need to have Excel installed.
* [https://www.autoitscript.com/forum/index.php?showtopic=143866 Excel XML (by FireFox)] - Work with SpreadsheetML (Open XML file formats).
* [https://www.autoitscript.com/forum/index.php?showtopic=143866 Excel XML (by FireFox)] - Work with SpreadsheetML (Open XML file formats).
* [https://www.autoitscript.com/forum/index.php?showtopic=155905 EXml (by jdelaney)] - Create Excel file (SpreadsheetML) through "Microsoft.XMLDOM".
* [https://www.autoitscript.com/forum/index.php?showtopic=155905 EXml (by jdelaney)] - Create Excel file (SpreadsheetML) through "Microsoft.XMLDOM".
* [https://www.autoitscript.com/forum/index.php?showtopic=116072 EzMySql (by Yoriz)] - Use MySQL Databases with AutoIt.
* [https://www.autoitscript.com/forum/index.php?showtopic=116072 EzMySql (by Yoriz)] - Use MySQL Databases with AutoIt.
* [https://www.autoitscript.com/forum/index.php?showtopic=148232 _FileGetProperty (by BrewManNH)] - Retrieve properties of a file.
* [https://www.autoitscript.com/forum/index.php?showtopic=148232 _FileGetProperty (by BrewManNH)] - Retrieve properties of a file.Xml2Json
* [https://www.autoitscript.com/forum/index.php?showtopic=94920 FireBird (by eltorro)] - FireBird, Interbase DLL.
* [https://www.autoitscript.com/forum/index.php?showtopic=94920 FireBird (by eltorro)] - FireBird, Interbase DLL.
* [https://www.autoitscript.com/forum/index.php?showtopic=197421 jq (by TheXman)] - Brings the power and flexibility of jq (an open-source command-line based JSON processor) to AutoIt.
* [https://www.autoitscript.com/forum/index.php?showtopic=197421 jq (by TheXman)] - Brings the power and flexibility of jq (an open-source command-line based JSON processor) to AutoIt.
Line 177: Line 175:
* [https://www.autoitscript.com/forum/index.php?showtopic=157853 SQLiteEx (by 57ar7up)] - SQLiteEx UDF v0.5.1 - Simplest work with SQLite.
* [https://www.autoitscript.com/forum/index.php?showtopic=157853 SQLiteEx (by 57ar7up)] - SQLiteEx UDF v0.5.1 - Simplest work with SQLite.
* [https://www.autoitscript.com/forum/index.php?showtopic=163633 Xbase I/O (by RTFC)] - Transfer data between Xbase Data file (*.dbf) and AutoIt array written in pure AutoIt (no SQL, no ADO, no dlls, no external dependencies).
* [https://www.autoitscript.com/forum/index.php?showtopic=163633 Xbase I/O (by RTFC)] - Transfer data between Xbase Data file (*.dbf) and AutoIt array written in pure AutoIt (no SQL, no ADO, no dlls, no external dependencies).
* [https://www.autoitscript.com/forum/imndex.php?showtopic=209526 xlsxNative (by AspirinJunkie)] - Read and write xlsx files without excel.
* [https://www.autoitscript.com/forum/index.php?showtopic=209526 xlsxNative (by AspirinJunkie)] - Read and write xlsx files without excel.
* [https://www.autoitscript.com/forum/index.php?showtopic=19848 XML DOM Wrapper (by eltorro)] - Supports CRUD operations on XML. Including XSL and XPath.
* [https://www.autoitscript.com/forum/index.php?showtopic=19848 XML DOM Wrapper (by eltorro)] - Supports CRUD operations on XML. Including XSL and XPath.
* [https://www.autoitscript.com/forum/index.php?showtopic=176895 XML (by mLipok)] - New version of XML DOM Wrapper, with many new features.
* [https://www.autoitscript.com/forum/index.php?showtopic=176895 XML (by mLipok)] - New version of XML DOM Wrapper, with many new features.
* [https://www.autoitscript.com/forum/index.php?showtopic=208932 Xml2Json (by TheXman)] - Transform XML to JSON.


== Data compression ==
== Data compression ==
Line 201: Line 200:
* [https://www.autoitscript.com/forum/index.php?showtopic=155538 Codecrypter (by RTFC)] - Encrypt scripts without placing the key inside the script.
* [https://www.autoitscript.com/forum/index.php?showtopic=155538 Codecrypter (by RTFC)] - Encrypt scripts without placing the key inside the script.
* [https://www.autoitscript.com/forum/index.php?showtopic=201002 Cryptography API: Next Gen (by TheXman)] - Microsoft's long-term replacement for their CryptoAPI.
* [https://www.autoitscript.com/forum/index.php?showtopic=201002 Cryptography API: Next Gen (by TheXman)] - Microsoft's long-term replacement for their CryptoAPI.
* [https://www.autoitscript.com/forum/index.php?showtopic=210901 Enigma (by willichan)] - Simple encryption based on the Enigma Machine.
* [https://www.autoitscript.com/forum/index.php?showtopic=203990 GDPR (by mLipok)] - Functions to encrypt/decrypt strings and files with the GDPR in mind.
* [https://www.autoitscript.com/forum/index.php?showtopic=203990 GDPR (by mLipok)] - Functions to encrypt/decrypt strings and files with the GDPR in mind.
* [https://www.autoitscript.com/forum/index.php?showtopic=95558 Hashes for files (by trancexx)] - Fast RC32, MD4, MD5, SHA1 calculation for big files.
* [https://www.autoitscript.com/forum/index.php?showtopic=95558 Hashes for files (by trancexx)] - Fast RC32, MD4, MD5, SHA1 calculation for big files.
Line 260: Line 260:
* [https://www.autoitscript.com/forum/index.php?showtopic=126958 Syslink (by Yashied)] - Provides a convenient way to embed hypertext links in a window.
* [https://www.autoitscript.com/forum/index.php?showtopic=126958 Syslink (by Yashied)] - Provides a convenient way to embed hypertext links in a window.
* [https://www.autoitscript.com/forum/index.php?showtopic=105814 Table (by andybiochem)] - Table UDF.
* [https://www.autoitscript.com/forum/index.php?showtopic=105814 Table (by andybiochem)] - Table UDF.
* [https://www.autoitscript.com/forum/index.php?showtopic=211024 Toggle Button (by Andreik)] - Create simple toggle buttons.
* [https://www.autoitscript.com/forum/index.php?showtopic=125251 TVExplorer (by Yashied)] - Allows to create TreeView (TV) Explorer controls that display a tree of files and folders.
* [https://www.autoitscript.com/forum/index.php?showtopic=125251 TVExplorer (by Yashied)] - Allows to create TreeView (TV) Explorer controls that display a tree of files and folders.
* [https://www.autoitscript.com/forum/index.php?showtopic=190659 Virtual Listview (by LarsJ)] - Virtual Listview for large amounts of data with a large number of rows.
* [https://www.autoitscript.com/forum/index.php?showtopic=190659 Virtual Listview (by LarsJ)] - Virtual Listview for large amounts of data with a large number of rows.
Line 282: Line 283:
* [https://www.autoitscript.com/forum/index.php?showtopic=155539 Network configuration (by jguinch)] - Network configuration UDF.
* [https://www.autoitscript.com/forum/index.php?showtopic=155539 Network configuration (by jguinch)] - Network configuration UDF.
* [https://www.autoitscript.com/forum/index.php?showtopic=182684 Nitgen (by Jefrey)] - UDF to work with Nitgen fingerprint readers that use NGenBio SDK.
* [https://www.autoitscript.com/forum/index.php?showtopic=182684 Nitgen (by Jefrey)] - UDF to work with Nitgen fingerprint readers that use NGenBio SDK.
* [https://www.autoitscript.com/forum/index.php?showtopic=210968 Printer Manager (by Nine)] - Manage printers with winspool.drv DLL.
* [https://www.autoitscript.com/forum/index.php?showtopic=155485 Printers management with WMI (by jguinch)] - Allows to manage printers: add/delete printer, driver, port, or obtain configuration, set default printer ...
* [https://www.autoitscript.com/forum/index.php?showtopic=155485 Printers management with WMI (by jguinch)] - Allows to manage printers: add/delete printer, driver, port, or obtain configuration, set default printer ...
* [https://www.autoitscript.com/forum/index.php?showtopic=189190 Serial port UDF / COM port UDF (by MazeM)] - Another UDF for the serial port. It is very similar to CommAPI using kernel32.dll, but all code is packed into a single file without any dependencies.
* [https://www.autoitscript.com/forum/index.php?showtopic=189190 Serial port UDF / COM port UDF (by MazeM)] - Another UDF for the serial port. It is very similar to CommAPI using kernel32.dll, but all code is packed into a single file without any dependencies.
Line 465: Line 467:
* [https://www.autoitscript.com/forum/index.php?showtopic=170087 Barcode generators (by willichan)] - Creates a Code128A/B/C or Creates a Code39 or Code39Extended optimized barcode from supplied data.
* [https://www.autoitscript.com/forum/index.php?showtopic=170087 Barcode generators (by willichan)] - Creates a Code128A/B/C or Creates a Code39 or Code39Extended optimized barcode from supplied data.
* [https://www.autoitscript.com/forum/index.php?showtopic=87735 BlockInputEx (by MrCreatoR)] - Supports a few features that built-in BlockInput() function does not.
* [https://www.autoitscript.com/forum/index.php?showtopic=87735 BlockInputEx (by MrCreatoR)] - Supports a few features that built-in BlockInput() function does not.
* [https://www.autoitscript.com/forum/index.php?showtopic=199762 BlockInputEx (by Nine)] - Block all input coming from mouse and/or keyboard, without having an UAC warning displayed.  
* [https://www.autoitscript.com/forum/index.php?showtopic=211660 BlockInputEx (by Nine)] - Block all input coming from mouse and/or keyboard, without having an UAC warning displayed.  
* [https://www.autoitscript.com/forum/index.php?showtopic=29763 Clipboard (by eltorro)] - When apps need to watch the clipboard.
* [https://www.autoitscript.com/forum/index.php?showtopic=29763 Clipboard (by eltorro)] - When apps need to watch the clipboard.
* [https://www.autoitscript.com/forum/index.php?showtopic=170630 ClipboardEx (by ozmike)] - Allows to have more than 1 item in the Clipboard. Handles all data types, not just text.
* [https://www.autoitscript.com/forum/index.php?showtopic=170630 ClipboardEx (by ozmike)] - Allows to have more than 1 item in the Clipboard. Handles all data types, not just text.

Revision as of 22:21, 28 March 2024

Introduction

This page is a listing of libraries of user defined functions (UDF). These libraries have been written to allow easy integration into your own scripts and are a very valuable resource for any programmer.
This list is probably not complete (383 UDFs on 2023-11-14), but constantly supplemented. If you do not find a solution here, ask a new question on the forum.

Note:
The listed UDFs might have been written for older versions of AutoIt. So there is no guarantee that every UDF works smoothly with newer versions.
None of the UDFs has been tested by the maintainers of this list so you as a user need to make sure that they deliver the expected results.

When will an UDF be added to this list?
It should meet all/most of the general requirements for UDFs as described here.
In addition the following requirements should be met:

  • Documentation: So users can tell what the UDF is intended to do (mandatory)
  • Examples: So users can get an idea how to use the UDF. The more the better (mandatory)
  • Operating systems: Should support the latest Microsoft OS (mandatory) plus as many predecessors as possible (optional)
  • AutoIt: Should support the latest version of AutoIt (mandatory) plus as many predecessors as possible (optional)
  • Author: The author should still be active on the forum so he can reply to questions (optional)


What to do when one of your UDFs is missing?
Please send a PM to user water. Add a short description of the UDF and a link to your post in the Example Scripts or Projects and Collaboration forum.

Added in the past two years

Date Section Creator Description
2023-11-14 Files, Databases and web connections TheXman Xml2Json - Transform XML to JSON.
2023-10-30 Hardware Nine Printer Manager - Manage printers with winspool.drv DLL.
2023-10-30 Controls Andreik Toggle Button - Create simple toggle buttons.
2023-10-01 Encryption and hash willichan Enigma - Simple encryption based on the Enigma Machine.
2023-09-06 Files, Databases and web connections willichan DIF - Read/write DIF (Data Interchange Format) files.
2023-07-27 Files, Databases and web connections AspirinJunkie xlsxNative - Read and write xlsx files without excel.
2023-07-27 OpenOffice/LibreOffice donnyh13 LibreOffice Writer - A huge list of functions for LibreOffice Writer.
2023-02-03 Graphics and image Starg S3D - Draw simple 3D graphics with GDI+.
2023-01-21 Files, Databases and web connections AspirinJunkie JSON - Interacting with JSON data in AutoIt.
2023-01-21 Script Coding/Analyzing/Debugging AspirinJunkie Set - Provides a set data type and brings the corresponding mathematical functions.
2023-01-21 Maths AspirinJunkie Stat - Statistics for Autoit.
2023-01-21 Script Coding/Analyzing/Debugging AspirinJunkie ArrayPlus - Functions for flexible Array handling (creating, extracting, rebuilding, sorting, filtering, finding, printing).
2023-01-21 Script Coding/Analyzing/Debugging AspirinJunkie ArrayCombinations - Different ways of composing elements of a set.
2023-01-04 Sound MattyD MIDI UDF - Wrap of the Windows MIDI functions.
2022-06-19 Internet protocol suite Beege cURLX64 - cURL UDF with x64 support.
2022-05-24 Controls kurtykurtyboy GuiFlatButton - Change colors of regular buttons.
2022-04-25 Social Media and other Website API Ascer oAuth - Open standard for access delegation, commonly used to grant websites or applications access to other websites.


Automation

Browsers

Microsoft Office

Some features of Microsoft's Office products are proprietary and cannot readily be manipulated. Sometimes workarounds are required.
This page is dedicated to identifying those issues, provide explanations and list solutions or workarounds.

OpenOffice/LibreOffice

Other Applications

Script Coding/Analyzing/Debugging

Inter Process Communications

Files, Databases and web connections

Data compression

Encryption and hash

GUI Additions

Controls

Hardware

Information gathering

Internet protocol suite

Maths

Media

Graphics and image

Players

Sound

PDF

Security

Social Media and other Website API

Windows

Misc