SeeTheCheckTeck Posted November 11, 2017 Share Posted November 11, 2017 Hello guys, I would really like to know how the DllCallAddress function is in the autoit source code, or atleast what windows Api are being used by that, so I'll be able to recreate a custom version. I've the visual c++ project of autoit v3 but actually there isn't this function since it wasn't been implemented when the source code was released. Also if you don't really know, you may help me to guess. Thank you. Link to comment Share on other sites More sharing options...
Jefrey Posted November 11, 2017 Share Posted November 11, 2017 AutoIt3 source code was never fully released. When it used to be released, it didn't bring all AutoIt features since it was meant just to allow users to implement new features on the language, and not be able to create a derivative project. Therefore the following things' source codes were never released and can't be found anywhere: GUI* DllCall* ControlListView InetGet My stuff Spoiler My UDFs _AuThread multithreading emulation for AutoIt · _ExtInputBox an inputbox with multiple inputs and more features · forceUTF8 fix strings encoding without knowing its original charset · JSONgen JSON generator · _TCPServer UDF multi-client and multi-task (run on background) event-based TCP server easy to do · _TCPClient_UDF multi-server and multi-task (runs on background) event-based TCP client easy to do · ParseURL and ParseStr functions ported from PHP · _CmdLine UDF easily parse command line parameters, keys or flags · AutoPHP Create documents (bills, incomes) from HTML by sending variables/arrays from AutoIt to PHP · (Un)Serialize Convert arrays and data into a storable string (PHP compatible) · RTTL Plays and exports to MP3 Nokia-format monophonic ringtones (for very old cellphones) · I18n library Simple and easy to use localization library · Scripting.Dictionary OOP and OOP-like approach · Buffer/stack limit arrays to N items by removing the last one once the limit is reached · NGBioAPI UDF to work with Nitgen fingerprint readers · Serial/Licensing system require license key based on unique machine ID from your users · HTTP a simple WinHTTP library that allows GET, POST and file uploads · Thread true AutoIt threads (under-dev) · RC4 RC4 encryption compatible with PHP and JS · storage.au3 localStorage and sessionStorage for AutoIt Classes _WKHtmlToX uses wkhtmlto* to convert HTML files and webpages into PDF or images (jpg, bmp, gif, png...) Snippets _Word_DocFindReplaceByLongText replace strings using Word UDF with strings longer than 255 characters (MSWord limit) rangeparser parser for printing-like pages interval (e.g.: "1,2,3-5") EnvParser parse strings/paths with environment variables and get full path GUICtrlStaticMarquee static text scrolling Random stuff Super Mario beep sound your ears will hurt Link to comment Share on other sites More sharing options...
Developers Jos Posted November 11, 2017 Developers Share Posted November 11, 2017 (edited) 16 minutes ago, Jefrey said: When it used to be released, it didn't bring all AutoIt features since it was meant just to allow users to implement new features on the language It was open source for a short period until somebody felt the urge to copy and run with it for no reason. That version is still available. Everything developed after that point in time is never made public and only accessible by a few devs. Jos Edited November 11, 2017 by Jos SciTE4AutoIt3 Full installer Download page - Beta files Read before posting How to post scriptsource Forum etiquette Forum Rules Live for the present, Dream of the future, Learn from the past. Link to comment Share on other sites More sharing options...
Developers Jos Posted November 11, 2017 Developers Share Posted November 11, 2017 34 minutes ago, SeeTheCheckTeck said: I would really like to know how the DllCallAddress function is in the autoit source code, it is around 200 lines of code so not a simple answer to give..... sorry. Jsos SciTE4AutoIt3 Full installer Download page - Beta files Read before posting How to post scriptsource Forum etiquette Forum Rules Live for the present, Dream of the future, Learn from the past. Link to comment Share on other sites More sharing options...
Danyfirex Posted November 12, 2017 Share Posted November 12, 2017 Hello. You need to do something like this. make your template for the call something like a prototype for your API declaration. calladdress(":stdcall:return","functionpointer","typeparameter",1) Parse your Input string parameter,types,values. Create then dinamically. Maybe use some Inline assembly to push your parameters and then call your function pointer. Get the return value. Saludos Danysys.com AutoIt... UDFs: VirusTotal API 2.0 UDF - libZPlay UDF - Apps: Guitar Tab Tester - VirusTotal Hash Checker Examples: Text-to-Speech ISpVoice Interface - Get installed applications - Enable/Disable Network connection PrintHookProc - WINTRUST - Mute Microphone Level - Get Connected NetWorks - Create NetWork Connection ShortCut Link to comment Share on other sites More sharing options...
SeeTheCheckTeck Posted November 12, 2017 Author Share Posted November 12, 2017 8 hours ago, Danyfirex said: Hello. You need to do something like this. make your template for the call something like a prototype for your API declaration. calladdress(":stdcall:return","functionpointer","typeparameter",1) Parse your Input string parameter,types,values. Create then dinamically. Maybe use some Inline assembly to push your parameters and then call your function pointer. Get the return value. Saludos Thank you for your idea... actually I think there must be some inline assembly somewhere in the code because there is no "limit" for the numbers of parameter given at the DllCallAddress function! Also I've wanted to say, to Jos and Jefrey, I know what you're talking about! If that's not possible to have the source code, I just would like to make my own function similar to it, so that's why I was asking to advices like the one given by Danyfirex! Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now