Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 02/23/2020 in all areas

  1. LarsJ

    UI Automation UDFs

    To make it easier to maintain the UIA code, I've decided to split the code this way: This new thread is used for the actual UIA UDFs. Ie. the files stored in Includes folders and named UIA_*.au3 or UIAEH_*.au3. The UIASpy thread contains only code that is used directly in the UIASpy GUI, but not the UIA UDFs in this new thread. Using UIA Code contains only example code, but neither UIA UDFs nor UIASpy. UIA Events contains GUI code to detect events and it contains example code, but neither UIA UDFs nor UIASpy. This means that every time the code in the UDF files in this new thread is updated (eg. because of Windows 10 feature updates twice a year), you must install the files in the Includes folders in the other threads yourself. The easiest way is simply to copy all UDF files to the Includes folders. UDF Files CUIAutomation2.au3 - UIA constants for Windows 7 used in the first examples CUIAutomation2-a.au3 - The original UIA constants for Windows 7 from junkew's thread UIA_AccVars.au3 - Used to calculate properties of type VT_UNKNOWN, copied and modified from this thread UIA_Constants.au3 - UIA constants (copied from UIA header files) up to and including Windows 10 1809 UIA_ConstNames.au3 - Contains functions for converting UIA constants from values to names UIA_Functions.au3 - A collection of small utility functions UIA_Functions-a.au3 - First version of utility functions UIA_ObjectFromTag.au3 - Creates callback objects used in event handlers, copied and modified from this post by trancexx UIA_SafeArray.au3 - Constants and functions to handle safearrays, copied from this thread UIA_Variant.au3 - Constants and functions to handle variants, copied from this thread UIAEH_AutomationEventHandler.au3 - Implements the AutomationEventHandler UIAEH_FocusChangedEventHandler.au3 - Implements the FocusChangedEventHandler UIAEH_NotificationEventHandler.au3 - Implements the NotificationEventHandler, published in Windows 10 1709 UIAEH_PropertyChangedEventHandler.au3 - Implements the PropertyChangedEventHandler UIAEH_StructureChangedEventHandler.au3 - Implements the StructureChangedEventHandler Folders The UI Automation projects can be stored in a folder structure this way: UI Automation\ Code\ - Using UIA code Events\ - UIA events Spy tool\ - UIASpy.au3 UDFs\ - UDF files The UDF files must be installed in Includes\ in the first three folders. Threads UIASpy - UI Automation Spy Tool is a GUI tool that provides information about windows and controls and their interconnection and provides functionality to generate sample code. UIASpy is essential for creating UI Automation code. In Using UI Automation Code in AutoIt you can find and download examples and read information about using UIA code. UI Automation Events is about implementing event handlers and includes GUIs to detect events. IUIAutomation MS framework automate chrome, FF, IE, .... created by junkew August 2013 is the first AutoIt thread on UIA code. Zip-file The zip contains source code for the UDF files. You need AutoIt 3.3.12 or later. Tested on Windows XP, Windows 7 and Windows 10. Comments are welcome. Let me know if there are any issues. UIAIncludes.7z
    1 point
  2. In this post I take the opportunity to show the awesome capabilities of AutoIt and its libraries. My open source project Peace is a long running AutoIt based app located on SourceForge. It provides users with a system-wide equalizer and effects machine. It's an interface using the power of Equalizer APO, an audio processing object software. Peace has been download over 2,600,000 times by various kind of users. Amongst others it gives them possibilities like these: Hearing impaired - Amplify the gain of frequencies which are impaired. Home Theatre - Create Equalizer presets for watching movies and listening to music. Music lovers & audiophiles - Create presets for listening to music on their high quality speakers and headphones. Gamers - Enhance frequencies to get an edge over other gamers. Headphones - Improve the sound quality of cheap headphones and get the max out of expensive ones. Bass lovers - Boost low frequencies for extra bass. Voice - Make a microphone sound better and improve the voice, for instance for YouTube usage. Low audio - Boost low audio of an input source to a comfortable level. This list covers the main needs of the Peace user. Many people have contacted me over the years asking for new features and telling me how they use Peace for their (sometimes specific) needs. I was able to use AutoIt and its libraries for all of their needs. So what are the main features of Peace? Equalize your computer audio by using up to 31 sliders. Support of equalizing 9 speakers : left/right, center, subwoofer, left/right rear, left/right side. Per slider a filter can be chosen such as peak, low/high pass, shelving. The graph windows shows your equalization so you see exactly what you're doing. Apply an effect such as crossfeed simple/Jan Meier/Chu Moy, stereo balance, bass/treble, upmix/downmix, channel routing. Save presets (called configurations) and activate by mouse click, hotkey, desktop shortcut or Peace system tray. Select a target device to equalize, microphone as input can also be equalized. Automate: you can let Peace automatically activate presets on a switch to another device and another process. Peace is available in these languages: English, Czech, Deutsch, Français, Italiano, Nederlands, Pусский, Українська So who am I? I'm a Dutch programmer who happens the stumble upon AutoIt 5 years ago and created a small Equalizer interface app of less than 400 program lines with it. Nowadays Peace has grown to more than 18,000 lines as many features were added. Although Peace is open source, the program code isn't of the best possible quality. The reason being that I didn't expect it to become so popular. It caught me by supprise. I've created a Library of functions called Pal (link to forum post) which quality is up to the AutoIt community standard as counterpart to the Peace program code. I want to state here that AutoIt is a mature program language as Peace obviously shows. I wish it to be used more extensively for professional or semi-professional apps. In my view AutoIt deserves a place amongst the major programming languages for Windows computers. Regards, Peter Verbeek
    1 point
  3. It works for me now. _SQLite_LibVersion=3.31.1 Update of row natation took 7.03948001411146 ms (dik) Update of all rows where login start with 'seq' took 54.5459210399718 ms (disk) Copy users table (109k rows + index) to memory took 109.470713377022 ms Update of row natation took 0.513999208903048 ms (memory) Update of all rows where login start with 'seq' took 30.038165082691 ms (memory) Copy back changes to disk took 12.007141253568 ms Now i need to spent a more time to understood how this all functions works and if they fit to this job or not.
    1 point
  4. Try this: #include <GDIPlus.au3> #include <Memory.au3> #include <WinAPI.au3> #include <WinAPIEx.au3> ;---------------------------------------------------------------------------------------------------------------------- _GDIPlus_Startup() Global $pic1 = _GDIPlus_BitmapCreateFromMemory(PeonBlancopng()) _GDIPlus_ImageSaveToFile($pic1, @TempDir & "\Test.png") Run('rundll32 shimgvw.dll,ImageView_Fullscreen ' & @TempDir & "\Test.png") ; _GDIPlus_ImageDispose($pic1) _GDIPlus_Shutdown() Func PeonBlancopng() Local $Base64String = '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' $Base64String &= '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' $Base64String &= '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' $Base64String &= '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' $Base64String &= '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' $Base64String &= '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' $Base64String &= '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' $Base64String &= 'QTeQ/wuQgC4D8sVjwoyApBOQlNfVG2ZUQJ4UZv8ZkGhzboHn0wDxN5FxAk2l8+Is2A3MDPVvnYConPlicuYC5CmbqBFWzEKVDkl3A5za30u9perwIM07iMaoliGYLVXlzPtDomagJu4NPEqag8bUeWjJ/BDt2Z9DTtHB7CLqyJiD9tQ3KEJmoDmBZH7MRNRHjUNd2GjUBA8jIMwOon4k3XuRdKeax5Fqnd8AUUt31WzfL65uK90Hs7QpJyCZB1YY62pu+8/Nd5WUHbBaMor+ICvegl3OOMH5jcdbcNS+Xu2JG3jlqZsF5RQl5Xm7pOXHbbTLT9nplZ/db1hx4WDPisuHjStKjvStuOk+oKLMe3DFfb9hFZVBwyuqQkdV1EWMrWiIGlfREjuhsi1+XGV73NjK1pjRlc1RIyobw4dW1ocOqqwL7l9ZE9CnssqvV+UDb6PKcg+DyrIjepU3nLUrLzvKKs/bSyqLbEWVx3YJKnO28SrTNnMrCUJl/Hrug1+do3YL9gO6hzsRawU2q/70xCaL9f8Am9bJ5/8Ex3AAAAAASUVORK5CYII=' Return Binary(WinAPI_Base64Decode($Base64String)) EndFunc ;==>PeonBlancopng Func WinAPI_Base64Decode($sB64String) Local $aCrypt = DllCall("Crypt32.dll", "bool", "CryptStringToBinaryA", "str", $sB64String, "dword", 0, "dword", 1, "ptr", 0, "dword*", 0, "ptr", 0, "ptr", 0) If @error Or Not $aCrypt[0] Then Return SetError(1, 0, "") Local $bBuffer = DllStructCreate("byte[" & $aCrypt[5] & "]") $aCrypt = DllCall("Crypt32.dll", "bool", "CryptStringToBinaryA", "str", $sB64String, "dword", 0, "dword", 1, "struct*", $bBuffer, "dword*", $aCrypt[5], "ptr", 0, "ptr", 0) If @error Or Not $aCrypt[0] Then Return SetError(2, 0, "") Return DllStructGetData($bBuffer, 1) EndFunc ;==>WinAPI_Base64Decode ;------------------------------------------------------------------------------------------------------------------------- The function Load_BMP_From_Mem is obsolete and had been replace by _GDIPlus_BitmapCreateFromMemory!
    1 point
  5. This is also a very convenient opinion if you are too fat, old, lazy or simply don't have the necessary coding skills. The active supporters today are a bunch of chit-chatting guys and not really coders. It would be desirable if we could get some more coders and a little less chit-chatting guys.
    1 point
  6. Tested on 1k, 10k, 30k rows within memory DB attached to disk DB with a well balanced primary key. It stays around 0.32 ms per access to a single row fetch. I think with @jchdapproach, you should get the performance you are expecting. Now, you will have to show us that you have made some effort to understand SQLite, before we give you the code "tout cuit dans le bec".
    1 point
  7. Oops, sorry, I forgot it's part of another dll! That dll is x86 for now. Of course in a real-world app, one would store the login and a strong hash of {login, passphrase, salt}. It's the responsability of the calling app to get login + passphrase and compute the hash from there, in which case the _Crypt* functions would help, then query the DB for a corresponding entry. I just wanted to show how to make a realistic schema and deal with storage of the various data. md5.zip
    1 point
  8. Most of the time it is just ignorant snobbery .... like if you don't wear the right trendy shoes or clothes. I always smile and know I know a great empowering secret they don't ... not forgetting it is about the right tool for the right job. I can never get past how much AutoIt has enabled me, with the least amount of trouble compared to other languages. Quite frankly, I feel blessed. Thanks Jon and Team.
    1 point
  9. As can be seen in the first post, the functionality has been extended to A3X and EXE files. It would be great if you would test the script and give feedback here. At least a 💚 in the first post. Thanks
    1 point
×
×
  • Create New...