Leaderboard
Popular Content
Showing content with the highest reputation on 10/23/2013 in all areas
-
2 points
-
Automate all windows and browser applications with one UDF function library. Based on the microsoft automation API this library high level supports Recognition of conttrols from EDGE, Chrome, FF, Opera, Safari and Windows native apps Small testing framework to split object repository from coding away Introduction Quickstart - Getting started quickly Simple scripts With this module you can automate all applications/programs that support ui automation and/or accesibility api from microsoft you can recognize more controls than AutoIT can recognize "out of the box" you can use concepts from other testing frameworks like http://download.freedesktop.org/ldtp/doc/ldtp-tutorial.pdf http://safsdev.sourceforge.net/Default.htm coded ui testing from microsoft Some of those controls / applications are chrome browser (partly mainwindow has to be done with MSAA for navigating) chrome://accessibility in the adress bar of chrome or start with "--force-renderer-accessibility" silverlight controls Ribbon control controlbars of Excel/Word IE and FF browsers Windows Media Player Windows clock AFX .. controls (partly) .... Based on the initial AIO Object I now have made the interface file to work with objCreateInterface function which is in the latest beta's automate clicking and querying basic information It gives you a lot of basic information to be able to automate clicking, querying basic information where it goes further in certain situations than AutoIt is identifying Starting threads for background on the ui automation api of microsoft (not for starters) http://en.wikipedia.org/wiki/Microsoft_UI_Automation http://msdn.microsoft.com/en-us/library/ms747327.aspx Previous threads in general help/support Interface AutoItObject IUIAutomation ObjCreateInterface and struct tagPoint in method ElementFromPoint Be aware that API is not allways installed under XP/Vista see http://support.microsoft.com/kb/971513 Within Windows 7 and Windows 8 it should be preinstalled by default. Be aware on 32 and 64 bits way of running your script #AutoIt3Wrapper_UseX64=Y or N Basic example of usage / showing and retrieving the default information, will post multiple examples later Hover your mouse to an area of interest and press ctrl+w and information will be shown in the edit box of the form Simple spy demo (see simplespy.au3 or use latest ZIP attachment for latest version) Main features Recognize windows and html controls for the major browsers Logical and physical description for controls (UI mapping, Application map) Simple repository logic to abstract logical and physical descriptions Store Runtime Type Information in RTI. variables Rubberbanding/highlighting of objects Simple spy to help in making / identifying the physical description Support of regular expression(s) in identifying objects recognize objects on multiple properties supported properties: name ,title, automationid, classname, class, iaccessiblevalue, iaccessiblechildId, controltype, processid, acceleratorkey The actions provided so far "leftclick", "left", "click", "leftdoubleclick", "leftdouble", "doubleclick", _ "rightclick", "right", "rightdoubleclick", "rightdouble", _ "middleclick", "middle", "middledoubleclick", "middledouble", "mousemove", "movemouse" "setvalue","settextvalue" "setvalue using keys" "setValue using clipboard" "getvalue" "sendkeys", "enterstring", "type", "typetext" "invoke" "focus", "setfocus", "activate" "close" "move","setposition" "resize" "minimize", "maximize", "normal", "close", "exist", "exists" "searchcontext", "context" "highlight" "getobject","object" "attach" "capture","screenshot", "takescreenshot" "dump", "dumpthemall" "propertyvalue", "property" match on multiple properties like: name:=((Zoeken.*)|(Find.*)); ControlType:=Button; acceleratorkey:=Ctrl+F Support for 117 different properties see $UIA_propertiesSupportedArray in uiawrappers like for example title, regexptitle, class, regexpclass, iaccessiblevalue, iaccessiblechildid, name, accesskey, automationid, classname IAccessible, IAccessible2, ISimpleDom interfaces debuglogging to a file log.txt (no output in scitewindow) Examples Example 1 Iterating thru the different ways of representing the objects in the tree (#comment-1105548) Example 2 Finding the taskbar and clicking on the start menu button (#comment-1105680) Example 3 Clicking a litlle more and in the end displaying all items from the clock (thats not directly possible with AU3Info) (#comment-1108849) Example 4 that demonstrates the calculator Example 5 Automating chrome Example 6 Demonstrates all stuff within chrome to navigate html pages, find hyperlink, click hyperlink, find picture, click picture, enter data in inputbox Example 7 The chrome example modified to a firefox example Example 8 The other major browser Internet Explorer automated (made on Example 6 and 7) Example 9 Windows media player Example 10 Automating mach 3 (AFX windows and other hard to get recognized by AutoIT) Lot of links are broken due to forum upgrade just search for the text like "Example 11 Demonstrate Word, Notepad and Calculator actions" Example 11 Demonstrate Word, Notepad and Calculator actions ... Example 13 Details 1 about the right pane of the windows explorer Example 14 Details 2 about the right pane of the windows explorer Example 15 Details 3 about the right pane of the windows explorer Example 16 Details 4 about the right pane of the windows explorer Example 17 Details 5 about the right pane of the windows explorer WITH CACHING Example 18 Details 6 about the right pane of the windows explorer WITH VIRTUAL ITEMS Example 19 Eventhandling examples Example 20 Eventhandling examples Example 21a Eventhandling examples Internet Explorer Example 21b Eventhandling examples Internet Explorer Example 22 Eventhandling examples Follow focus Example 23 Eventhandling examples structure changed Example 24 Eventhandling examples IUIAutomationEventHandler Example 25 SAFEARRAYS Example 26 IACCESSIBLE / MSAA Example 27 IACCESSIBLE2 / MSAA Example 28 IACCESSIBLE / MSAA events Example 29 IACCESSIBLE2 events Example 30 ISimpleDOM Example 31 Notepad window move, maximize, minimize Example 32 Three browsers doing the same stuff with small differences in scripting only .. TODO Build recorder Enhance the spy with a nicer UI UI for the repository (now in the script with dot notation) Enhance mapping / identifying on multiple properties instead of 1 combined with index If speed becomes an issue use the caching logic of the MS UIA framework Add the other patterns later Generalize the concept of System Under Test of starting the SUT (for testing framework purposes) Remote running of scripts Fix issue on finding within dynamic context ... edit august 18th 2013 initial post Only zip files are needed to download , just unzip in 1 directory edit july 2016 Made V0_63 and examples works with AutoIt v3.3.14 Windows 10 tested Simple spy gives some basic code as a present Chrome latest versions seems to be having issues with IUIAutomation on tabs/buttons of mainwindow use MSAA for accessing tabsheets / buttons more cleanup to be in UDF style More comments in the source see changelog.txt for previous changes edit september 2017 All examples fixed for the IE, Firefox and Chrome browser Some small but essential fixes in UIAWrappers edit april 2018 Enhanced logic on fallback / dynamic search, still not perfect, to slow Retested with latest Chrome, FF, Edge and IE11 and some extensions to show how to get text from the webpage (examples 5,6,7) Some small bugfixes Some comments as given in forum incorporated edit may 2019 Speed enhancements on especially fallback searching UIA.CFG works now in a better way to turn on/off debug, highlighting, debug2file More stable and consistent behavior Internal cleanup and refactoring of bigger functions Checked with W10 (not tested on W7) Added some W10 properties Run with 3.3.14.5 on W10 UIA_V0_51.zip EXAMPLES_V0_5.zip UIA_V0_63.zip EXAMPLES_V0_63.zip UIA_V0_64.zip EXAMPLES_V0_64.zip EXAMPLES_V0_66.zip UIA_V0_66.zip EXAMPLES_V0_70.zip UIA_V0_70.zip1 point
-
_Service_UDF v4 : Build your own service with autoit code
cramaboule reacted to arcker for a topic
I can't be responsible for any impact of your script or services you would run in production. | _Services_UDF v4 | | By Arcker | Run your script as a service | Req. AutoIt 3.3.8.1 min, last beta recommended ( tested in 3.3.9.21 ) |_______________________________________ ++ Preparing v5 !! Checked on 27/04/2015 <> Updated on 10/23/2013 <> Updated 07/29/2013 <> Best practices Updated 24/02/2012 -- Removed GUI code, and old codes. == Warning : 26/02/2012 <> New Version (v3 ) : 29/07/2013 | Thx to ShminkyBoy, wraithdu, Udgeen and HolmesShelock for their great contributions. Special thx to bitboy, Downloads see end of this post : ServiceExample_v4, Services.au3, ServicesConstants.au3 Presentation Here is my _Service _ UDF With this UDF, you can compile your autoit script and run it as service. Any comments are welcome. Hope you'll like it, 1 - changelog Update V4 : 23/10/2013,27/04/2015 Update : V3 on 29/07/2013 Compile the service example to see how to do then you can use the main function for your proper scriptChoose an appropriate location and copy the script here.open a command prompt, and execute the compiled script with option –I ( must be admin right since vista )start / execute "services.msc" . You will see a service called "Autoit_service". you can execute "sc query" in a command prompt too.Launch it : it will run the previous compile script. The main function will be executed after the service_init.stop and relaunch the service as you wish. Examples / Session Change / uses v1 (lock, logon, etc) By HolmesShelock. Awesome work. Edit : this example doesn't use v2 or v3 method SessionChange Service.zip Example output to give you an idea Examples demos Synoptic And for End Users, I've tried to explain the service control manager and the way it works with programs. see below Best Practice, by arcker : /! please read this if you encounter stability issues I've had to rework on services.au3 to reflect threadsafe. Threadsafe means each dll call must be on "dllopened" instead of calling dll directly for example, if you need a function in kernel32.dll, you have to open it and call it after. That's contraignant since a lot of integrated functions in autoit are not programmed this way. If you take my services.au3, at the end, you'll see reworked function to handle this change. I've not tried services for a while, since i don't need it for now, but i can help you only if your provide whole script, to see how you call every functions. I can tell that fix stability issues in callback, but i don't think it's need for your script, as far as you don't use callback. Best Practice, by udgeen : Good news! Probably i've found the working method of integrating service.au3 with other projects I realised it after ASock.au3 project by Zatorg (please, sorry if im wrong) - ASock is asynck socket - tcp on event (uses ws2_32.dll). Asock & sqlite didnt work together. The only reason for that was..._ArrayDisplay() func with gui!!! Ok. I made special sqlite.au3 without dependences. It works, but my udf seemed too be much heavy to use at another project. Few weeks ago I returned to service.au3 and found TCP UDF, Event driven project based on ASock.au3. It seemed to work as example, but didn't work at all as service. In my variant of service_example.au3 i posted msdn words about service_main procedure, that it must contain all global vars of project I'll try to post that project as an another service_example.au3 in some weeks here. If it will works. Some advice: use SysInternals Process Explorer (free gui based), or kill.exe from support tools to stop suspended service process. U can start-stop service even net start/net stop commands. Use file logging while debuging. No need to install-uninstall service after every recompilation: only stop, recompile, start. See, if it was suspended (while stopping) - kill process. The only reason not to stop service correctly i've found for today is unclean exit: opened sockets, maybe some dlls. Edit : Arcker note: too bad, that would be too easy. unclean exit is not due to opened dll, but by some more internal exit checks or something. FAQ. 1 - Hey, I've got error 1063 or error 0, what does that mean ? It simply means that you intend to run your script in scite or directly by executing it. Your script has to be installed as service and run from it. Several ways to do it : You have to combine all Globals in one place: for example at the the begining. You have to make it with other udfs too... silly workThen sort Global Const and other Global statements. If u see something like global $x = 1 do that way: global $x leeve at top. $x =1 insert into module's (udf or project) Init func.U have to do it even with standart udf... or use only necessary functions from it in your own include. Or... maybe u have another plan?Try to build your project with modified udfs - does it works now? Hmm... But it have to Maybe later after everything will work fine i'll say "msdn is wrong, microsoft lies"... But maybe i'll say that microsoft - is not so bad, because autoit works in itnet start "yourservicename"Services.mscUse API provided _Service_start, Service_stop. 2 - I want to make a GUI ! It's not possible in a service. Create another process and communicate with your service by using IPC. 3 - I've to let the main function that way ? That's contraignant. Hey, a script intended to run as service is special no ? Autoit is not C++. The only way to have a "Main" in autoit is to have a function. If you find another way, please share it ServiceExample_ThreadSafe.au3 Services.au3 ServiceExample_v4.au3 ServicesConstants.au31 point -
This is a small, and not fully functional, local proxy server. It gives the basic ideas needed to filter web traffic to and from your browser. In order to use it, you must configure your browser to use a proxy. Most are located under Tools->Options->Network. The IP and Port are located at the top of this progams title bar. This script does not support HTTPS, certificates or uploading files. Final Release: December 13, 2013 Now Supports: 1) Cookies 2) Gzip (requires >ZLIB.au3 by ward) 3) Downloading of small files. (5 mb's or less) 4) Blacklist and Whitelist editor. (stored by file) _LocalProxyFilter_v0.9b.au31 point
-
Sword Art Online Style Widgets - Updated 2014/05/11
AlmarM reacted to DatMCEyeBall for a topic
You probable saw the topic title and went: "Sword Art Online?, Online suggests it's a game, so uhhm, let me report it!" Or if you're a Mod: "Let me band him!!! XDXD" Joking aside, it's not a game, It's an anime. It also has some cool UI styles, which is what I made Files in a 7zip below: Release: SAO.Widgets v2.5 (Release).7z Source: SAO.Widgets v2.5 (Source).7z Previous downloads: 2.4: 496+ 1.3-1.4: 482+ 1.1: 11+ 1.0: 45+ Maybe I should create a UDF that allows easy creation and management of widgets/GDI+. If you have any suggestions/feedback/comments feel free to post here. To-Do: Stability patches if needed [super-extreme priority] HDD widget to swap between hard drives. [Medium priority] Maybe change widget colour scheme? [Low priority] Version history:1 point -
You can loop through the array, but you have to access them correctly. This wiki article might help if you're unfamiliar with arrays.1 point
-
Inet Upload?
MadaraUchiha reacted to bogQ for a topic
$oHTTP = ObjCreate("winhttp.winhttprequest.5.1") $oHTTP.Open("GET", "http://www.someurl.rs/test.php?some=vardata&someother=vardata" , False) $oHTTP.send() ConsoleWrite($oHTTP.Responsetext) edit if "winhttp.winhttprequest.5.1" fali (in some cases it can, example trying it on google search can result of blocking if from google service) you can allwayes try to use "Microsoft.XMLHTTP" instead of it1 point -
mikell good idea - just matching characters. less than 1812 RE Pattern 0*d{1,3} | 1[0-7]d{2} | 18[0-1][0-1] matches 000-0999 or 1000-1799 or 1800-1811 greater 1905 RE Pattern [1-9]d{4,} | [2-9]d{3} | 190[6-9] | 19[1-9]d matches 10000-infinity or 2000-9999 or 1906-1909 or 1910-1999 #include <Array.au3> Local $rawText = "8 12 345 wiz 1800 zip 1900 1811 1812 1813 1904 1905 1906 2001A 2000 bang 10000" Local $sGroup1REPattern = "\b(0*\d{1,3}|1[0-7]\d{2}|18[0-1][0-1])\b" ; less than 1812 Local $aArray1 = StringRegExp($rawText, $sGroup1REPattern, 3) _ArrayDisplay($aArray1, "less than 1812") Local $sGroup2REPattern = "\b([1-9]\d{4,}|[2-9]\d{3}|190[6-9]|19[1-9]\d)\b" ; greater 1905 Local $aArray2 = StringRegExp($rawText, $sGroup2REPattern, 3) _ArrayDisplay($aArray2, "greater 1905") Local $sGroup3REPattern = "\b(0{0,}\d{1,3}|1[0-7]\d{2}|18[0-1][0-1]|[1-9]\d{4,}|[2-9]\d{3}|190[6-9]|19[1-9]\d)\b" ; less than 1812 or greater 1905 Local $aArray3 = StringRegExp($rawText, $sGroup3REPattern, 3) _ArrayDisplay($aArray3, "(x<1812 or x>1905)") Edit:- To help create the regular expression patterns to find numbers greater than or less than specified numbers, I have created functions that will do the job. Here is the example. #include <Array.au3> Local $rawText = "2 7 12 345 wiz 1800 zip 1900 1811 1812 1813 1904 1905 1906 2001A 2000 bang 10000 96 97 98" Local $iNum1 = 1812 Local $iNum2 = 1905 ; --------- Less than $iNum1 ------------------ Local $aArray1 = StringRegExp($rawText, _REPatternLessThan($iNum1), 3) ConsoleWrite("LessThan " & $iNum1 & " " & _REPatternLessThan($iNum1) & @LF) _ArrayDisplay($aArray1, "less than " & $iNum1) ; --------- Greater than $iNum2 ------------------ Local $aArray2 = StringRegExp($rawText, _REPatternGreaterThan($iNum2), 3) ConsoleWrite("GreaterThan " & $iNum2 & " " & _REPatternGreaterThan($iNum2) & @LF) _ArrayDisplay($aArray2, "greater than " & $iNum2) ; --------- Less than $iNum1 or greater than $iNum2 ----------- Local $aArray3 = StringRegExp($rawText, _REPatternLessAndGreaterThan($iNum1, $iNum2), 3) ConsoleWrite(_REPatternLessAndGreaterThan($iNum1, $iNum2) & @LF) ; _ArrayDisplay($aArray3, "(x<" & $iNum1 & " Or x>" & $iNum2 & ")") ; Creates Reg Exp Pattern which will match all numbers less than $iNumLessThan and all numbers greater than $iNumGreaterThan. Func _REPatternLessAndGreaterThan($iNumLessThan, $iNumGreaterThan) Return StringTrimRight(_REPatternLessThan($iNumLessThan), 3) & "|" & _ StringTrimLeft(_REPatternGreaterThan($iNumGreaterThan), 3) EndFunc ;==>_REPatternLessAndGreaterThan ; Creates Reg Exp Pattern which will match all numbers less than $iNum. Func _REPatternLessThan($iNum) Local $aChars = StringRegExp($iNum, ".", 3), $iLen = UBound($aChars) Local $sRetPat = "\b(" If $iLen <> 1 Then $sRetPat &= "0*\d{1," & $iLen - 1 & "}|" For $i = 0 To $iLen - 1 If ($aChars[$i] <> 0) Then $sRetPat &= StringLeft($iNum, $i) & "[0-" & $aChars[$i] - 1 & "]\d{" & ($iLen - $i - 1) & "}|" Next $sRetPat = StringRegExpReplace($sRetPat, "(\\d\{0\}|\{1\}|\|$)", "") & ")\b" ; Erase "\d[0}" and "{1}" and trailing "|". Return StringRegExpReplace($sRetPat, "\[(\d)-\1\]", "\1") ; Replace "[n-n]" with "n". EndFunc ;==>_REPatternLessThan ; Creates Reg Exp Pattern which will match all numbers greater than $iNum. Func _REPatternGreaterThan($iNum) Local $aChars = StringRegExp($iNum, ".", 3), $iLen = UBound($aChars) Local $sRetPat = "\b([1-9]\d{" & $iLen & ",}|" For $i = 0 To $iLen - 1 If $aChars[$i] <> 9 Then $sRetPat &= StringLeft($iNum, $i) & "[" & $aChars[$i] + 1 & "-9]\d{" & ($iLen - $i - 1) & "}|" Next $sRetPat = StringRegExpReplace($sRetPat, "(\\d\{0\}|\{1\}|\|$)", "") & ")\b" ; Erase "\d[0}" and "{1}" and trailing "|". Return StringRegExpReplace($sRetPat, "\[(\d)-\1\]", "\1") ; Replace "[n-n]" with "n". EndFunc ;==>_REPatternGreaterThan1 point
-
right-click
Shrapnel reacted to Automationuser for a topic
If you want to right click on a tree view item, first you need to fetch the handle of that item and then you need to pass this handle to _GUICtrlTreeView_ClickItem(). the below script right clicks on a first item in a tree view $TreeVwHWD = ControlGetHandle("Win_TITLE", "","[CLASS:SysTreeView32; INSTANCE:1]") ; Fetch tree view control handle $firstItmHWD = _GUICtrlTreeView_GetFirstItem($TreeVwHWD) ; Fetch the firstitem handle ConsoleWrite("$firstItmHWD :"&$firstItmHWD & @CRLF) _GUICtrlTreeView_ClickItem($TreeVwHWD, $firstItmHWD , "Right") ; Right Click on the first item1 point -
Try thinking outside the box, obviously that won't work, you need to reference the picture in the GUICtrlCreatePic line, not the GDIPlus lines.1 point
-
CreateProcessWithToken - hidden
Terenz reacted to JohnRescue for a topic
Thank you for the advice, below is the function, someone may find it useful. Only works in Vista or later, since it uses _Security__CreateProcessWithToken Edited: added info about Vista or later #include <ProcessConstants.au3> #include <StructureConstants.au3> #include <SecurityConstants.au3> #include <Security.au3> #include <WinAPI.au3> ; #FUNCTION# ==================================================================================================================================== ; Name...........: _RunFromProcess ; Description ...: Runs program with same security context as process specified in parameter ; Syntax.........: _RunFromProcess($sCommandLine, $sProcess, [, $sWindow] [, $sWait] ) ; Parameters ....: $sCommandLine - Full path to the program to be executed ; $sProcess - Process to be used for security token duplication ; $sWindow - [ optional ] Visibility of window, displayed by default 0, hidden with 1 ; $sWait - [ optional ] Wait for process to end before continuing with the script, default is not to wait 0, wait with 1 ; Requirement(s).: None ; Return values .: Success - PID of created process ; Failure - No return value ; ; Related .......: ; Link ..........; ; Examples ......; _RunFromProcess("Notepad.exe", "explorer.exe") ; _RunFromProcess("C:\Program Files\Program\program.exe", "explorer.exe", 1, 1) ; _RunFromProcess("Program.exe", "explorer.exe", 1, 1) ; =============================================================================================================================================== Func _RunFromProcess($sCommandLine = "", $sProcess = "" , $sWindow = 0, $sWait = 0) ; Structures needed for creating process Local $STARTUPINFO = DllStructCreate($tagSTARTUPINFO) Local $tPROCESS_INFORMATION = DllStructCreate($tagPROCESS_INFORMATION) ; Set process window not to be visible if specified by parameter If $sWindow = 1 Then DllStructSetData ( $STARTUPINFO, 12, 0x00000001) DllStructSetData ( $STARTUPINFO, 13, @SW_HIDE) EndIf ; Process handle of process specified by parameter Local $hProcess = _WinAPI_OpenProcess($PROCESS_ALL_ACCESS, 0, ProcessExists($sProcess)) ; If successful If $hProcess Then ; Token... Local $hTokOriginal = _Security__OpenProcessToken($hProcess, $TOKEN_ALL_ACCESS) ; Process handle is no longer needed. Close it _WinAPI_CloseHandle($hProcess) ; If successful If $hTokOriginal Then ; Duplicate the original token Local $hTokDuplicate = _Security__DuplicateTokenEx($hTokOriginal, $TOKEN_ALL_ACCESS, $SECURITYIMPERSONATION, $TOKENPRIMARY) ; Close the original token _WinAPI_CloseHandle($hTokOriginal) ; If successful If $hTokDuplicate Then ; Create process with this new token _Security__CreateProcessWithToken($hTokDuplicate, 0, $sCommandLine, 0, @ScriptDir, $STARTUPINFO, $tPROCESS_INFORMATION) ; Close that token _WinAPI_CloseHandle($hTokDuplicate) ; Close get handles _WinAPI_CloseHandle(DllStructGetData($tPROCESS_INFORMATION, "hProcess")) _WinAPI_CloseHandle(DllStructGetData($tPROCESS_INFORMATION, "hThread")) $PID = DllStructGetData($tPROCESS_INFORMATION, "ProcessID") ; Wait for the process to exit before continuing If $sWait = 1 Then ProcessWaitClose($PID) ; Return PID of newly created process Return $PID EndIf EndIf EndIf EndFunc ;==>_RunFromProcess1 point -
Try this: ;coded by UEZ 2013-10-22 #include <GUIConstantsEx.au3> #include <WindowsConstants.au3> #include <GDIPlus.au3> AutoItSetOption("GUIOnEventMode", 1) _GDIPlus_Startup() Global Const $STM_SETIMAGE = 0x0172, $IMAGE_BITMAP = 0 Global Const $hBmp_Background = _GDIPlus_BitmapCreateFromFile(@ScriptDir & "\LED_Bg.jpg") Global Const $iW = _GDIPlus_ImageGetWidth($hBmp_Background), $iH = _GDIPlus_ImageGetHeight($hBmp_Background) Global Const $hGUI = GUICreate("", $iW, $iH, -1, -1, $WS_POPUP) Global Const $iPic = GUICtrlCreatePic("", 0, 0, $iW, $iH) GUISetState() Global Const $hBitmap = _GDIPlus_BitmapCreateFromScan0($iW, $iH) Global Const $hGfx = _GDIPlus_ImageGetGraphicsContext($hBitmap) _GDIPlus_GraphicsSetSmoothingMode($hGfx, 2) _GDIPlus_GraphicsSetTextRenderingHint($hGfx, 4) Global Const $hCollection = _GDIPlus_PrivateCollectionCreate() Global Const $sFont = @ScriptDir & "\digital-7 (mono).ttf" Global Const $iLen = FileGetSize($sFont) Global Const $tFont = DllStructCreate("byte[" & $iLen & "]") DllStructSetData($tFont, 1, Binary(FileRead($sFont))) _GDIPlus_PrivateCollectionAddMemoryFont($hCollection, $tFont) Global Const $hBrush = _GDIPlus_BrushCreateSolid(0xE0000000) Global Const $hFormat = _GDIPlus_StringFormatCreate() Global Const $hFamily = _GDIPlus_FontFamilyCreate2("Digital-7", $hCollection) Global Const $hFont = _GDIPlus_FontCreate($hFamily, 235) Global Const $tLayout = _GDIPlus_RectFCreate(-26, 8, 0, 0) GUISetOnEvent($GUI_EVENT_CLOSE, "_Exit") Global $iCountdown = 90 ;seconds Global $iSeconds = $iCountdown Countdown() AdlibRegister("Countdown", 1000) Do Until Not Sleep(1000) Func CountDown() Local $sec, $min, $hr $sec = Mod($iSeconds, 60) $min = Mod($iSeconds / 60, 60) _GDIPlus_GraphicsDrawImageRect($hGfx, $hBmp_Background, 0, 0, $iW, $iH) _GDIPlus_GraphicsDrawStringEx($hGfx, StringFormat("%02i:%02i", $min, $sec), $hFont, $tLayout, $hFormat, $hBrush) CopyGDIPlus2PicControl($iPic, $hBitmap) If $iSeconds < 1 Then AdlibUnRegister("Countdown") EndIf $iSeconds -= 1 EndFunc Func _Exit() AdlibUnRegister("Countdown") _GDIPlus_FontDispose($hFont) _GDIPlus_FontFamilyDispose($hFamily) _GDIPlus_StringFormatDispose($hFormat) _GDIPlus_BrushDispose($hBrush) _GDIPlus_PrivateFontCollectionDispose($hCollection) _GDIPlus_GraphicsDispose($hGfx) _GDIPlus_BitmapDispose($hBitmap) _GDIPlus_BitmapDispose($hBmp_Background) _GDIPlus_Shutdown() GUIDelete() Exit EndFunc Func CopyGDIPlus2PicControl($iPicCtrl, $hBitmap) Local $hHBitmap = _GDIPlus_BitmapCreateHBITMAPFromBitmap($hBitmap) _WinAPI_DeleteObject(GUICtrlSendMsg($iPicCtrl, $STM_SETIMAGE, $IMAGE_BITMAP, $hHBitmap)) _WinAPI_DeleteObject($hHBitmap) EndFunc Func _GDIPlus_BitmapCreateFromScan0($iWidth, $iHeight, $iPixelFormat = $GDIP_PXF32ARGB, $iStride = 0, $pScan0 = 0) Local $aResult = DllCall($ghGDIPDll, "uint", "GdipCreateBitmapFromScan0", "int", $iWidth, "int", $iHeight, "int", $iStride, "int", $iPixelFormat, "ptr", $pScan0, "handle*", 0) If @error Then Return SetError(@error, @extended, 0) If $aResult[0] Then Return SetError(10, $aResult[0], 0) Return $aResult[6] EndFunc ;==>_GDIPlus_BitmapCreateFromScan0 Func _GDIPlus_GraphicsSetTextRenderingHint($hGraphics, $iTextRenderingHint) Local $aResult = DllCall($ghGDIPDll, "int", "GdipSetTextRenderingHint", "handle", $hGraphics, "int", $iTextRenderingHint) If @error Then Return SetError(@error, @extended, 0) If $aResult[0] Then Return SetError(10, $aResult[0], 0) Return True EndFunc ;==>_GDIPlus_GraphicsSetTextRenderingHint Func _GDIPlus_PrivateCollectionCreate() Local $aResult = DllCall($ghGDIPDll, "int", "GdipNewPrivateFontCollection", "handle*", 0) If @error Then Return SetError(@error, @extended, 0) If $aResult[0] Then Return SetError(10, $aResult[0], 0) Return $aResult[1] EndFunc ;==>_GDIPlus_PrivateCollectionCreate Func _GDIPlus_PrivateFontCollectionDispose($hFontCollection) Local $aResult = DllCall($ghGDIPDll, "int", "GdipDeletePrivateFontCollection", "handle*", $hFontCollection) If @error Then Return SetError(@error, @extended, 0) If $aResult[0] Then Return SetError(10, $aResult[0], 0) Return True EndFunc ;==>_GDIPlus_PrivateFontCollectionDispose Func _GDIPlus_PrivateCollectionAddMemoryFont($hFontCollection, $tFont) Local $aResult = DllCall($ghGDIPDll, "int", "GdipPrivateAddMemoryFont", "handle", $hFontCollection, "struct*", $tFont, "int", DllStructGetSize($tFont)) If @error Then Return SetError(@error, @extended, 0) If $aResult[0] Then Return SetError(10, $aResult[0], 0) Return True EndFunc ;==>_GDIPlus_PrivateCollectionAddMemoryFont Func _GDIPlus_FontFamilyCreate2($sFamily, $hCollection = 0) Local $aResult = DllCall($ghGDIPDll, "int", "GdipCreateFontFamilyFromName", "wstr", $sFamily, "ptr", $hCollection, "handle*", 0) If @error Then Return SetError(@error, @extended, 0) If $aResult[0] Then Return SetError(10, $aResult[0], 0) Return $aResult[3] EndFunc ;==>_GDIPlus_FontFamilyCreate Download missing files here + source code: http://www.mediafire.com/download/et72b8mrjjtl79d/GDI%2B_Digital_Countdown.7z The font doesn't fit 100% to the background (is it just a simple example)! I didn't want to use the beta which have partly the additional functions already included. Added another version (needed files are embedded): ;coded by UEZ 2013-10-22 #include <GUIConstantsEx.au3> #include <WindowsConstants.au3> #include <GDIPlus.au3> AutoItSetOption("GUIOnEventMode", 1) _GDIPlus_Startup() Global Const $STM_SETIMAGE = 0x0172, $IMAGE_BITMAP = 0 Global Const $hBmp_Background = _GDIPlus_BitmapCreateFromMemory(_Texturejpg()) Global Const $iW = _GDIPlus_ImageGetWidth($hBmp_Background), $iH = _GDIPlus_ImageGetHeight($hBmp_Background) Global Const $hGUI = GUICreate("", $iW, $iH, -1, -1, $WS_POPUP) Global Const $iPic = GUICtrlCreatePic("", 0, 0, $iW, $iH) GUISetState() Global Const $hBitmap = _GDIPlus_BitmapCreateFromScan0($iW, $iH) Global Const $hGfx = _GDIPlus_ImageGetGraphicsContext($hBitmap) _GDIPlus_GraphicsSetSmoothingMode($hGfx, 2) _GDIPlus_GraphicsSetTextRenderingHint($hGfx, 4) Global Const $hCollection = _GDIPlus_PrivateCollectionCreate() Global Const $bFont = _digital7monottf() Global Const $tFont = DllStructCreate("byte[" & BinaryLen($bFont) & "]") DllStructSetData($tFont, 1, $bFont) _GDIPlus_PrivateCollectionAddMemoryFont($hCollection, $tFont) Global Const $hBrush_Bg = _GDIPlus_BrushCreateSolid(0x70B0B0A0) Global Const $hBrush_Fg = _GDIPlus_BrushCreateSolid(0xE8101010) Global Const $hFormat = _GDIPlus_StringFormatCreate() Global Const $hFamily = _GDIPlus_FontFamilyCreate2("Digital-7", $hCollection) Global Const $hFont = _GDIPlus_FontCreate($hFamily, 235) _GDIPlus_StringFormatSetAlign($hFormat, 1) Global Const $tLayout = _GDIPlus_RectFCreate($iW / 2, 8, 0, 0) GUISetOnEvent($GUI_EVENT_CLOSE, "_Exit") Global $iCountdown = 90 ;seconds Global $iSeconds = $iCountdown Countdown() AdlibRegister("Countdown", 500) Do Until Not Sleep(1000) Func CountDown() Local $sec, $min, $hr, $sClock $sec = Mod($iSeconds, 60) $min = Mod($iSeconds / 60, 60) _GDIPlus_GraphicsDrawImageRect($hGfx, $hBmp_Background, 0, 0, $iW, $iH) _GDIPlus_GraphicsDrawStringEx($hGfx, "88:88", $hFont, $tLayout, $hFormat, $hBrush_Bg) Local Static $i, $t = TimerInit() $i = Mod($i + 1, 2) If $i Then $sClock = "%02i:%02i" Else $sClock = "%02i %02i" EndIf _GDIPlus_GraphicsDrawStringEx($hGfx, StringFormat($sClock, $min, $sec), $hFont, $tLayout, $hFormat, $hBrush_Fg) _GDIPlus_GraphicsDrawString($hGfx, "Coded by UEZ 2013", 0, $iH - 14, "Impact", 8) CopyGDIPlus2PicControl($iPic, $hBitmap) If $iSeconds < 1 Then AdlibUnRegister("Countdown") EndIf If TimerDiff($t) > 999 Then $iSeconds -= 1 $t = TimerInit() EndIf EndFunc Func _Exit() AdlibUnRegister("Countdown") _GDIPlus_FontDispose($hFont) _GDIPlus_FontFamilyDispose($hFamily) _GDIPlus_StringFormatDispose($hFormat) _GDIPlus_BrushDispose($hBrush_Bg) _GDIPlus_BrushDispose($hBrush_Fg) _GDIPlus_PrivateFontCollectionDispose($hCollection) _GDIPlus_GraphicsDispose($hGfx) _GDIPlus_BitmapDispose($hBitmap) _GDIPlus_BitmapDispose($hBmp_Background) _GDIPlus_Shutdown() GUIDelete() Exit EndFunc Func CopyGDIPlus2PicControl($iPicCtrl, $hBitmap) Local $hHBitmap = _GDIPlus_BitmapCreateHBITMAPFromBitmap($hBitmap) _WinAPI_DeleteObject(GUICtrlSendMsg($iPicCtrl, $STM_SETIMAGE, $IMAGE_BITMAP, $hHBitmap)) _WinAPI_DeleteObject($hHBitmap) EndFunc Func _GDIPlus_BitmapCreateFromScan0($iWidth, $iHeight, $iPixelFormat = $GDIP_PXF32ARGB, $iStride = 0, $pScan0 = 0) Local $aResult = DllCall($ghGDIPDll, "uint", "GdipCreateBitmapFromScan0", "int", $iWidth, "int", $iHeight, "int", $iStride, "int", $iPixelFormat, "ptr", $pScan0, "handle*", 0) If @error Then Return SetError(@error, @extended, 0) If $aResult[0] Then Return SetError(10, $aResult[0], 0) Return $aResult[6] EndFunc ;==>_GDIPlus_BitmapCreateFromScan0 Func _GDIPlus_GraphicsSetTextRenderingHint($hGraphics, $iTextRenderingHint) Local $aResult = DllCall($ghGDIPDll, "int", "GdipSetTextRenderingHint", "handle", $hGraphics, "int", $iTextRenderingHint) If @error Then Return SetError(@error, @extended, 0) If $aResult[0] Then Return SetError(10, $aResult[0], 0) Return True EndFunc ;==>_GDIPlus_GraphicsSetTextRenderingHint Func _GDIPlus_PrivateCollectionCreate() Local $aResult = DllCall($ghGDIPDll, "int", "GdipNewPrivateFontCollection", "handle*", 0) If @error Then Return SetError(@error, @extended, 0) If $aResult[0] Then Return SetError(10, $aResult[0], 0) Return $aResult[1] EndFunc ;==>_GDIPlus_PrivateCollectionCreate Func _GDIPlus_PrivateFontCollectionDispose($hFontCollection) Local $aResult = DllCall($ghGDIPDll, "int", "GdipDeletePrivateFontCollection", "handle*", $hFontCollection) If @error Then Return SetError(@error, @extended, 0) If $aResult[0] Then Return SetError(10, $aResult[0], 0) Return True EndFunc ;==>_GDIPlus_PrivateFontCollectionDispose Func _GDIPlus_PrivateCollectionAddMemoryFont($hFontCollection, $tFont) Local $aResult = DllCall($ghGDIPDll, "int", "GdipPrivateAddMemoryFont", "handle", $hFontCollection, "struct*", $tFont, "int", DllStructGetSize($tFont)) If @error Then Return SetError(@error, @extended, 0) If $aResult[0] Then Return SetError(10, $aResult[0], 0) Return True EndFunc ;==>_GDIPlus_PrivateCollectionAddMemoryFont Func _GDIPlus_FontFamilyCreate2($sFamily, $hCollection = 0) Local $aResult = DllCall($ghGDIPDll, "int", "GdipCreateFontFamilyFromName", "wstr", $sFamily, "ptr", $hCollection, "handle*", 0) If @error Then Return SetError(@error, @extended, 0) If $aResult[0] Then Return SetError(10, $aResult[0], 0) Return $aResult[3] EndFunc ;==>_GDIPlus_FontFamilyCreate Func _GDIPlus_BitmapCreateFromMemory($bImage, $hHBITMAP = False) If Not IsBinary($bImage) Then Return SetError(1, 0, 0) Local $aResult = 0 Local Const $memBitmap = Binary($bImage) ;load image saved in variable (memory) and convert it to binary Local Const $iLen = BinaryLen($memBitmap) ;get binary length of the image Local Const $GMEM_MOVEABLE = 0x0002 $aResult = DllCall("kernel32.dll", "handle", "GlobalAlloc", "uint", $GMEM_MOVEABLE, "ulong_ptr", $iLen) ;allocates movable memory ($GMEM_MOVEABLE = 0x0002) If @error Then Return SetError(4, 0, 0) Local Const $hData = $aResult[0] $aResult = DllCall("kernel32.dll", "ptr", "GlobalLock", "handle", $hData) If @error Then Return SetError(5, 0, 0) Local $tMem = DllStructCreate("byte[" & $iLen & "]", $aResult[0]) ;create struct DllStructSetData($tMem, 1, $memBitmap) ;fill struct with image data DllCall("kernel32.dll", "bool", "GlobalUnlock", "handle", $hData) ;decrements the lock count associated with a memory object that was allocated with GMEM_MOVEABLE If @error Then Return SetError(6, 0, 0) Local Const $hStream = _WinAPI_CreateStreamOnHGlobal($hData) ;creates a stream object that uses an HGLOBAL memory handle to store the stream contents If @error Then Return SetError(2, 0, 0) Local Const $hBitmap = _GDIPlus_BitmapCreateFromStream($hStream) ;creates a Bitmap object based on an IStream COM interface If @error Then Return SetError(3, 0, 0) DllCall("oleaut32.dll", "long", "DispCallFunc", "ptr", $hStream, "ulong_ptr", 8 * (1 + @AutoItX64), "uint", 4, "ushort", 23, "uint", 0, "ptr", 0, "ptr", 0, "str", "") ;release memory from $hStream to avoid memory leak If $hHBITMAP Then Local Const $hHBmp = __GDIPlus_BitmapCreateDIBFromBitmap($hBitmap) ;supports GDI transparent color format _GDIPlus_BitmapDispose($hBitmap) Return $hHBmp EndIf Return $hBitmap EndFunc ;==>_GDIPlus_BitmapCreateFromMemory Func _GDIPlus_BitmapCreateFromStream($pStream) Local $aResult = DllCall($ghGDIPDll, "int", "GdipCreateBitmapFromStream", "ptr", $pStream, "handle*", 0) If @error Then Return SetError(@error, @extended, 0) If $aResult[0] Then Return SetError(10, $aResult[0], 0) Return $aResult[2] EndFunc ;==>_GDIPlus_BitmapCreateFromStream Func _WinAPI_CreateStreamOnHGlobal($hGlobal = 0, $fDeleteOnRelease = 1) Local $Ret = DllCall("ole32.dll", "uint", "CreateStreamOnHGlobal", "ptr", $hGlobal, "int", $fDeleteOnRelease, "ptr*", 0) If @error Then Return SetError(1, 0, 0) Else If $Ret[0] Then Return SetError(1, $Ret[0], 0) EndIf EndIf Return $Ret[3] EndFunc ;==>_WinAPI_CreateStreamOnHGlobal Func __GDIPlus_BitmapCreateDIBFromBitmap($hBitmap) Local $tBIHDR, $aRet, $tData, $pBits, $hHBitmapv5 = 0 $aRet = DllCall($ghGDIPDll, "uint", "GdipGetImageDimension", "handle", $hBitmap, "float*", 0, "float*", 0) If @error Or $aRet[0] Then Return 0 $tData = _GDIPlus_BitmapLockBits($hBitmap, 0, 0, $aRet[2], $aRet[3], $GDIP_ILMREAD, $GDIP_PXF32ARGB) $pBits = DllStructGetData($tData, "Scan0") If Not $pBits Then Return 0 $tBIHDR = DllStructCreate("dword bV5Size;long bV5Width;long bV5Height;word bV5Planes;word bV5BitCount;dword bV5Compression;" & _ ;http://msdn.microsoft.com/en-us/library/windows/desktop/dd183381(v=vs.85).aspx "dword bV5SizeImage;long bV5XPelsPerMeter;long bV5YPelsPerMeter;dword bV5ClrUsed;dword bV5ClrImportant;" & _ "dword bV5RedMask;dword bV5GreenMask;dword bV5BlueMask;dword bV5AlphaMask;dword bV5CSType;" & _ "int bV5Endpoints[3];dword bV5GammaRed;dword bV5GammaGreen;dword bV5GammaBlue;dword bV5Intent;" & _ "dword bV5ProfileData;dword bV5ProfileSize;dword bV5Reserved") DllStructSetData($tBIHDR, "bV5Size", DllStructGetSize($tBIHDR)) DllStructSetData($tBIHDR, "bV5Width", $aRet[2]) DllStructSetData($tBIHDR, "bV5Height", $aRet[3]) DllStructSetData($tBIHDR, "bV5Planes", 1) DllStructSetData($tBIHDR, "bV5BitCount", 32) DllStructSetData($tBIHDR, "bV5Compression", 0) ; $BI_BITFIELDS = 3, $BI_RGB = 0, $BI_RLE8 = 1, $BI_RLE4 = 2, $RGBA = 0x41424752 DllStructSetData($tBIHDR, "bV5SizeImage", $aRet[3] * DllStructGetData($tData, "Stride")) DllStructSetData($tBIHDR, "bV5AlphaMask", 0xFF000000) DllStructSetData($tBIHDR, "bV5RedMask", 0x00FF0000) DllStructSetData($tBIHDR, "bV5GreenMask", 0x0000FF00) DllStructSetData($tBIHDR, "bV5BlueMask", 0x000000FF) DllStructSetData($tBIHDR, "bV5CSType", 2) ; $LCS_WINDOWS_COLOR_SPACE = 2 DllStructSetData($tBIHDR, "bV5Intent", 4) ; $LCS_GM_IMA = 4 $hHBitmapv5 = DllCall("gdi32.dll", "ptr", "CreateDIBSection", "hwnd", 0, "struct*", $tBIHDR, "uint", 0, "ptr*", 0, "ptr", 0, "dword", 0) If Not @error And $hHBitmapv5[0] Then DllCall("gdi32.dll", "dword", "SetBitmapBits", "ptr", $hHBitmapv5[0], "dword", $aRet[2] * $aRet[3] * 4, "ptr", DllStructGetData($tData, "Scan0")) $hHBitmapv5 = $hHBitmapv5[0] Else $hHBitmapv5 = 0 EndIf _GDIPlus_BitmapUnlockBits($hBitmap, $tData) $tData = 0 $tBIHDR = 0 Return $hHBitmapv5 EndFunc ;==>__GDIPlus_BitmapCreateDIBFromBitmap ;Code below was generated by: 'File to Base64 String' Code Generator v1.12 Build 2013-05-17 Func _Texturejpg($bSaveBinary = False, $sSavePath = @ScriptDir) Local $Texturejpg $Texturejpg &= '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' $Texturejpg &= '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' $Texturejpg &= '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' $Texturejpg &= '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' $Texturejpg &= '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' $Texturejpg &= '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' $Texturejpg &= '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' $Texturejpg &= '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' $Texturejpg &= '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' $Texturejpg &= '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' $Texturejpg &= '8vsoc9dQteOniC+GuZwKbbChy1VQgq/hNOPxKXZ1QobcSEVMlyIPE9jmUfzJY3XEDqi5jl49iAHyRCbcIS0Dh5GHlxEJWioK3mWDXDyMagcVEr7mFBBvKloIiJwDj1BaCq6mCw32CQJq4EYr0/EHSquoSMW9UJ+FilnqOvETpCrqV+75h6B6Cht86+InSFdRpXPfLhQ5yqpwJ614c0yF1KXZ3zCu0qqn2OR+kLqIvdsKHMV1L6ryAeAFMAjKaTOXrqI4IAlQeSMPe4WnJJSyhtoYaufqAUpAinj8TR3Bq1wvqikzCvLtKLdVDZPpAeCrlfNvmedPE5P4QemUq+UK7ipwPJk5YECzsrsM48Jo4iJyllOhPk+YE0LPuJnn5m8QmAiw7iAYfzK6DLKwFLvg9cHkFdwCzXUDIY+ZaQ5a4Mqyu4AER145p4dXATUDWwFctdw83LHN8LuWgHyjD6+YUm22Q2Tmu5aMaCtucxAUL6OGzf4GXbXeCvzBggEEH5JpvjgxkhqEDeg7JgAFCz7gWK+YWQpI4KmPJgQYZ9wgFlHoGExg9zjy9JlANfMIBynpwsnEuDOYW2zhsu4AwRaxws8ddwOo5bPbLuIWJ7KW/bTmB2uICPkLhQvvyhs+Kr2XkLt4eyhdXcBoHX5QXZjuMo+XxAV+U4EhbfHFNmO437DgYr+0oo2Y4UXmu5ZBE9wUgse4EP2EQkjVY4WFE9xoiD8wLVvcTe1jjEYPcuwFdwf7CIXK+oWeB7lsAq7gQI29w8k/CGw/dLqBXcz1dxCx+EN4K7gfCu5nJ5cQ08shsMfMuudo/JXcApy2Qi7KceIoTr5gwcmbpV3A1dDuchl//AF0CqAt5TGlw2CqdTUD6QUXLuYWOIbfAeSxQL4lCh+ZjDDaDydHDqKgTL2Zb8MnMuuoLpVSkCtxQvw6ydzjjo/CdALcGmMl1OYmnAw9OICDQLzGibr1MBEsRgSlIvMBRpl5BTk/EF0hcF5iBR4WmQO2DBUPaEoVbuUshtdepYE+kJA0LuJH6EPzGQlig0pSy+E5PGDVg2R0h9IE4AtqMdqPGRXJyLIJ9I1ANR2cOsnEnIFuC6nQC2oBX4dZEXGx4fibSnSgyBFx1GXUEgCb8KC6U9QWgK9jT5LqBoMu8iJJA/SbULzKNDdqAn6ILN0lqvpDWfaUH6MsstOo3QnqFOrPcNm/CWSOC6gshD6TAJl7DQv8IWWaHUFmuHU6bMHL4dQDf4lkFXxOEO44fxFyzqfo6mAB3swnc8r8QMkqnBBeZhc1Bkm/ERjlCnC/BNqqV2VEfaW6VGbhErxiX2cTnhgfUifDcJHPOHbhTgf+Ij/OBIvnD8KjKf8AFGOHIwhy8JHj8Qvrb8QG6V3GPZn8SWnqOg/3Om5QZ/SYFAOZc6f7gMxwjUaqMr5UagI8cVEXlX+p6ziKO3+Qh5KlOhgNviivw3CiD28QKVX9gdKH8SvCrlBvnMqpcRlRf4T6C7hob+8PJHi4L6XvlRX6XEBpt3zD2DKi51/MpguYxRb98wBuPEu7nH6+YiI67hW1qDoAQc1z+TmW3cOjcIKrEH4/7KTRldyHwLwZaqUpfsMsPJRtB8GWqFBYeEQAuNUiHgq0pYpoHQ/EPFAx4XAuWoeT6hHj/hBKv+cxPigy+U0aKDKiocXA0wiC2B8FMo4w2MJnZjT4pjAvzOwY0mV4jJVGksMbewUdFOwrxAyEFhgd7MHYAZCTDJhoAOY9hQcE95LNyaS1AFPZhIkp2JOxZLOLUKD2BpPEA2JJ8TRuASkBDuBmgkcWT4llk0gvE7gBJOE0MkvIyxPrGxklhI9otB8ILMT6QMBQGBgHymWGCyRZ8IGVMywBdxhpyyQk7Fm3CDDhwcJZfU0J/wA4l66/cd0q7gr0/wBTDL2L5K/cPAKf7bB5DX1Eg13+0HJx+4MADaAMWXc5DZceYgjkAiPMFUBihGSeomYmkBrA9gQqDGGxLqA7k+EZDRHuYke0A0ku' $Texturejpg &= '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' $Texturejpg &= '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' $Texturejpg &= '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' $Texturejpg &= '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' $Texturejpg &= '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' $Texturejpg &= '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' $Texturejpg &= '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' $Texturejpg &= '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' $Texturejpg &= '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' $Texturejpg &= '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' $Texturejpg &= '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' $Texturejpg &= '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' $Texturejpg &= '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' $Texturejpg &= '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' $Texturejpg &= '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' $Texturejpg &= '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' $Texturejpg &= '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' $Texturejpg &= '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' $Texturejpg &= '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' $Texturejpg &= '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' $Texturejpg &= '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' $Texturejpg &= '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' $Texturejpg &= 'SebfXGMEIrW8uRVSTn95JTW9XB0Cdrf1lAGjs8/7zZK6OeDzkrNXk9YVuGLb8YQHgbflzzCO74MGipKXb3o95a9UHh25TQ2lP7y8taL4FygpN3zvGPRJjPLIAPXbq84zZuFbx94cit5fd4mNCx8HnfnGwGX2984WAtS74zRStuXfjA3KANPp3iqU0nLgxqQrT/pgCq8KyFXQa3LzvFOnlvGs2re6971honvhc2T6BB+cbboN39ZAnhzeXEA06C8HnGpO9Go/64Wnst51x6xwjN2vP+8lGsNvrnFKMngfn/OQpQ4b+vWICIM2/LkWm4t4POChh393j3c0MoKeWCAFWqed7cl1KfUYKF59+7x7zY0zXljQ2tTfq8551JGpo1gNgla1ejEEp8A5YDzC3Lc84ILaN0YTCqTL3dEwrKOgcvnKcJAL3LzjNLYVU1jRU399XxgKbVwOTF3UyS9b3lOCptXjesIitxt1fGCh5ZDp7yWiD29uIyW3avfWbGmxC539LB684gGj2O8REodk9zjADCQkr+cSlKeD1Mo1BeHfoxpKCuz3OMY5LvT+2Abf0OpkolG/a+MSK1O/cwjUw/DW82KTnlrHank65Pi44DlN/wA5qwiRVNGIWqvB1+MGg9QPPq49Ul9/3hdzfJ4GAoCV31bxlfb1A84lAeLbq85ClXJXjBTtRvbV8TBRWnoecaItZt1ecbW0m68YItc+2r4yUtqSPPvFIBBOWC6r3NwbK24veO4AYH+M3wF0xGlNs+jG4f4wFwDZo6mAEVvP1jn2Nv3iE0PB7wmjNprxkEwad/BiC3CvvE6ASQ9zEJgbmjO2tl949exvMUh0pnrIkBR4PDht+Jb7uOpINBMVHxHq5yJIVncwjWd73biRlAAE8uJy7Qn3iagsXXzng7g3urjmhkcesWxsWJ+cauPevO8ALBpuecAcAiE63iJtVp8GsKLnLo+cIcB1v5MIGRUN/eMVUaj8ZUslkMgsgwOPWAgi1Nng1ivk2+0xKuA0HWcEQZNeJkABatfVmUVdXZ3i64awOLP94SQFozszggtLPFmK5CCQTvGAaNA8XCBJQjDmcZCsHZs3biZ7AEuCOyserxi2kpqHJiGA89N3AOgQEpxecX4Kes1pAI65yAILTRu3OURAlOLcStb1nq8YqEhNgZAgGujdwiQQhTjNDfwnxi0CAiwPeQQBVneAnkMKcYg306JzFx6NSmHneSeKNzAIohgpxig3NsfWI+gWwxGkjYGKlLSp1M0kAFj5MRlELDCTDQaOtYEwVy/OI/AnZ3rEXyDR8YBMlMZ4mAWB7J7zgxFbO7iRtSJ6XOFFM0YRwdm95qssspxjAOonpzpRTcM1Gcmzdx8CzTWNp6E9Y5AAm9YTjNDfeEuRgCmbK70zPEFTgBgANTvCOAyBTjOUduMY2g9TIEAabmf/2Q==' Local $bString = Binary(_Base64Decode($Texturejpg)) If $bSaveBinary Then Local $hFile = FileOpen($sSavePath & "\Texture.jpg", 18) FileWrite($hFile, $bString) FileClose($hFile) EndIf Return $bString EndFunc ;==>_Texturejpg Func _digital7monottf($bSaveBinary = False, $sSavePath = @ScriptDir) Local $digital7monottf $digital7monottf &= 'UrhAAAEAAAASAEAEAAAgTFRTSPCmQKa/AAADtACobwBPUy8yZyzwZxAAAAGoADxgUEMATFTNlu5MAAAEhJAAPDZWRE1YEGtqcwUAeCQAAAAF4GNtYXCQWwDVZQAAFBwAAAACUGN2dCASX0AMPQAAKRQAXmQAZnBnbSjh7sYAAAAWbAAAEcgAZ2FzcAAXAAkFAE+AAB8QZ2x5ZhArol5VAC94AAAAUsBoZG14bJ8goAQAAAoBAxhogGVhZOsu7rkAjwosAX9oABAFFQMoBQAPZAAPJGhtdHhQ0Pwb7AB7CAATrABsb2NhT2xmUBAAAHw4AB/YbWFAeHADBBJeABuIAQAPIG5hbWWPxAC6fgAAfRAAAAAGb3Bvc3RdSSBiMQAAg4FH/XBAcmVwnvHkgEcoGjSAB92ClYABf5o3AP5fDzz1ABAEgYCFAADFC03wgwMAXK0AAP+IAfTEA0gABwsAAoEKgxlQAyAAyAAE9AIH9AuCJAkAa4IIawBUAAIOggcCAAgAQAAaggEEEYAbAAADAfQAAZAABQACArwUAoqAB4+DAwHFAHgyAQOBEwUAAF2KLkEjAOuAJSAgMINBA4SMALuDSYAavAK8QUKrQybMANLAAIzAAB7AAFYoxATBAdzEAb7AAFU9wABQxArFAcEGwAABfO/HAtYAwQvBAGTED8EB3QxVxQDI6Aop4Af6yAOg//8f5h/FV8E/wQLBWcFYwQAvwV/BAMFFwQYKQ5AAa+BLAQEBSz8AIQAjWAHgDQEBAAwA+Aii/2BTB//+4HYIoAAoCgAJoAALogAMAIAK//0ADQALoACIDgAMoAAPAA2gACgQAA6gABGiABIAgA///AATABCgAIgUABGgABUAEqAAIhaiABcAE6AAGACAFP/7ABkAFaAAiBoAFqAAGwAXoAAiHKIAHQAYoAAeAIAZ//oAHwAaoAAoIAAboAAhogAiACIcoAAjAB2gACQAgB7/+QAlAB+gACgmACCgACeiACgAIiGgACkAIqAAKgCAI//4ACsAJKAAIiyiAC0AJaAALgAiJqAALwAnoAAwAIAo//cAMQApoAAiMqIAMwAqoAA0AAIroAA1ACz/9gAoNgAtoAA3ogA4ACIuoAA5AC+gADoAAjCgADsAMf/1ACg8ADKgAD2iAD4AIjOgAD8ANKAAQAACNaAAQQA2//QAIkKiAEMAN6AARAAiOKAARQA5oABGAAI6oABHADv/8wAiSKIASQA8oABKACI9oABLAD6gAEwACj+gAE2gAPIATgAiQKAATwBBoABQACJCoABRAEOgAFIAqkSgAFOgAPGgjUWgAIhVAEagAFYAR6AAKFcASKAAWKIAWQCASf/wAFoASqAAiFsAS6AAXABMoAAoXQBNoABeogBfAIBO/+8AYABPoACIYQBQoABiAFGgACJjogBkAFKgAGUAgFP/7gBmAFSgAIhnAFWgAGgAVqAAgmmiAGoAV//tIJ8iWKAAbABZoABtAIpaoABuogBvAFugAABwAFz/7ABxACJdoAByAF6gAHMAil+gAHSiAHUAYKAAAHYAYf/rAHcAomKgAHgAY6AAeaIAiHoAZKAAewBloAAAfABm/+oAfQCiZ6AAfgBooAB/ogCIgABpoACBAGqgAACCAGv/6QCDAIpsoACEogCFAG2gAIiGAG6gAIcAb6AAAIgAcP/oAIkAinGgAIqiAIsAcqAAiIwAc6AAjQB0oACAjgB1/+cAj6IAiJAAdqAAkQB3oACIkgB4oACTAHmgAICUAHr/5gCVogCIlgB7oACXAHygAAiYAH2gAJkAfv+I5QCaogCbAH+gAIicAICgAJ0AgaAACJ4AgqAAnwCD/4jkAKCiAKEAhKAAiKIAhaAAowCGoAAopACHoACloADjAIimAIigAKcAiaAAiKgAiqAAqQCLoAAoqgCMUACrUADiAIisAI1QAK0AjlAAiK4Aj1AArwCQUAACsFIAsQCR/+EAiLIAklAAswCTUACItACU' $digital7monottf &= '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' $digital7monottf &= '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' $digital7monottf &= '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' $digital7monottf &= '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' $digital7monottf &= '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' $digital7monottf &= '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' $digital7monottf &= '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' $digital7monottf &= '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' $digital7monottf &= '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' $digital7monottf &= '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' $digital7monottf &= 'aUEDFCBwbGVhAAZjEG9udHUAonVzLgAwMTIzNDU2NwA4OQBDAHIAZRAAYQB0gAJkACAQAGIAeYACUwBpBAB6gAhuAGsAb1GAB0EAbIAGeIATblWAEmWAGS6ACqmAATLUADCAADiCGXSAHYETWC0AN4IPgRpsgANyUYAmZwBogA9zggZlO4ADgSF2gjmBFIENdACgcAA6AC+AAHeCAF4ugBKFKIEXgRZugApjUYBIbQBEgilpgBBh64AQgThNgAtugAGPDI8IGiBGCzFAFEEwIABPRUAWdMABMAAzQAEx9UABOkA3NEABwwdFOlceV/lSXwnvSEbCI2XACWFRQgIgAGbABXLAAXCNQhRzwi1BMSAAdcIP4C4ADQAKwA1DCUMRem3CCmPAJ0kKwRBBHWHrRAPBCm7AInVEUUEJQVaKMcBNM0BRNQA2QEqAOAA5AAACAAIADP+IABoRAGsAAAECAkAJAwAEAAUAgAYABwAIAAmAJQgLAAyAJw4ADwAAEAARABIAEwAAFAAVABYAFwAAGAAZABoAGwCAHAAdAB4AH4AfACEAIgAjACQAACUAJgAnACgAgCkAKgArACyAawYuAE/REjoAOwA8AAA9AD4APwBARcAvQsA5RABFYBRHAABIAEkASgBLFABMQD1OAEVQAFEEAFJANlQAVQBWAABXAFgAWQBaAABbAFwAXQBeEABfAGDAIsYAtgAAtwC0ALUAhwAAsgCzAIsETqhVTEwjHAMgGgKgGCgB//9gAQGDAgEEAAK8AABvHAK8/AE1p4sDAEUj4wJgBWAB' $digital7monottf = _Base64Decode($digital7monottf) Local $tSource = DllStructCreate('byte[' & BinaryLen($digital7monottf) & ']') DllStructSetData($tSource, 1, $digital7monottf) Local $tDecompress _WinAPI_LZNTDecompress($tSource, $tDecompress, 33992) $tSource = 0 Local $bString = Binary(DllStructGetData($tDecompress, 1)) If $bSaveBinary Then Local $hFile = FileOpen($sSavePath & "\digital-7 (mono).ttf", 18) FileWrite($hFile, $bString) FileClose($hFile) EndIf Return $bString EndFunc ;==>_digital7monottf Func _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 ;==>_Base64Decode Func _WinAPI_LZNTDecompress(ByRef $tInput, ByRef $tOutput, $iBufferSize) $tOutput = DllStructCreate("byte[" & $iBufferSize & "]") If @error Then Return SetError(1, 0, 0) Local $aRet = DllCall("ntdll.dll", "uint", "RtlDecompressBuffer", "ushort", 0x0002, "struct*", $tOutput, "ulong", $iBufferSize, "struct*", $tInput, "ulong", DllStructGetSize($tInput), "ulong*", 0) If @error Then Return SetError(2, 0, 0) If $aRet[0] Then Return SetError(3, $aRet[0], 0) Return $aRet[6] EndFunc ;==>_WinAPI_LZNTDecompress Br, UEZ1 point
-
Multiple mouse cursor - (Locked)
xdelage reacted to TheLaughingMan for a topic
HotKeySet("{ESC}", "_exit") HotKeySet("{F10}", "_secondMouse") $mouse = MouseGetPos() $dll = DllOpen("user32.dll") $toggle = 0 #include <Misc.au3> #include <GUIConstantsEx.au3> #include <WindowsConstants.au3> #include <EditConstants.au3> #include <StaticConstants.au3> $MiceX2 = GUICreate("MiceX2", 184, 92, 192, 124) $xDistanceInput = GUICtrlCreateInput("200", 128, 0, 49, 21) $xInfoLabel = GUICtrlCreateLabel("X Distance from Mouse", 8, 4, 114, 17) $yInfoLabel = GUICtrlCreateLabel("Y Distance from Mouse", 8, 28, 114, 17) $yDistanceInput = GUICtrlCreateInput("0", 128, 24, 49, 21) $hotkeyInfo1 = GUICtrlCreateLabel("Start = F10", 16, 48, 83, 17) $hotkeyInfo1 = GUICtrlCreateLabel("Stop = F9", 16, 64, 83, 17) $hotkeyInfo2 = GUICtrlCreateLabel("Exit = ESC", 16, 78, 54, 17) GUISetState(@SW_SHOW) Opt("GUIOnEventMode", 1) ; Change to OnEvent mode GUISetOnEvent($GUI_EVENT_CLOSE, "_exit") _load() While 1 Sleep(100) WEnd Func _secondMouse() While 1 Sleep(25) $mouse = MouseGetPos() ToolTip("^", $mouse[0] + GUICtrlRead($xDistanceInput) - 10, $mouse[1] + GUICtrlRead($yDistanceInput)) If _IsPressed("01", $dll) Then _mouseClick() If _IsPressed("1B", $dll) Then _save() Exit EndIf If _IsPressed("78", $dll) Then ToolTip("") ExitLoop EndIf WEnd EndFunc ;==>_secondMouse Func _mouseClick() ToolTip("") MouseUp("left") MouseMove($mouse[0] + GUICtrlRead($xDistanceInput), $mouse[1] + GUICtrlRead($yDistanceInput), 0) MouseDown("left") Sleep(50) MouseUp("left") MouseMove($mouse[0], $mouse[1], 0) ToolTip("^", $mouse[0] + GUICtrlRead($xDistanceInput), $mouse[1] + GUICtrlRead($yDistanceInput)) EndFunc ;==>_mouseClick Func _exit() DllClose($dll) _save() Exit EndFunc ;==>_exit Func _save() IniWrite(@ScriptDir & "\MouseX2.ini", "Distance", "X", GUICtrlRead($xDistanceInput, 1)) IniWrite(@ScriptDir & "\MouseX2.ini", "Distance", "Y", GUICtrlRead($yDistanceInput, 1)) EndFunc ;==>_save Func _load() GUICtrlSetData($xDistanceInput, IniRead(@ScriptDir & "\MouseX2.ini", "Distance", "X", "200")) GUICtrlSetData($yDistanceInput, IniRead(@ScriptDir & "\MouseX2.ini", "Distance", "Y", "0")) EndFunc ;==>_load Tested it on two windows of Paint, and it works well1 point