Jump to content

Recommended Posts

Hello,

I am back once again to ask for assistance. I am just trying to fool around with the "ImageSearch" function in order to detect when certain elements appear on my active window to then respond to. To begin testing this I simply cut out a small segment of my background, saved it as a BMP, and used that as the bmp for the search function. I had hoped for it to just run through quickly and say it found it and spit out the X Y coords of where it was found. Instead I am getting this : http://screencast.com/t/MD9aOzPhETE

Here's my script thus far :

#Include <msgBoxConstants.au3>
#Include <ImageSearch.au3>

global $x = 0
global $y = 0
CheckForImage ()
Func checkForImage ()
   Local $Search = _ImageSearchArea ('ninjaCheck.bmp', 1, 0, 0, 1366, 768, $x, $y, 100)
   If $Search = 1 Then
      MsgBox ($IDOK,"Found",$resultPosition)
   EndIf
EndFunc
While 1
   Sleep (10)
WEnd

What I would like assistance with is how do I "Debug" this in order to see where/why it is failing.

I've reviewed https://www.autoitscript.com/wiki/FAQ#How_can_I_debug_my_script.3F but I am not entirely sure how to apply the information. If I could get a return on "Hey, this Func or This Line is where I died" , that would be awesome.

Any suggestions on how I can tackle this issue?

Thank you for your time!

-Reiz

 

checkNinja.bmp is " " around it now and it has the same result 

Edited by Reizvoller
I changed and tested my scripting
Link to post
Share on other sites
  • Moderators

Reizvoller,

Given the name of the image for which you are checking, you might like to read the Forum rules before you post again.

M23

Public_Domain.png.2d871819fcb9957cf44f4514551a2935.png Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind

Open spoiler to see my UDFs:

Spoiler

ArrayMultiColSort ---- Sort arrays on multiple columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

 

Link to post
Share on other sites
16 hours ago, Melba23 said:

Reizvoller,

Given the name of the image for which you are checking, you might like to read the Forum rules before you post again.

M23

Howdy!

"Given the name of the image for which you are checking" , I am guessing that is referencing "ninjaCheck.bmp".

I've reviewed the forum rules, as you suggested, but... I don't see what you are trying to say to me. This isn't an attempt at being facetious or evading but honestly asking for guidance with what you are saying to me. Thank you!

Link to post
Share on other sites
  • Developers
8 minutes ago, Reizvoller said:

what you are saying to me

Thought that would be pretty obvious...right.. as your guess is correct?
In case it isn't clear then read the part about Game automation.

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 post
Share on other sites
4 minutes ago, Jos said:

Thought that would be pretty obvious...right.. as your guess is correct?
In case it isn't clear then read the part about Game automation.

Jos

Okay, I have done so. How does this apply to me? 
When did I reference a game in my posts? 

"To begin testing this I simply cut out a small segment of my background, saved it as a BMP, and used that as the bmp for the search function." 

So...Am I being told to review rules rather than getting actual replies regarding my question due to an assumption that I am trying to automate game processes?

I've attached a copy of my desktop background and the segment I cut out to hopefully further emphasise the fact that I am not breaking any rules... 

d092ecd9fae122c90aedd6734647ef23.jpg

ninjaCheck.bmp

Edited by Reizvoller
More evidence
Link to post
Share on other sites
  • Developers
3 minutes ago, Reizvoller said:

Okay, I have done so. How does this apply to me? 

You have just been pointed to the rules since you used a term used in games.
In case we were convinced it was against our rules, you wouldn't have been able to post in it anymore, as we would have closed it already.

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 post
Share on other sites
1 minute ago, Jos said:

You have just been pointed to the rules since you used a term used in games.
In case we were convinced it was against our rules, you wouldn't have been able to post in it anymore, as we would have closed it already.

Jos

Hello,

So assumptions were made rather than asking questions for clarification. I understand.

I'd like to bring this thread back on topic since we now validated it as an actual question that doesn't break the rules.

#Include <msgBoxConstants.au3>
#Include <ImageSearch.au3>

global $x = 0
global $y = 0
CheckForImage ()
Func checkForImage ()
   Local $Search = _ImageSearch ("ninjaCheck.bmp", 1, $x, $y, 50)
   If $Search = 1 Then
      MsgBox ($IDOK,"Found",$resultPosition)
   EndIf
EndFunc
While 1
   Sleep (10)
WEnd

I've re-modified my script to try the _ImageSearch function rather than _ImageSearchArea . This tosses the same error pop-up that I linked to in my original post. 

Link to post
Share on other sites
  • Developers
Just now, Reizvoller said:

So assumptions were made rather than asking questions for clarification. I understand.

What about you step of your high horse before continuing?
This is our standard approach and when you don't like then that is your problem... sorry. ;) 

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 post
Share on other sites
1 minute ago, Jos said:

What about you step of your high horse before continuing?
This is our standard approach and when you don't like then that is your problem... sorry. ;) 

Jos

To iterate again... I'd like to bring this thread back on topic since we now validated it as an actual question that doesn't break the rules.

#Include <msgBoxConstants.au3>
#Include <ImageSearch.au3>

global $x = 0
global $y = 0
CheckForImage ()
Func checkForImage ()
   Local $Search = _ImageSearch ("ninjaCheck.bmp", 1, $x, $y, 50)
   If $Search = 1 Then
      MsgBox ($IDOK,"Found",$resultPosition)
   EndIf
EndFunc
While 1
   Sleep (10)
WEnd

I've re-modified my script to try the _ImageSearch function rather than _ImageSearchArea . This tosses the same error pop-up that I linked to in my original post. 

Jos : You are a skilled developer , do you have any insight you can provide regarding this?

Link to post
Share on other sites
  • Developers
1 minute ago, Reizvoller said:

To iterate again.

 

1 minute ago, Reizvoller said:

Jos : You are a skilled developer , do you have any insight you can provide regarding this?

Seriously...   after first trying to tell me to shut up?  
simple answer: No

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 post
Share on other sites
8 minutes ago, Jos said:

 

Seriously...   after first trying to tell me to shut up?  
simple answer: No

Jos

Howdy,

I am sorry you somehow feel that my posts were saying "Shut up" to you. Could you cite the exact line that suggests that notion? I'd rather not make that impression again in the future.

Regarding your reply I accept it and thank you for taking the time to respond.

Now, to iterate once again to get this thread back on topic...

After manipulating my script multiple times and running it in two different environments with clean installs of AutoIt I have come to the conclusion that the library of ImageSearch.au3 is erroneous and I've reached out to the developer of said script. If I get any useful information in return I will post it here so everyone may have said information.

-Reiz 

Link to post
Share on other sites
  • Developers

 

Just now, Reizvoller said:

Now, to iterate once again to get this thread back on topic...

... ahh that is why you reported me. It never dawned on you that I wouldn't appreciate you keep on going on and on about it.

Let me help you to stop this BS

*click*

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 post
Share on other sites
  • Jos locked this topic
  • Moderators

Reizvoller,

I would strongly suggest a serious change of attitude if you want to stick around here.

You posted a question using a filename which in our experience indicated that the question was against the forum rules. Rather then simply assuming that the question was game-related and closing the thread, I gently pointed you to the Forum rules so as to prevent any future unpleasantness. I fail to see why you have suddenly become all excited and started acting as if we had come over all heavy-handed. What you saw was our normal response when we have doubts about a question - all you needed to do was to assure us that your question was legal and we could have avoided a great deal of annoyance all round. As it is you have managed to alienate 2 of the Mods here in fairly short order - pretty good going after only 9 posts.

So I suggest you wind your neck very firmly back in and try in future not to take unwarranted offence when absolutely none has been offered.

M23

 

 

Public_Domain.png.2d871819fcb9957cf44f4514551a2935.png Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind

Open spoiler to see my UDFs:

Spoiler

ArrayMultiColSort ---- Sort arrays on multiple columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

 

Link to post
Share on other sites
Guest
This topic is now closed to further replies.
  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By Sachs
      I have a few questions:
      BACKGROUND
      I am using Oracle Application Testing Suite's OpenScript 13 (Eclipse IDE), Oracle Java 6, and AutoIt.
      My goal is to access a given Internet Explorer browser window (`$ieTitle`), send the keystroke of "shift-control-s" for "Save As" functionality to be invoked, so that I can download a (PDF) file to a given location ($fileName).
      The code within the script `DownloadPdfFile.au3` is
      $ieTitle = $CmdLine[1] $ieControl = "AVL_AVView31" $fileName = $CmdLine[2] ControlFocus($ieTitle, "", $ieControl) ControlSend($ieTitle, "", $ieControl, "+^s") ; Save as dialog $winTitle = "Save As" ; wait for Save As window WinWait($winTitle) ; activate Save As window If Not WinActive($winTitle) Then WinActivate($winTitle) ControlFocus($winTitle,"","Edit1") ControlSetText($winTitle,"","Edit1",$fileName) Sleep(2000) ControlClick($winTitle,"","Button3") Exit 0 So I compiled it with SciTE-Lite (32-bit Version 4.4.6 , creating `DownloadPdfFile.exe`, and so within my Java code, I have
      String command = autoItExePath + " " + scriptPath + " \"" + winTitle + "\" " + directoryPath.toFile().toString() + "\\Form9Report" + sdf_ddmmmyyyy.format(new Date()) + ".pdf"; try { Process process = Runtime.getRuntime().exec(command); process.waitFor(); } catch (Exception e) { logger.error("Exception " + e.getMessage(), e); } The output would be like `C:\Program Files (x86)\AutoIt3\AutoIt3.exe C:\...\AutoItScripts\DownloadPdfFile.au3 "https://****.com/****.exe?temp_id=**** - Internet Explorer" C:\...\Report05Apr2022.pdf"` which does run without the $cmdLine successfully. 
      When executed by Java, I see in the taskbar an icon, which I right-click has "[Check] Script Paused" and "Exit".
      Questions:
      (1) How do I unpause the script?
      (2) How do I avoid having the script paused?
      Any help is appreciated.
    • By VIP
      Use MouseClick()  need:
      #RequireAdmin  
      Dll is already integrated in UDF !
      ; #INDEX# =============================================================== ; Title .........: ImageSearch ; AutoIt Version : 3.x ; Language ......: English ; Description ...: Check image Appears or Not and Return the position of an image on the desktop ; Author(s) .....: Dao Van Trong - TRONG.LIVE ; ======================================================================= ; #CURRENT# ============================================================= ; _ImageSearch ; _ImageSearch_Area ; _ImageSearch_Wait ; _ImageSearch_WaitArea ; ======================================================================== ;========================================================================= ; ; Author:...........: AutoIT VietNam : Dao Van Trong - TRONG.LIVE ; Description:......: Check image Appears or Not ; Find and return the position of an image on the desktop ; Syntax:........... _ImageSearch_Area, _ImageSearch ; Parameter(s):..... $_ImagePath: The image to locate on the desktop ; May be a list of image by delimited by "|" ; i.e: $_ImagePath = "image1.bmp|image2.bmp|image3.bmp" ; $P_x1 $P_y1: Position of 1st point ; $P_x2 $P_y2: Position of 2nd point - Default is last botton right of desktop ; $_Tolerance: 0 for no tolerance (0-255). Needed when colors of image differ from desktop. e.g GIF ; $_CenterPos: boolen. True will return $array[1] x $array[2] is center of image found. ; False will return top-left position ; Return Value(s):.. Return an array has 3 item ; On Success: $array[0] 1 ; On Failure: $array[0] 0 ; DLL not found or other error: $array[0] -1 ; $array[1] x $array[2]: position of image what found on desktop ; ; Note:............. Use _ImageSearch to search the entire desktop ; _ImageSearch_Area to specify a desktop region to search ; $_ImagePath with more item need more time appear on screen before function can detect. ; Decrease sleep time in the loop to detect faster. But less performance. I.e CPULoad increased ; ;======================================================================== EG 1:
      ;~ Opt("MustDeclareVars", 1) ;~ #AutoIt3Wrapper_UseX64=y ;~ #AutoIt3Wrapper_Change2CUI=y #RequireAdmin #include "_ImageSearch_UDF.au3" HotKeySet("{Esc}", "_Exit") ; Press ESC for exit Func _Exit() Exit 0 EndFunc ;==>_Exit Global Const $Ask_On_Found = 0 Global Const $Mouse_Move_On_Found = 1 Global Const $Mouse_Click_On_Found = 0 Global Const $iSleep_Time=500 Global $sCount = 0, $_Image_1 = @ScriptDir & "\example.bmp" ; First, use this function to create a file bmp, maybe a desktop icon for example') MsgBox(64 + 262144, 'ImageSearch', 'At first, create a file bmp,' & @CRLF & 'photos that will search on the screen!') _ImageSearch_Create_BMP($_Image_1) ConsoleWrite("! Search for images: " & $_Image_1 & @CRLF & '! Searching on the screen ...' & @CRLF) While 1 ToolTip('(Press ESC for EXIT) Searching ...', 1, 1) Sleep($iSleep_Time) $sCount += 1 Local $return = _ImageSearch($_Image_1) If $return[0] = 1 Then ConsoleWrite('- [' & $sCount & '] Image found:' & " X=" & $return[1] & " Y=" & $return[2] & @CRLF) If $Mouse_Move_On_Found Then MouseMove($return[1], $return[2]) Sleep($iSleep_Time) EndIf If $Mouse_Click_On_Found Then MouseClick("left", $return[1], $return[2]) ToolTip('(Press ESC for EXIT) - [' & $sCount & "] Image found:" & " X=" & $return[1] & " Y=" & $return[2], 1, 1) If $Ask_On_Found Then Local $ask = MsgBox(6 + 262144, 'Success [' & $sCount & ']', 'Image found:' & " X=" & $return[1] & " Y=" & $return[2]) If $ask = 2 Or $ask = 3 Or $ask = 5 Or $ask = 7 Then Exit ;No, Abort, Cancel, and Ignore If $ask = 10 Then _ImageSearch_Create_BMP($_Image_1) ; Continue ;Try Again EndIf EndIf Sleep(200) WEnd  
      Video demo:
       
       
      [+] When any problem or error occurs, please make sure that:
      - Downloaded and used the latest version.
      - Set screen Screen Scale and layout = 100%
      - Installed display driver.
      - Tried turning off the antivirus
      - Full installation: Microsoft Visual C++ Redistributable  2005->2022
      [+] You can download the AIO version of the Visual C++ Redistributable here: 
      -> https://www.mediafire.com/file/0ak8dcj9mdn7nyq/VisualCppRedist_AIO_2005-2022_x86_x64_%5Btrong.live%5D.zip/file
      -> FOR Windows XP: https://www.mediafire.com/file/5m5lnr1kfg73tc9/VisualCppRedist_AIO_2005-2019_x86_XP_%5Btrong.live%5D.zip/file
      <!> Password for Extract: trong.live
       
      [+] The last full version of SCITE4AutoIT supports windows XP:
      https://www.autoitscript.com/autoit3/scite/download/archive/v19.1127.1402.0-SciTE4AutoIt3.exe
       
    • By MASKED
      hi guys
      i am using imagesearch2015 library. (used another one before)
      but transparency parameter doesn't working. how i can solve this problem.
       
      here's my code
      #include "ImageSearch2015.au3" #include <Date.au3> ; Script Start - Add your code below here Global $x = 0 Global $y = 0 HotKeySet("{UP}","hey") HotKeySet("{DOWN}","heyo") Func hey() $balikcisaniye = _Date_Time_GetTickCount() $array = _ImageSearchArea("bul.bmp", 1, 0, 0, @DesktopWidth, @DesktopHeight, $x, $y, 2,0x000000) if($array = True) Then $balikcisaniye1 = _Date_Time_GetTickCount() MouseMove($x,$y) MsgBox(1,"","Found." & $x & "-" & $y & " / " & $balikcisaniye1-$balikcisaniye) Else MsgBox(1,"","Not Found.") EndIf EndFunc Func heyo() exit EndFunc while 1 WEnd when i disable transparency parameter, it work normal. but with parameter, this function is always returning false.
      please help.
       
      here's library i use :
       
       
    • By zuladabef
      Hello,
      I have been using Image Search UDF 2.0.2.0 without any issue, but today when I went to run the script I have been using for a few months now, I received the following error.  How can I determine where the issues lies?  Any suggestions on what the issue might be?  As far as I can tell, the variable has been declared.  I included the function from the UDF.  Thanks!
      "c:\install\include\_ImageSearch_UDF.au3" (117) : ==> Variable used without being declared.: If (FileExists($ImageSearchDLL_Path) = 0) Then _ImageSearch_CheckDLL() If (FileExists(^ ERROR  
       
      #include-once ; #INDEX# ======================================================================================================================= ; Title .........: ImageSearch ; AutoIt Version : 3.x ; Language ......: English ; Description ...: Check image Appears or Not and Return the position of an image on the desktop ; Author(s) .....: Dao Van Trong - TRONG.LIVE ; =============================================================================================================================== ; #CURRENT# ===================================================================================================================== ; _ImageSearch($_ImagePath, $_Tolerance = 0, $_CenterPos = True) ; _ImageSearch_Area($_ImagePath, $P_x1 = 0, $P_y1 = 0, $P_x2 = @DesktopWidth, $P_y2 = @DesktopHeight, $_Tolerance = 0, $_CenterPos = True) ; _ImageSearch_Wait($_ImagePath, $_TimeOut, $_Tolerance = 0, $_CenterPos = True) ; _ImageSearch_WaitArea($_ImagePath, $_TimeOut, $P_x1, $P_y1, $P_x2 = @DesktopWidth, $P_y2 = @DesktopHeight, $_Tolerance = 0, $_CenterPos = True) ; =============================================================================================================================== ; #VARIABLE# =================================================================================================================== Global $ImageSearch_Debug = True Global Const $ImageSearch_SleepTime = 100 If $ImageSearch_Debug Then ConsoleWrite("--\\ ImageSearch //: DEBUG -- OSArch : " & @OSArch & " // AutoIT ver: " & @AutoItVersion & (@AutoItX64 = 1 ? " X64" : " x86") & @CRLF) Global $_ImageSearchDLL_Path = @TempDir & "\_ImageSearch.dll" If FileExists(@ScriptDir & "\_ImageSearch.dll") Then $_ImageSearchDLL_Path = @ScriptDir & "\_ImageSearch.dll" If @AutoItX64 Then $_ImageSearchDLL_Path = @TempDir & "\_ImageSearch_x64.dll" If FileExists(@ScriptDir & "\_ImageSearch_x64.dll") Then $_ImageSearchDLL_Path = @ScriptDir & "\_ImageSearch_x64.dll" EndIf Global Const $ImageSearchDLL_Path = $_ImageSearchDLL_Path ; =============================================================================================================================== ; #INTERNAL_USE_ONLY# =========================================================================================================== _ImageSearch_CheckDLL() ; =============================================================================================================================== ;=============================================================================== ; ; Author:...........: AutoIT VietNam : Dao Van Trong - TRONG.LIVE ; Description:......: Check image Appears or Not ; Find and return the position of an image on the desktop ; Syntax:........... _ImageSearch_Area, _ImageSearch ; Parameter(s):..... $_ImagePath: The image to locate on the desktop ; May be a list of image by delimited by "|" ; i.e: $_ImagePath = "image1.bmp|image2.bmp|image3.bmp" ; $P_x1 $P_y1: Position of 1st point ; $P_x2 $P_y2: Position of 2nd point - Default is last botton right of desktop ; $_Tolerance: 0 for no tolerance (0-255). Needed when colors of image differ from desktop. e.g GIF ; $_CenterPos: boolen. True will return $array[1] x $array[2] is center of image found. ; False will return top-left position ; Return Value(s):.. Return an array has 3 item ; On Success: $array[0] 1 ; On Failure: $array[0] 0 ; DLL not found or other error: $array[0] -1 ; $array[1] x $array[2]: position of image what found on desktop ; ; Note:............. Use _ImageSearch to search the entire desktop ; _ImageSearch_Area to specify a desktop region to search ; $_ImagePath with more item need more time appear on screen before function can detect. ; Decrease sleep time in the loop to detect faster. But less performance. I.e CPULoad increased ; ;=============================================================================== Func _ImageSearch($_ImagePath, $_Tolerance = 0, $_CenterPos = True) Return _ImageSearch_Area($_ImagePath, 0, 0, @DesktopWidth, @DesktopHeight, $_Tolerance, $_CenterPos) EndFunc ;==>_ImageSearch ; * -----:| Dao Van Trong - TRONG.LIVE Func _ImageSearch_Area($_ImagePath, $P_x1 = 0, $P_y1 = 0, $P_x2 = @DesktopWidth, $P_y2 = @DesktopHeight, $_Tolerance = 0, $_CenterPos = True) Local $_Return[3] = [0, 0, 0], $_TempVar, $i, $ImageSearchDLL_Path $_Return[0] = -1 If (FileExists($_ImagePath) = 0) And (StringInStr($_ImagePath, "|") = 0) Then If $ImageSearch_Debug Then ConsoleWrite("! Image file not found - Can't search !" & @CRLF & "! " & $_ImagePath & @CRLF) Return SetError(-1, 0, $_Return) EndIf If $P_x1 > $P_x2 Then ; change position to default top-left and botton-right $_TempVar = $P_x1 $P_x1 = $P_x2 $P_x2 = $_TempVar EndIf If $P_y1 > $P_y2 Then $_TempVar = $P_y1 $P_y1 = $P_y2 $P_y2 = $_TempVar EndIf Local $_Find_IMG_X, $_Find_IMG = StringSplit($_ImagePath, '|', 2) For $i = 0 To (UBound($_Find_IMG) - 1) Step +1 $_Find_IMG_X = $_Find_IMG[$i] If (FileExists($_Find_IMG_X) = 0) Then If $ImageSearch_Debug Then ConsoleWrite("! Image file not found !" & @CRLF & "! " & $_Find_IMG_X & @CRLF) ContinueLoop EndIf If $_Tolerance > 0 Then $_Find_IMG_X = "*" & $_Tolerance & " " & $_Find_IMG_X If (FileExists($ImageSearchDLL_Path) = 0) Then _ImageSearch_CheckDLL() Local $result = DllCall($ImageSearchDLL_Path, "str", "ImageSearch", "int", $P_x1, "int", $P_y1, "int", $P_x2, "int", $P_y2, "str", $_Find_IMG_X) If Not IsArray($result) Then ; dll not found or other error If $ImageSearch_Debug Then ConsoleWrite("! Dll not found or Call Dll error !" & @CRLF) $_Return[0] = -1 Return SetError(1, 0, $_Return) EndIf If Int($result[0]) = 0 Then ; search not found If $ImageSearch_Debug Then ConsoleWrite("! Search not found !" & @CRLF) $_Return[0] = 0 ContinueLoop Else $_Return[0] = 1 If $ImageSearch_Debug Then ConsoleWrite("+ Dll Return: " & $result[0] & @CRLF) Local $array = StringSplit($result[0], "|") If $_CenterPos Then $_Return[1] = Round(Number($array[2]) + (Number($array[4]) / 2)) $_Return[2] = Round(Number($array[3]) + (Number($array[5]) / 2)) If $ImageSearch_Debug Then ConsoleWrite("- CP: " & $_Return[1] & " " & $_Return[2] & @CRLF) Else $_Return[1] = Number($array[2]) $_Return[2] = Number($array[3]) If $ImageSearch_Debug Then ConsoleWrite("- : " & $_Return[1] & " " & $_Return[2] & @CRLF) EndIf ExitLoop EndIf Next Return $_Return EndFunc ;==>_ImageSearch_Area ; * -----:| Dao Van Trong - TRONG.LIVE ;=============================================================================== ; ; Description:......Wait for a specified number of milliseconds for an image to appear ; ; Syntax: _ImageSearch_Wait, _ImageSearch_WaitArea ; Author:...........This function copied from original UDF shared from autoitscript forum. ; I have rename them for easy to remember ; I dont know who are author. Please contact me if you are author of them. I will leave a copyright ; Parameter(s):.....$_ImagePath: The image to locate on the desktop ; May be a list of image by delimited by "|" ; i.e: $_ImagePath = "image1.bmp|image2.bmp|image3.bmp" ; $_TimeOut: Timeout wait after return "not found" result (in milliseconds) ; $P_x1 $P_y1: Position of first point ; $P_x2 $P_y2: Position of second point - Default is last botton right of desktop ; $_Tolerance: 0 for no tolerance (0-255). Needed when colors of image differ from desktop. e.g GIF ; $_CenterPos: boolen. True will return $array[1] x $array[2] is center of image found. False will return top-left position ; Return Value(s):..On Success: Returns 1 ; On Failure: Returns 0 ; $_ImagePath with more item need more time appear on screen before function can detect. ; Decrease sleep time in the loop to detect faster. But less performance. I.e CPULoad increased ; ;=============================================================================== Func _ImageSearch_Wait($_ImagePath, $_TimeOut, $_Tolerance = 0, $_CenterPos = True) Local $_Return[3] = [0, 0, 0] Local $_StartTime = TimerInit() While TimerDiff($_StartTime) < $_TimeOut Sleep($ImageSearch_SleepTime) $_Return = _ImageSearch_Area($_ImagePath, 0, 0, @DesktopWidth, @DesktopHeight, $_Tolerance, $_CenterPos) If $_Return[0] > 0 Then ExitLoop WEnd Return $_Return EndFunc ;==>_ImageSearch_Wait ; * -----:| Dao Van Trong - TRONG.LIVE Func _ImageSearch_WaitArea($_ImagePath, $_TimeOut, $P_x1, $P_y1, $P_x2 = @DesktopWidth, $P_y2 = @DesktopHeight, $_Tolerance = 0, $_CenterPos = True) Local $_Return[3] = [0, 0, 0] Local $_StartTime = TimerInit() While TimerDiff($_StartTime) < $_TimeOut Sleep($ImageSearch_SleepTime) $_Return = _ImageSearch_Area($_ImagePath, $P_x1, $P_y1, $P_x2, $P_y2, $_Tolerance, $_CenterPos) If $_Return[0] > 0 Then ExitLoop WEnd Return $_Return EndFunc ;==>_ImageSearch_WaitArea ; * -----:| Dao Van Trong - TRONG.LIVE Func _ImageSearch_CheckDLL() ; * -----:| ImageSearchDLL Binary Local $DllBinary = '0x4D5A90000300000004000000FFFF0000B800000000000000400000000000000000000000000000000000000000000000000000000000000000000000080100000E1FBA0E00B409CD21B8014CCD21546869732070726F6772616D2063616E6E6F742062652072756E20696E20444F53206D6F64652E0D0D0A2400000000000000D6EE294F928F471C928F471C928F471CD4DE9A1C908F471CD4DE981C968F471CD4DEA71C998F471CD4DEA61C908F471C9BF7C41C938F471C9BF7D41C9F8F471C928F461CD78F471C9FDDA21C918F471C9FDD9B1C938F471C9FDD9C1C938F471C9FDD991C938F471C52696368928F471C000000000000000000000000000000000000000000000000504500004C010500A488E25B0000000000000000E00002210B010C00002200000016000000000000FC290000001000000040000000000010001000000002000005000100000000000500010000000000008000000004000000000000020040010000100000100000000010000010000000000000100000006044000065000000C8440000A000000000600000E001000000000000000000000000000000000000007000005802000050410000380000000000000000000000000000000000000000000000000000001043000040000000000000000000000000400000300100000000000000000000000000000000000000000000000000002E74657874000000EB200000001000000022000000040000000000000000000000000000200000602E72646174610000320B000000400000000C000000260000000000000000000000000000400000402E64617461000000C8030000005000000002000000320000000000000000000000000000400000C02E72737263000000E0010000006000000002000000340000000000000000000000000000400000402E72656C6F6300005802000000700000000400000036000000000000000000000000000040000042000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' $DllBinary &= 'B801000000C20C00CCCCCCCCCCCCCCCC568BF185F60F8497010000803E000F848E010000578B3DA440001068A441001056FFD783C40885C075035F5EC368AC41001056FFD783C40885C075085FB8C0C0C0005EC368B441001056FFD783C40885C075085FB8808080005EC368BC41001056FFD783C40885C075085FB8FFFFFF005EC368C441001056FFD783C40885C075085FB8800000005EC368CC41001056FFD783C40885C075085FB8FF0000005EC368D041001056FFD783C40885C075085FB8800080005EC368D841001056FFD783C40885C075085FB8FF00FF005EC368E041001056FFD783C40885C075085FB8008000005EC368E841001056FFD783C40885C075085FB800FF00005EC368F041001056FFD783C40885C075085FB8808000005EC368F841001056FFD783C40885C075085FB8FFFF00005EC3680042001056FFD783C40885C075085FB8000080005EC3680842001056FFD783C40885C075085FB80000FF005EC3681042001056FFD783C40885C075085FB8008080005EC3681842001056FFD783C40885C075085FB800FFFF005EC3682042001056FFD783C408F7D81BC0257F7F7FFF5F05808080005EC383C8FF5EC3CCCCCCCCCCCCCCCCCC568BF18BC68A1080FA20740580FA09750340EBF18A0884C9743F80F92D740580F92B750140803830752F8A480180F978740580F95875220FBE400250FF15A840001083C40485C074106A106A0056FF15AC40001083C40C5EC356FF15B040001083C4045EC3CCCCCCCCCCCCCCCCCCCCCC558BEC81EC6C040000A10050001033C58945FC8B450C53568B7508578BF98985B8FBFFFF8B45105289BDB0FBFFFF89B5A4FBFFFF8985ACFBFFFFFF15184000108985A8FBFFFF85C00F844302000033C9C785C0FBFFFF280000005166898DCEFBFFFF33DB8D8DC0FBFFFF889DBFFBFFFF515353535750FF151440001085C00F84E6010000668BBDCEFBFFFF0FB7C73B45140F8CD30100008B8DACFBFFFF6683FF100F94C088018B8DB8FBFFFF8B85C4FBFFFF89068B85C8FBFFFF89018B068BB5C8FBFFFF0FAFC68985B4FBFFFFC1E002508985A0FBFFFFFF15B84000108BD883C404899DACFBFFFF85DB0F847A0100006683FF080F94C08885BEFBFFFF84C0750CB820000000668985CEFBFFFF8BBDA8FBFFFFF7DE89B5C8FBFFFF8BB5B0FBFFFF5657FF15104000106A0089859CFBFFFF8D85C0FBFFFF508B85B8FBFFFF53FF306A005657FF151440001085C00F840501000080BDBEFBFFFF000F84F1000000B800040000E8F61C00008BC45068000100006A0057898598FBFFFFFF150C4000108B95A4FBFFFF8B02250300008079054883C8FC407409BF040000002BF8EB0233FF8B85B8FBFFFF8D73FF89BDB0FBFFFF8B088BC10FAFC70385B4FBFFFF03F08B85A0FBFFFF83C0FC03D833C08985B4FB' $DllBinary &= 'FFFF85C97E6E8B8DB8FBFFFF8D49002BF733FF393A7E4CEB068D9B000000000FB606478B8D98FBFFFF4E8B14818BC2C1E8080FB6C80FB6C2C1E0080BC8C1EA10C1E1080FB6C28B95A4FBFFFF0BC8890B83EB043B3A7CC88B85B4FBFFFF8B8DB8FBFFFF8BBDB0FBFFFF408985B4FBFFFF3B017C9B8BBDA8FBFFFF8B9DACFBFFFFC685BFFBFFFF018B859CFBFFFF85C074085057FF1510400010FFB5A8FBFFFFFF150840001080BDBFFBFFFF00751085DB740C53FF15A040001083C40433DB8BC38DA588FBFFFF5F5E5B8B4DFC33CDE8D61200008BE55DC3CCCCCCCCCCCCCCCC558BEC81EC74020000A10050001033C58945FC8B450C538B5D088985E0FDFFFFC700FFFFFFFF33C056578B7D108995D4FDFFFF898DD8FDFFFFC785E8FDFFFF0000000038010F84F706000085FF6A2E0F48F85189BDDCFDFFFFFF15BC4000108BF083C40885F674014683FF018B3DA44000100F8F0E01000085F6745F682842001056FFD783C40885C00F84F7000000682C42001056FFD783C40885C00F84E4000000683042001056FFD783C40885C00F84D1000000683442001056FFD783C40885C00F84BE000000683842001056FFD783C40885C00F84AB0000008B85DCFDFFFFC685E7FDFFFF0085C07E178B8DE0FDFFFF8B85E8FDFFFFC70101000000E9CD00000085F67477683C42001056FFD783C40885C075178B8DE0FDFFFF8B85E8FDFFFFC70101000000E9A3000000684042001056FFD783C40885C0742E684442001056FFD783C40885C0741F684842001056FFD783C40885C075248B8DE0FDFFFF89018B85E8FDFFFFEB668B8DE0FDFFFF8B85E8FDFFFFC70102000000EB528B85E8FDFFFFEB448B85E0FDFFFFC685E7FDFFFF01C700010000008B85DCFDFFFF85C07E0348EB0233C050FFB5D8FDFFFFFF3554530010FF15F84000108985E8FDFFFF83F8020F824F0300008B8DE0FDFFFF8B95D4FDFFFF83FAFF740583FBFF750885D2741785DB741383FAFF740583FBFF7513C685EFFDFFFF01EB1133DB33D28995D4FDFFFFC685EFFDFFFF0085C00F85A40000008B0983F9FF0F8E990000003885EFFDFFFF740433D2EB028BC36810200000505251FFB5D8FDFFFF6A00FF15004100108985E8FDFFFF85C0741A80BDEFFDFFFF0075625F5E5B8B4DFC33CDE8671000008BE55DC3FFB5D8FDFFFFFF157440001083F8FF0F849D0200008B85DCFDFFFF85C07E2C4850FFB5D8FDFFFFFF3554530010FF15F84000108985E8FDFFFF83F8020F8270020000C685E7FDFFFF01EB068B85E8FDFFFFC785D0FDFFFF0000000085C00F85740100008B85E0FDFFFFC7000000000085F67439685442001056FFD783C40885C00F84E5010000685842001056FFD783C40885C00F84D2010000686042001056FFD783C40885C00F84BF010000684C420010FF157C4000108BF885FF' $DllBinary &= '0F84AA0100008B3570400010686442001057FFD66874420010578985CCFDFFFFFFD66884420010578985C4FDFFFFFFD668A0420010578985C0FDFFFFFFD668BC420010578985C8FDFFFFFFD68BF0C785ACFDFFFF010000008B85CCFDFFFFC785B0FDFFFF00000000C785B4FDFFFF00000000C785B8FDFFFF0000000085C00F848B0000006A008D8DACFDFFFF518D8DBCFDFFFF51FFD085C0757568040100008D85F0FDFFFF506AFFFFB5D8FDFFFF6A006A00FF156C4000108D85DCFDFFFF508D85F0FDFFFF50FF95C0FDFFFF85C0753368808080008D85E8FDFFFF50FFB5DCFDFFFFFF95C8FDFFFF8B8DE8FDFFFF33D2FFB5DCFDFFFF85C00F45CA898DE8FDFFFFFFD6FFB5BCFDFFFFFF95C4FDFFFF57FF15684000108B85E8FDFFFF80BDEFFDFFFF008BBDE0FDFFFF0F8470020000833F00741C8D8DA8FDFFFF5150FF152041001085C00F84710200008B85B4FDFFFF8D8D90FDFFFF516A1850FF151C40001083FBFF0F85950100008B8594FDFFFF85C00F84C7010000660F6E8D98FDFFFFF30FE6C9660F6EC0F30FE6C0F20F5EC8660F6E85D4FDFFFFF30FE6C0F20F59C8F20F580DF8420010F20F2CD9E98E0100006A006A006A036A006A006800000080FFB5D8FDFFFFFF15644000108BF883FFFF74256A0057FF1560400010506A028985DCFDFFFFFF155C4000108BF085F6751A57FF155840001033C05F5E5B8B4DFC33CDE8A20D00008BE55DC356FF155440001085C0752157FF155840001056FF153C40001033C05F5E5B8B4DFC33CDE8760D00008BE55DC36A008D8DDCFDFFFF51FFB5DCFDFFFF5057FF152C40001056FF153040001057FF15584000108D85CCFDFFFF506A0056FF152841001085C078AD8B85CCFDFFFF85C074A38D8DD0FDFFFF5168884100106A006A0050FF15F04000108B8DD0FDFFFF33D285C08B85CCFDFFFF500F48CA898DD0FDFFFF8B08FF510856FF153C4000108B8DD0FDFFFF85C90F8433FFFFFF8B018D95E8FDFFFF5251FF500C8B85E8FDFFFF85C00F853DFEFFFF8B85D0FDFFFF508B08FF510833C05F5E5B8B4DFC33CDE8AE0C00008BE55DC38B8598FDFFFF85C07436660F6E8D94FDFFFF660F6EC0F30FE6C9F30FE6C0F20F5EC8660F6EC3F30FE6C0F20F59C8F20F580DF8420010F20F2CC18985D4FDFFFF833F007456FFB5B8FDFFFF8B3504400010FFD6FFB5B4FDFFFFFFD680BDE7FDFFFF007537FFB5E8FDFFFFFF151C4100108B95D4FDFFFF6A105352FF37FFB5D8FDFFFF6A00FF15004100105F5E5B8B4DFC33CDE8130C00008BE55DC38B85E8FDFFFF83BDD0FDFFFF008B95D4FDFFFF745B85D2752885DB75248D4A04EB21FFB5E8FDFFFFFF151C41001033C05F5E5B8B4DFC33CDE8D20B00008BE55DC333C95153526A0050FF15184100108B8DD0FDFFFF8BF0518B11FF52088BC65F5E5B8B4DFC33CDE8' $DllBinary &= 'A30B00008BE55DC385D2750485DB740F6A0C5352FF3750FF15184100108BF08B4DFC5F5E33CD5BE87B0B00008BE55DC3CCCCCCCCCCCCCCCCCCCCCCCCCC558BEC83EC4CA10050001033C58945FC538BD9565785DB751333C05F5E5B8B4DFC33CDE8420B00008BE55DC333F656FF1514410010508945E8FF15184000108BF885FF0F84C90000008D45B45053FF152041001085C00F84AF0000008D45C8506A18FF75C4FF151C40001085C00F8486000000FF75D0FF75CCFF75E8FF15244000108BF08975E485F6746E5657FF15104000108945E085C0745F8B4DCC894DF48B4DD06880808000C745EC00000000C745F000000000894DF8FF15004000108BF08D45EC565057FF151041001056FF15044000106A036A006A00FF75D0FF75CC536A006A0057FF150C410010FF75E057FF15104000108B75E4FF75C4FF1504400010FF75C0FF150440001057FF1508400010FF75E86A00FF150441001053FF151C4100108B4DFC8BC65F5E33CD5BE8370A00008BE55DC3CCCCCCCCCCCCCCCCCC558BEC8B450803C05DC20400CCCCCCCC558BEC83E4F881ECB4000000A10050001033C4898424B00000005356578B7D180F57C06A2E33DBC74424180000000057F30F7F842494000000C7442438FFFFFFFFC744245800000000895C2428FF15BC4000108BF083C40885F6744C8B1DA440001046683C42001056FFD383C40885C0741E682842001056FFD383C40885C0740F682C42001056FFD383C40885C075168B35084100106A31FFD66A328BD8FFD689442420EB0233DB8BF78D9B000000008A063C2074043C09750346EBF3803E2A0F857B0200000FBE4601468B3DC440001050FF15C040001083C40483F8480F848401000083F8570F84150100006A0468D042001056FFD783C40C85C0751383C6048BCEE828F3FFFF89442450E9C50100006A0568D842001056FFD783C40C85C00F85A80000006A1F83C6058D8424A00000005650FF15B44000108A9424A80000008DBC24A800000083C40CC68424BB0000000084D27422B9E0420010B0208BFF3AD074128A41014184C075F48A57014784D275E3EB03C607008D8C249C000000E8FBF0FFFF8BC883F9FF751E6A108D8424A00000006A0050FF15AC40001083C40C89442430E92C0100008BC1C1E8080FB6D00FB6C1C1E0080BD0C1E910C1E2080FB6C10BD089542430E9080100008BCEE85BF2FFFF8944241485C0790DC744241400000000E9EC0000003DFF0000000F8EE1000000C7442414FF000000E9D40000008D7E018BC78A0880F920740580F909750340EBF18A0884C9744180F92D740580F92B75014080383075318A480180F978740580F95875240FBE400250FF15A840001083C40485C074126A106A0057FF15AC40001083C40C8BD8EB7957FF15B04000108BD8EB6B8D7E018BC78D49008A0880F9' $DllBinary &= '20740580F909750340EBF18A0884C9744380F92D740580F92B75014080383075338A480180F978740580F95875260FBE400250FF15A840001083C40485C074146A106A0057FF15AC40001083C40C89442420EB0E57FF15B04000108944242483C40485F60F84A00000008A1684D20F8496000000EB068D9B00000000B9E0420010B0203AD0742C8A41014184C075F48A56014684D275E5B8E44200105F5E5B8B8C24B000000033CCE8F90600008BE55DC214008D7E018BF78D6424008A063C2074083C090F857FFDFFFF46EBEF51FF7424548D4424488BD350FF74242C8BCFE8F8F3FFFF8BD883C410895C246485DB74196A00FF15144100108BF8897C245C85FF752353FF1504400010B8E44200105F5E5B8B8C24B000000033CCE8860600008BE55DC2140033C933F6837C244001894C2450894C241C894C2434894C2474884C241175658D4424785053FF152041001085C074408B8C24840000008D4424126A01508D4424288BD7508D44244450E8B8F0FFFF83C41089442434FFB42488000000FF1504400010FFB42484000000FF15044000108BCBE8A0FAFFFF8BD88944246485DB0F8460FFFFFF6A088D4424168BD7508D4424288BCB508D44244450E868F0FFFF83C4108944242485C00F84A90500008B75108B7D142B75082B7D0C46FF74245C47FF15184000108BD8895C241885DB0F847F0500005756FF742464FF15244000108944245085C00F84670500005053FF15104000108944247485C00F8453050000682000CC00FF750CFF7508FF74246857566A006A0053FF152040001085C00F842F0500008B4C24508D4424136A08508D4424688BD3508D44245850E8C7EFFFFF8BD083C4108954241C85D20F84020500008B74244C8BDE8B7C24380FAF7C24200FAF5C2460807C241200897C2454895C2458750B807C2413000F84CA0000008B44243083F8FF740925F8F8F8008944243033C985DB7E4E83FB0472398BC3250300008079054883C8FC40660F6F0D004300108BD32BD08B44241CF30F6F0083C1048D4010660FDBC1F30F7F40F03BCA7CE98B54241C3BCB7D0C81248AF8F8F800413BCB7CF433C985FF7E7583FF04723E8BC7250300008079054883C8FC40660F6F0D004300108BD72BD08B442424EB078DA42400000000F30F6F0083C1048D4010660FDBC1F30F7F40F03BCA7CE98B4424243BCF7D0D90812488F8F8F800413BCF7CF48B54241CEB048B44242485FF7E0F83C0038BCF90C600008D40044975F7837C2414010F8D0402000085DB7E118D42038BCB8D4900C600008D40044975F733DB895C242C395C24580F8EE60000008B4424248B08894C2428EB0B8DA424000000008D6424008D049D0000000089442448390C1074178B44243485C07405833800750A3B4C24300F858D0100008BC38B4C246099F7FE2BC8394C24' $DllBinary &= '200F8F700100008BC62BC2394424380F8F6201000033D2C64424110133FF8BC3897C2444395424547E708B7424348B4C24242BF1C644241101897424408B7C241C8B313934878B7C2444741D837C243400740C8B742440833C0E008B31750A3B7424300F8501010000423B5424387D0340EB158B74244C33D28D04B5000000000144244803DE8BC34783C104897C24443B7C24547CA78B5C242C8B742418FF74245C6A00FF1504410010FF7424648B3D04400010FFD785F674178B44247485C074085056FF151040001056FF15084000108B44245085C0740350FFD78B4424248B35A040001085C0740650FFD683C4048B44243485C0740650FFD683C4048B44241C85C0740650FFD683C404807C2411000F84F2FBFFFF8BC399F77C244CFF7424202B842494000000FF74243C03450C2B942494000000035508505268E84200106858530010E8400200008B8C24D400000083C418B8585300105F5E5B33CCE8410200008BE55DC214008B5C242C8B74244CC6442411008B4C24288B54241C43895C242C3B5C24580F8C3DFEFFFFE907FFFFFF33DB895C242C395C24580F8EF7FEFFFF8BC38B4C246099F7FE2BC8394C24200F8F4D0100008BC62BC2394424380F8F3F01000033C9C644241101894C2444894C2440895C244885FF0F8EB9FEFFFF8B4424248D0C9D00000000894C246C8B4C24342BC8C644241101895C247089442428894C24688D6424008A48028A58018A200FB6D18864243F395424147E07C644241200EB0A8AC12A442414884424120FB6F3397424147E07C644241300EB0A8AC32A442414884424130FB6FC397C24147E0432FFEB068AFC2A7C2414B8FF0000002BC28B5424143BD07E0580CEFFEB048AF202F18B4C2414B8FF0000002BC63BC87E0580CDFFEB048AE902EBB8FF0000002BC7394424147E0580C9FFEB088A4C2414024C243F8B7C24488B74241C8A54BE028A44BE018A1CBE3A54241272163AD677123A442413720C3AC577083ADF72043AD97642837C2434008B442428740A8B4C2468833C080075318B4C2430390874298B5C242C8B74244C8B7C2454C64424110043895C242C3B5C24580F8C8FFEFFFFE981FDFFFF8B4424288B74244446897424443B7424387D0747897C2448EB258B54244C33C98B7C2470894C24448D0C9500000000014C246C03FA8BCF897C2470894C24488B74244083C0044689442428897424403B7424540F8C99FEFFFFE91FFDFFFF8B7424188B5C2468E91AFDFFFFCCCCCCCCCCCCCC558BEC8D451050FF750C6A32FF7508FF15C840001083C4105DC33B0D005000107502F3C3E9D6030000566880000000FF1584400010598BF056FF154C400010A3C0530010A3BC53001085F6750533C0405EC3832600E88D07000068972F0010E8D2060000C70424C42F0010E8C60600005933C05EC355' $DllBinary &= '8BEC5151837D0C005356570F8529010000A12050001085C00F8E1501000048BBB4530010A32050001033FF64A118000000897DFC8B5004EB043BC2740E33C08BCAF00FB10B85C075F0EB07C745FC01000000833DB853001002740D6A1FE82804000059E982010000FF35C0530010FF15484000108BF089751085F60F849A000000FF35BC530010FF15484000108BD889750C895D0883EB043BDE725C393B74F557FF154C400010390374EAFF33FF1548400010578BF0FF154C4000108903FFD6FF35C05300108B3548400010FFD6FF35BC5300108945F8FFD68B4DF8394D0C75088B751039450874AC8BF1894D0C8975108BD8894508EB9D83FEFF740856FF15A04000105957FF154C400010A3BC530010BBB4530010A3C0530010893DB8530010397DFC0F85C000000033C08703E9B700000033C0E9B3000000837D0C010F85A600000064A11800000033FF8BF7BBB45300108B5004EB043BC2740E33C08BCAF00FB10B85C075F0EB0333F646393DB85300106A025F74096A1FE80B030000EB3568444100106838410010C705B853001001000000E81E060000595985C0759368344100106830410010E80306000059893DB85300105985F6750433C08703833DC453001000741C68C4530010E8180300005985C0740DFF751057FF7508FF15C4530010FF052050001033C0405F5E5B8BE55DC20C00558BEC837D0C017505E8D1040000FF7510FF750CFF7508E80700000083C40C5DC20C006A1068F8430010E8A505000033C0408BF08975E433DB895DFC8B7D0C893D105000108945FC85FF750C393D205000100F84D40000003BF8740583FF027538A19841001085C0740EFF751057FF7508FFD08BF08975E485F60F84B1000000FF751057FF7508E87DFDFFFF8BF08975E485F60F8498000000FF751057FF7508E85FE5FFFF8BF08975E483FF01752E85F6752AFF751053FF7508E845E5FFFFFF751053FF7508E83EFDFFFFA19841001085C07409FF751053FF7508FFD085FF740583FF03754BFF751057FF7508E817FDFFFFF7D81BC023F08975E47434A19841001085C0742BFF751057FF7508FFD08BF0EB1B8B4DEC8B018B008945E05150E86A0100005959C38B65E833DB8BF38975E4895DFCC745FCFEFFFFFFE80B0000008BC6E8D2040000C38B75E4C70510500010FFFFFFFFC3558BECFF15444000106A01A344530010E8E5040000FF7508E8E3040000833D4453001000595975086A01E8CB0400005968090400C0E8CC040000595DC3558BEC81EC240300006A17E8DD04000085C074056A0259CD29A328510010890D24510010891520510010891D1C510010893518510010893D14510010668C1540510010668C0D34510010668C1D10510010668C050C510010668C2508510010668C2D045100109C8F05385100108B4500A32C5100108B4504' $DllBinary &= 'A3305100108D4508A33C5100108B85DCFCFFFFC7057850001001000100A130510010A334500010C70528500010090400C0C7052C50001001000000C70538500010010000006A04586BC000C7803C500010020000006A04586BC0008B0D00500010894C05F86A0458C1E0008B0D04500010894C05F8689C410010E8CCFEFFFF8BE55DC3FF25CC400010FF25D0400010CCCCCCCCCCCCCCCCCCCC558BEC8B450833D25356578B483C03C80FB741140FB7590683C01803C185DB741B8B7D0C8B700C3BFE72098B480803CE3BF9720A4283C0283BD372E833C05F5E5B5DC3CCCCCCCCCCCCCCCCCCCCCCCCCC558BEC6AFE6820440010682930001064A1000000005083EC08535657A1005000103145F833C5508D45F064A3000000008965E8C745FC000000006800000010E87C00000083C40485C074548B45082D00000010506800000010E852FFFFFF83C40885C0743A8B4024C1E81FF7D083E001C745FCFEFFFFFF8B4DF064890D00000000595F5E5B8BE55DC38B45EC8B0033C98138050000C00F94C18BC1C38B65E8C745FCFEFFFFFF33C08B4DF064890D00000000595F5E5B8BE55DC3CCCCCCCCCCCC558BEC8B4508B94D5A0000663908740433C05DC38B483C03C833C0813950450000750CBA0B010000663951180F94C05DC3833DC053001000740333C0C3566A046A20FF159440001059598BF056FF154C400010A3C0530010A3BC53001085F675056A18585EC383260033C05EC36A146840440010E8A70100008365DC00FF35C05300108B3548400010FFD68945E483F8FF750CFF7508FF158C40001059EB656A08E808020000598365FC00FF35C0530010FFD68945E4FF35BC530010FFD68945E08D45E0508D45E450FF75088B354C400010FFD650E8E001000083C40C8BF8897DDCFF75E4FFD6A3C0530010FF75E0FFD6A3BC530010C745FCFEFFFFFFE80B0000008BC7E85C010000C38B7DDC6A08E8A001000059C3558BECFF7508E84CFFFFFFF7D8591BC0F7D8485DC3558BEC83EC148365F4008365F800A1005000105657BF4EE640BBBE0000FFFF3BC7740D85C67409F7D0A304500010EB668D45F450FF15504000108B45F83345F48945FCFF15344000103145FCFF15384000103145FC8D45EC50FF15784000108B4DF08D45FC334DEC334DFC33C83BCF7507B94FE640BBEB1085CE750C8BC10D11470000C1E0100BC8890D00500010F7D1890D045000105F5E8BE55DC35657BEE8430010BFE8430010EB0B8B0685C07402FFD083C6043BF772F15F5EC35657BEF0430010BFF0430010EB0B8B0685C07402FFD083C6043BF772F15F5EC3CCFF25D8400010FF25DC4000106848530010E8A200000059C3682930001064FF35000000008B442410896C24108D6C24102BE0535657A1005000103145FC33C5508965E8FF75F88B45FCC745FCFEFFFFFF' $DllBinary &= '8945F88D45F064A300000000C38B4DF064890D00000000595F5F5E5B8BE55D51C3558BECFF7514FF7510FF750CFF750868AA2700106800500010E82F00000083C4185DC3FF25E0400010FF25E4400010FF25D4400010FF259C400010FF2598400010FF2590400010FF2588400010FF25E8400010FF2540400010CCCCCCCCCCCCCCCCCCCCCCCCCCCC518D4C24082BC883E10F03C11BC90BC159E91A000000518D4C24082BC883E10703C11BC90BC159E904000000CCCCCCCC518D4C24042BC81BC0F7D023C88BC42500F0FFFF3BC8720A8BC159948B00890424C32D001000008500EBE900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000864800005C4800005048000036480000264800001A48000004480000F64700009A4800006C480000000000004847000054470000024B0000EC4A00003A470000B64A0000A24A0000924A0000824A0000184B00002C4700001E4700001047000002470000F4460000E6460000D0460000BE460000A8460000D24A000098460000000000009C490000444A00003A4A00002C4A00001E4A0000144A00000C4A0000FA480000024900000E4900001A490000244900002C49000036490000404900004A49000054490000604900007C4900008E490000F4490000AA490000B6490000C4490000DA490000684A000000000000A201008000000000AE4800000000000072470000CA470000D6470000BC470000B0470000A84700009C4700008E4700008047000000000000CA48000000000000000000000000000000000000B9270010E12D001000000000000000000000000000000000A488E25B000000000200000068000000584300005829000000000000A488E25B000000000C00000014000000C0430000C02900008009F87B32BF1A108BBB00AA00300CAB000000002850001078500010426C61636B00000053696C7665720000477261790000000057686974650000004D61726F6F6E000052656400507572706C6500004675636873696100477265656E0000004C696D65000000004F6C69766500000059656C6C6F7700004E6176790000000042' $DllBinary &= '6C7565000000005465616C00000000417175610000000044656661756C740065786500646C6C0069636C0063706C007363720069636F0063757200616E6900626D7000676469706C7573006A7067006A7065670000000067696600476469706C7573537461727475700000476469706C757353687574646F776E00476469704372656174654269746D617046726F6D46696C650000000047646970437265617465484249544D415046726F6D4269746D61700047646970446973706F7365496D6167650000000049636F6E000000005472616E730000002009000030000000317C25647C25647C25647C2564000000000000000000E03FF8F8F800F8F8F800F8F8F800F8F8F80048000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000500010E04300100100000052534453926C9C4BED0F06458B854963598D72DE01000000413A5C5F4175746F49745F5F5F5F5C5F50726F6A6563745F5F5F5C5F494D475365617263685C496D616765536561726368444C4C5C52656C656173655C496D616765536561726368444C4C2E706462000100000010000000100000000000000000000000000000000000000000000000293000000000000000000000000000000000000000000000FEFFFFFF00000000D0FFFFFF00000000FEFFFFFF00000000442B0010000000000F2B0010232B0010FEFFFFFF00000000D8FFFFFF00000000FEFFFFFF792D00108C2D001000000000FEFFFFFF00000000CCFFFFFF00000000FEFFFFFF00000000BA2E00100000000000000000A388E25B000000009C440000010000000200000002000000884400009044000098440000901D0000801D0000AF440000BB44000000000100496D616765536561726368444C4C2E646C6C00496D61676553656172636800496D6167655465737400000000944500000000000000000000644700002C400000684600000000000000000000EA47000000410000684500000000000000000000A448000000400000604600000000000000000000BE480000F8400000904600000000000000000000E248000028410000584600000000000000000000EC480000F0400000EC45000000000000000000006E490000844000000000000000000000000000000000000000000000864800005C4800005048000036480000264800001A48000004480000F64700009A4800006C480000000000004847000054470000024B0000EC4A00003A470000B64A0000A24A0000924A0000824A0000184B00002C4700001E4700001047000002470000F4460000E6460000D0460000BE460000A8460000D24A000098460000000000009C490000444A00003A4A00002C4A00001E4A0000144A00000C4A0000FA48' $DllBinary &= '0000024900000E4900001A490000244900002C49000036490000404900004A49000054490000604900007C4900008E490000F4490000AA490000B6490000C4490000DA490000684A000000000000A201008000000000AE4800000000000072470000CA470000D6470000BC470000B0470000A84700009C4700008E4700008047000000000000CA480000000000003C034C6F61644C696272617279410000E50147657446696C6541747472696275746573410000450247657450726F6341646472657373000067034D756C746942797465546F5769646543686172006201467265654C69627261727900880043726561746546696C654100F00147657446696C6553697A6500B302476C6F62616C416C6C6F63005200436C6F736548616E646C6500BE02476C6F62616C4C6F636B0000BA02476C6F62616C467265650000C0035265616446696C650000C502476C6F62616C556E6C6F636B00004B45524E454C33322E646C6C0000EE014C6F6164496D616765410000330147657449636F6E496E666F00A30044657374726F7949636F6E005400436F7079496D616765002101476574444300F60046696C6C526563740000C8004472617749636F6E45780000650252656C656173654443007E0147657453797374656D4D65747269637300005553455233322E646C6C0000FB014765744F626A6563744100003000437265617465436F6D70617469626C6544430000CA0147657444494269747300770253656C6563744F626A6563740000120247657453797374656D50616C65747465456E747269657300E30044656C65746544430000E60044656C6574654F626A65637400002F00437265617465436F6D70617469626C654269746D617000005400437265617465536F6C6964427275736800001300426974426C74000047444933322E646C6C0027004578747261637449636F6E4100005348454C4C33322E646C6C00860043726561746553747265616D4F6E48476C6F62616C006F6C6533322E646C6C004F4C4541555433322E646C6C00008306667265650000B2045F73747269636D700000B906697378646967697400004807737472746F6C0000EF0561746F6900003C077374726E63707900DB066D616C6C6F630000400773747272636872005D07746F757070657200BC045F7374726E69636D7000730776737072696E74665F7300004D535643523132302E646C6C00006F015F5F4370705863707446696C7465720017025F616D73675F657869740000A5035F6D616C6C6F635F637274000C035F696E69747465726D000D035F696E69747465726D5F650050025F6372745F64656275676765725F686F6F6B0000AC015F5F637274556E68616E646C6564457863657074696F6E00AB015F5F6372745465726D696E61746550726F63657373' $DllBinary &= '0094035F6C6F636B0004055F756E6C6F636B002E025F63616C6C6F635F63727400AE015F5F646C6C6F6E65786974003A045F6F6E65786974008C015F5F636C65616E5F747970655F696E666F5F6E616D65735F696E7465726E616C00007A025F6578636570745F68616E646C6572345F636F6D6D6F6E00EA00456E636F6465506F696E74657200CA004465636F6465506F696E7465720000034973446562756767657250726573656E74000403497350726F636573736F724665617475726550726573656E7400A7035175657279506572666F726D616E6365436F756E74657200C10147657443757272656E7450726F63657373496400C50147657443757272656E7454687265616449640000790247657453797374656D54696D65417346696C6554696D650000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004EE640BBB119BF440000000000000000FFFFFFFF000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' $DllBinary &= '000001001800000018000080000000000000000000000000000001000200000030000080000000000000000000000000000001000904000048000000606000007D010000000000000000000000000000000000003C3F786D6C2076657273696F6E3D27312E302720656E636F64696E673D275554462D3827207374616E64616C6F6E653D27796573273F3E0D0A3C617373656D626C7920786D6C6E733D2775726E3A736368656D61732D6D6963726F736F66742D636F6D3A61736D2E763127206D616E696665737456657273696F6E3D27312E30273E0D0A20203C7472757374496E666F20786D6C6E733D2275726E3A736368656D61732D6D6963726F736F66742D636F6D3A61736D2E7633223E0D0A202020203C73656375726974793E0D0A2020202020203C72657175657374656450726976696C656765733E0D0A20202020202020203C726571756573746564457865637574696F6E4C6576656C206C6576656C3D276173496E766F6B6572272075694163636573733D2766616C736527202F3E0D0A2020202020203C2F72657175657374656450726976696C656765733E0D0A202020203C2F73656375726974793E0D0A20203C2F7472757374496E666F3E0D0A3C2F617373656D626C793E0D0A000000000000000000000000000000000000000000000000000000000000000000000000100000F800000027302C303E3055306C3083309A30B130C830DF30F6300D3124313B315231693180319731FE3110321C323A326C32A832093355337733AD339634A234B634EA343B354E355D35703583359635A935E8350E361D362C36913697361F374F3770377637BB37CE37E137F437FA370A380F381738253833384138B638143940395E39A539C939D939E839F5390F3A1A3A213A4B3A523A593A693A833A8E3AB43A323B4D3B6C3B863BC53BE63B1C3C473C713C7B3C903CA73CBE3CCF3CFB3C093D103D283D323D3E3D473D4E3D593D603D9D3DDF3DEE3DF43D033E123E223E5D3E643E803EA43EC63EE83E2A3FD03FE23FF03F002000002001000039304B305B3081309C30F9300A310F31513188319531EB31053219324132D7322B33AB34B534CB34D234E734423547355B35A137AC37C137CB37D037D537EB37F737183826382B385A387038763889388F38A938B538BE38C838CE38D63806390E39133918391D3923395539753988398D399339A739AC39B839C739CF39E639EC39223A3D3A4A3A5E3AC83AFA3A493B573B5E3B713BA93BAF3BB53BBB3BC13BC73BCE3BD53BDC3BE33BEA3BF13BF83B003C083C103C1C3C253C2A3C303C3A3C443C543C643C743C7D3C8C3C923CF63CFB3C0D3D2B3D3F3D453DE33DF43DFF3D043E093E203E2F3E353E483E5D3E683E7E3E983EA23EEA3E053F113F203F293F363F653F6D3F7A3F7F3F9A3F9F' $DllBinary &= '3FBA3FC03FC53FD13FEE3F003000002000000039303E304E3054305A30603066306C30723078307E30000000400000200000003C3140319C31A0314C335033103418341C3434343834583400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' ; * -----:| ImageSearchDLL Binary x64 Local $DllBinary_x64 = '0x4D5A90000300000004000000FFFF0000B800000000000000400000000000000000000000000000000000000000000000000000000000000000000000F80000000E1FBA0E00B409CD21B8014CCD21546869732070726F6772616D2063616E6E6F742062652072756E20696E20444F53206D6F64652E0D0D0A2400000000000000FA7C1F43BE1D7110BE1D7110BE1D7110F84CAC10BC1D7110F84CAE10BF1D7110F84C9110B51D7110F84C9010BC1D7110B765F210BF1D7110B765E210B31D7110BE1D7010F91D7110B34F9410BD1D7110B34FAD10BF1D7110B34FAA10BF1D7110B34FAF10BF1D711052696368BE1D711000000000000000005045000064860600A689E25B0000000000000000F00022200B020C0000240000001E000000000000CC2C000000100000000000800100000000100000000200000500020000000000050002000000000000900000000400000000000002006001000010000000000000100000000000000000100000000000001000000000000000000000100000008047000065000000E8470000A000000000700000E0010000006000008C01000000000000000000000080000014000000A0420000380000000000000000000000000000000000000000000000000000008044000070000000000000000000000000400000680200000000000000000000000000000000000000000000000000002E74657874000000CB230000001000000024000000040000000000000000000000000000200000602E72646174610000A60F0000004000000010000000280000000000000000000000000000400000402E6461746100000070060000005000000002000000380000000000000000000000000000400000C02E706461746100008C0100000060000000020000003A0000000000000000000000000000400000402E72737263000000E00100000070000000020000003C0000000000000000000000000000400000402E72656C6F630000140000000080000000020000003E0000000000000000000000000000400000420000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' $DllBinary_x64 &= 'B801000000C3CCCCCCCCCCCCCCCCCCCC40534883EC20803900488BD9750983C8FF4883C4205BC3488D15D2320000FF151431000085C075064883C4205BC3488D15C3320000488BCBFF15FA30000085C0750BB8C0C0C0004883C4205BC3488D15AC320000488BCBFF15DB30000085C0750BB8808080004883C4205BC3488D1595320000488BCBFF15BC30000085C0750BB8FFFFFF004883C4205BC3488D157E320000488BCBFF159D30000085C0750BB8800000004883C4205BC3488D1567320000488BCBFF157E30000085C0750BB8FF0000004883C4205BC3488D154C320000488BCBFF155F30000085C0750BB8800080004883C4205BC3488D1539320000488BCBFF154030000085C0750BB8FF00FF004883C4205BC3488D1522320000488BCBFF152130000085C0750BB8008000004883C4205BC3488D150B320000488BCBFF150230000085C0750BB800FF00004883C4205BC3488D15F4310000488BCBFF15E32F000085C0750BB8808000004883C4205BC3488D15DD310000488BCBFF15C42F000085C0750BB8FFFF00004883C4205BC3488D15C6310000488BCBFF15A52F000085C0750BB8000080004883C4205BC3488D15AF310000488BCBFF15862F000085C0750BB80000FF004883C4205BC3488D1598310000488BCBFF15672F000085C0750BB8008080004883C4205BC3488D1581310000488BCBFF15482F000085C0750BB800FFFF004883C4205BC3488D156A310000488BCBFF15292F000083C9FFBA8080800085C00F44CA8BC14883C4205BC3CCCCCCCCCCCCCCCCCCCCCCCC40534883EC20488BD9488BD10F1F40000FB6023C2074043C09750548FFC2EBF00FB60284C0743B2C2BA8FD750348FFC2803A30752D0FB642012C58A8DF75230FBE4A02FF150F2F000085C0741533D2488BCB448D42104883C4205B48FF25CE2E0000488BCB4883C4205B48FF25B72E0000CCCCCCCCCCCCCCCCCCCCCCCCCCCCCC405553565741544155415641574881ECA8040000488D6C2440488B05203D00004833C54889855004000033FF488BDA488BC1488D551048894D08488B8DD8040000897C24304889542428498BF14D8BE0488BD04533C94533C048894D00448BF74532FFC745102800000066897D1E48897C2420FF150F2D000085C00F84A50100000FB77D1E3BBDD00400000F8C930100006683FF100F94C088068B45148B75188903418934248B030FAFC64C63E84A8D0CAD00000000FF15E42D00004C8BF04885C00F845C0100006683FF08400F94C74084FF7509B8200000006689451E488B4D00F7DE897518488B7508488BD6FF155C2C0000458B0C24488BD6488B750048894508488D4510C74424300000000048894424284533C0488BCE4C89742420FF15632C000085C00F84E20000004084FF0F84D60000008B0424B800040000482BE0' $DllBinary_x64 &= '488D7424408B06488B4D004C8BCE33D241B800010000FF150B2C00008B0325030000807D07FFC883C8FCFFC085C0740B41B804000000442BC0EB034533C0418B14244D8D5DFF33FF8BC24F8D1C9E410FAFC04863C8498D46FF4903CD4803C185D27E644D63F8660F1F8400000000004533D2492BC74439137E450F1F4400000FB60841FFC24983EB04448B048E48FFC8410FB7C866C1E908440FB6C9418BC8C1E91041C1E1080FB6D1410FB6C8C1E110440BCA440BC945894B04443B137CC0FFC7413B3C247CA8488B750041B701488B45084885C0740C488BD0488BCEFF152C2B000033FF488B4D00FF15102B00004584FF75134D85F6740E498BCEFF15552C0000488BC7EB03498BC6488B8D500400004833CDE8E6140000488DA568040000415F415E415D415C5F5E5B5DC3CCCC40555356574154415541564157488DAC2408FEFFFF4881ECF8020000488B05AD3A00004833C4488985E0010000448BAD6002000033FF448BF28D572E4585ED4D8BF9418BF04C8BE148894C2458440F48EF48897C2448FF15FC2B0000488BD84885C0740348FFC34183FD010F8FF20000004885DB7474488D15DB2D0000488BCBFF15922B000085C00F84D5000000488D15C72D0000488BCBFF157A2B000085C00F84BD000000488D15B32D0000488BCBFF15622B000085C00F84A5000000488D159F2D0000488BCBFF154A2B000085C00F848D000000488D158B2D0000488BCBFF15322B000085C0747940887C24404585ED0F8FA50000004885DB0F84A3000000488D15642D0000488BCBFF15072B000085C00F8484000000488D15502D0000488BCBFF15EF2A000085C0742D488D15402D0000488BCBFF15DB2A000085C07419488D15302D0000488BCBFF15C72A000085C0754F41893FEB4A41C70702000000EB41C64424400141C70701000000458D45FF4585ED7F03448BC7488B0D3E3F0000498BD4FF153D2B000048894424484883F802731333C0E92805000041C70701000000488B4424484183FEFF740583FEFF75094585F6741485F674104183FEFF740583FEFF750A41B401EB088BF7448BF74532E444886424414885C0754A458B074183F8FF7E414584E47407448BCF8BC7EB05458BCE8BC6488B54245833C9C74424281020000089442420FF15C62A000048894424484885C00F840A0200004584E40F849C0400004C8B64245848897C24504885C00F856901000041893F4885DB7448488D153D2C0000488BCBFF15C429000085C00F8421020000488D15292C0000488BCBFF15AC29000085C00F8409020000488D15192C0000488BCBFF159429000085C00F84F1010000488D0DED2B0000FF158F280000488BD84885C00F84D8010000488D15EC2B0000488BC8FF15C3280000488D15EC2B0000488BCB4C8BE8FF15B0280000488D15E92B0000488BCB' $DllBinary_x64 &= '48894590FF159C280000488D15F52B0000488BCB4889442468FF1587280000488D15002C0000488BCB488945A8FF1573280000C74424700100000048897C247848897D80488945984D85ED7478488D542470488D4DA04533C041FFD585C07565488D45D04183C9FF4D8BC433D233C9C7442428040100004889442420FF1534280000488D542460488D4DD0FF54246885C0752B488B4C2460488D54244841B880808000FF55A8488B4C244885C0480F45CF48894C2448488B4C2460FF5598488B4DA0FF5590488BCBFF1510280000488B44244840387C24410F84A302000041393F7419488D55B0488BC8FF153E29000085C00F84C3020000488B45C04C8D442470BA20000000488BC8FF151F27000083FEFF0F85E10100008B44247485C00F840C020000660F6E542478660F6EC066410F6ECEF30FE6D2F30FE6C0F30FE6C9F20F5ED0F20F59D1F20F5815172B0000F20F2CF2E9D80100004C8B642458498BCCFF156027000083F8FF0F8455FDFFFF4585ED7E2D488B0D733C0000458D45FF498BD4FF156E28000048894424484883F8020F822DFDFFFFC644244001E9BBFDFFFF488B442448E9B1FDFFFF48897C24304533C94533C0BA00000080498BCC897C2428C744242003000000FF15262700004C8BE04883F8FF0F84E7FCFFFF33D2488BC8FF15FE260000B9020000008BD089442460FF15D5260000488BD84885C07510498BCCFF155426000033C0E9E2010000488BC8FF15BC260000498BCC4885C07516FF1536260000488BCBFF154526000033C0E9BB010000448B4424604C8D4C2460488BD048897C2420FF156E260000488BCBFF1555260000498BCCFF15FC2500004C8D44246833D2488BCBFF15E427000085C078B2488B4C24684885C974A8488D4424504C8D0D4A2800004533C033D24889442420FF154A270000488B4C245085C0480F48CF48894C2450488B4C2468488B01FF5010488BCBFF15B6250000488B4C24504885C90F84F6FBFFFF488B01488D542448FF5018488B4424484885C00F85ECFDFFFF488B4C2450488B01FF501033C0E9FA0000008B44247885C0742F660F6E542474660F6EC0660F6ECEF30FE6D2F30FE6C0F30FE6C9F20F5ED0F20F59D1F20F58153B290000F2440F2CF241393F7447488B4DC8FF15C7240000488B4DC0FF15BD24000040387C2440752C488B4C2448FF15B3260000458B07488B542458458BCE33C9C74424281000000089742420FF158C260000EB77488B44244848397C245074424585F6750985F67505BF04000000448BCE458BC633D2488BC8897C2420FF157B260000488B4C2450488B11488BD8FF5210EB35488B4C2448FF154826000033C0EB294585F6750485F67420418B17448BCE458BC6488BC8C74424200C000000FF1539260000488BD8488BC3488B8DE00100004833CCE8FC0D00' $DllBinary_x64 &= '004881C4F8020000415F415E415D415C5F5E5B5DC3CCCCCCCCCCCCCCCC40554881ECD0000000488B05D03300004833C448898424A0000000488BE94885C9750733C0E9B60100004889B424F00000004889BC24C80000004C89A424C00000004533E433C94C89B424B8000000418BFCFF15C0250000488BC84C8BF0FF1594230000488BF04885C00F8439010000488D542470488BCDFF159225000085C00F841A010000488B8C24880000004C8D442450418D542420FF157223000085C00F84DE000000448B4424588B542454498BCEFF1548230000488BF84885C00F84C0000000488BD0488BCE4C89BC24B0000000FF15182300004C8BF84885C00F84980000008B4C245448899C24E80000004C89A42490000000898C24980000008B4C2458898C249C000000B980808000FF1503230000488D942490000000488BCE4C8BC0488BD8FF15D4240000488BCBFF15B32200008B442458C7442440030000004C896424384489642430894424288B4424544C8BCD4533C033D2488BCE89442420FF1590240000498BD7488BCEFF157C220000488B9C24E80000004C8BBC24B0000000488B8C2488000000FF1556220000488B8C2480000000FF1548220000488BCEFF1537220000498BD633C9FF156C240000488BCDFF15332400004C8BB424B80000004C8BA424C0000000488BB424F0000000488BC7488BBC24C8000000488B8C24A00000004833CCE8F00B00004881C4D00000005DC3CCCCCCCCCCCCCC8D0409C3CCCCCCCCCCCCCCCCCCCCCCCC4055535657415541564157488D6C24B04881EC50010000488B05B23100004833C448894538488BBDB0000000894D8433C90F57C08955888D512E894C2460F30F7F45E8488BCF44894C2458458BE8C7442454FFFFFFFF4533FF33F64533F6FF15F4220000488BD84885C0745A48FFC3488D15F6240000488BCBFF159922000085C07428488D15CE240000488BCBFF158522000085C07414488D15BE240000488BCBFF157122000085C0751BB931000000FF1562230000B9320000008BF0FF1555230000448BF0488BDF0F1F80000000000FB6033C2074043C09750548FFC3EBF0803B2A4C89A424480100000F85F80200000FBE4B0148FFC3FF156222000083F8480F84F801000083F8570F8488010000488D15F524000041B804000000488BCBFF15FA21000085C0756C4883C304488BCB0FB6013C2074043C09750548FFC1EBF00FB60184C0743D2C2BA8FD750348FFC1803930752F0FB641012C58A8DF75250FBE4902FF15FE21000085C0741733D2488BCB448D4210FF15C3210000448BF8E9DA010000488BCBFF15AA210000448BF8E9C9010000488D157724000041B805000000488BCBFF157421000085C00F85B00000004883C305448D401F488D4D18488BD3FF15872100000FB65518C64537004C8D45' $DllBinary_x64 &= '1884D274380F1F8000000000488D0D35240000B0200F1F80000000003AD074190FB6410148FFC184C075F1410FB6500149FFC084D275D5EB0441C60000488D4D18E8C6EFFFFF8BD083F8FF751933D2488D4D18448D4210FF150F21000089442454E92501000066C1E808440FB6E08BC2C1E81041C1E4080FB6C80FB6C2C1E010440BE1440BE04489642454E9FB000000488BCBE8A4F1FFFF8944246085C0790B33C9894C2460E9E00000003DFF0000000F8ED5000000B9FF000000894C2460E9C7000000488D4B010F1F40000FB6013C2074043C09750548FFC1EBF00FB60184C0743A2C2BA8FD750348FFC1803930752C0FB641012C58A8DF75220FBE4902FF158F20000085C0741433D2488D4B01448D4210FF15532000008BF0EB6E488D4B01FF153D2000008BF0EB60488D4B010FB6013C2074043C09750548FFC1EBF00FB60184C074382C2BA8FD750348FFC1803930752A0FB641012C58A8DF75200FBE4902FF152C20000085C0741233D2488D4B01448D4210FF15F01F0000EB0A488D4B01FF15DC1F0000448BF04885DB74360FB61384D2742F0F1F440000488D0DA5220000B0200F1F80000000003AD074430FB6410148FFC184C075F10FB6530148FFC384D275D6488D057F2200004C8BA42448010000488B4D384833CCE81B0800004881C450010000415F415E415D5F5E5B5DC3488D7B01488BDF66900FB6033C2074043C09750548FFC3EBF0803B2A0F8408FDFFFF803F00C7442478FFFFFFFF74A44C8D4C2478458BC68BD6488BCF44897C2420E8F3F2FFFF488BF8488945C84885C0748133C9FF15E71F00004C8BF8488945D84885C0750E488BCFFF15A21D0000E95FFFFFFF33C94533E44532F633F6837C24780148894DB848894C24704C8965A048894DC044887424507579488D55F8488BCFFF15911F000085C07450488B5D08498BCFFF15681D00004885C0742648894424284C8D4C24514C8D4580488D54245C488BCBC744242001000000E8E8EFFFFF4C8BE0488B4D104C8965A0FF151F1D0000488B4D08FF15151D0000488BCFE825F9FFFF488BF8488945C84885C00F84BFFEFFFF498BCFFF15041D00004885C0750F448B7C245833FF488BDEE9BC05000048894424284C8D4C24514C8D4580488D54245C488BCFC744242008000000E875EFFFFF488BF8488945984885C00F84570500008B5C2458442B6D84498BCF2B5D88FFC3FF15A71C0000488BF048894424684885C00F8421050000418D5501448BC3498BCFFF158E1C0000488945B84885C00F84F8040000488BD0488BCEFF15651C0000488945C04885C00F84DF0400008B4588C74424402000CC00458D4D01894424388B45844533C08944243033D2488BCE4C897C2428895C2420FF15571C000085C00F84A6040000488BCEFF151E1C00004885C0750C448B7C245833' $DllBinary_x64 &= 'DBE9D9040000488B4DB848894424284C8D4C24644C8D458C488D54247CC744242008000000E891EEFFFF488BD848894424704885C00F845C040000448B5C245C448B6C247C8B7580418BD3458BC5440FAF458C0FAFD6807C2451004C63CA44894424584D63F04C894DB0750B807C2464000F84E30000008B44245483F8FF740925F8F8F8008944245433C94585C07E494183F8047243418BC025030000807D07FFC883C8FCFFC0660F6F0DBC1F0000442BC0660F1F8400000000004863C183C104F30F6F0483660FDBC1F30F7F0483413BC87CE7448B4424584863C1493BC67D1966660F1F840000000000812483F8F8F80048FFC0493BC67CF133C985D27E4383FA04723E8BC225030000807D07FFC883C8FCFFC0660F6F0D4E1F00002BD00F1F40000F1F8400000000004863C183C104F30F6F0487660FDBC1F30F7F04873BCA7CE84863C1493BC17D0F812487F8F8F80048FFC0493BC17CF14D85C97E18488D4703498BC90F1F440000C60000488D400448FFC975F4448B5424604183FA010F8D300100004D85F67E1C488D4303498BCE660F1F840000000000C60000488D400448FFC975F44533FF4585C00F8E240300008B37448B44245433FF3934BB74154D85E4740741833C24007509413BF00F85C20000008B4D8C418BC79941F7FD2BC8394D800F8FAD000000418BC52BC2443BD80F8F9F0000004533C04533D2B001418BCF4D85C90F8EC0020000488B5D9888442450458BDF492BDC498BD44C8B6C2470448B0C134863C145394C8500448B6C247C74114D85E47405833A007507443B4C2454753841FFC0443B44245C7D04FFC1EB094533C04503DD418BCB49FFC24883C2044C3B55B07CB3488B5C2470440FB6742450488B7D98E95B0200004C8B4DB0448B5C245C488B5C2470448B44245432C08844245048FFC741FFC7493BFE0F8C15FFFFFF440FB6742450488B7D98E9240200004533FF44897C24784585C00F8E100200000F1F40008B4D8C418BC79941F7FD2BC83BF10F8F95010000418BC52BC2443BD80F8F870100004533ED41B60144897D904C896DD04D85C90F8E87010000488B45A0448874245044897DA8482BC74C8BE7488945E0418B0C24450FB64C2401450FB63C24C1E9100FB6D1443BD27E054532F6EB07440FB6F1452AF2450FB6C1453BD07E054032F6EB07410FB6F1412AF2410FB6DF443BD37E054032FFEB07410FB6FF412AFAB8FF0000002BC2443BD07E0541B3FFEB04468D1C11B8FF000000412BC0443BD07E0541B2FFEB034502D18B4C2460B8FF0000002BC33BC87E04B1FFEB034102CF48635D904C8B442470450FB64C9802410FB6549801450FB60498453ACE7219453ACB7714403AD6720F413AD2770A443AC77205443AC1761C48837DA000740B488B45E042833C2000750A8B442454413904247547448B' $DllBinary_x64 &= '5C245C41FFC5453BEB7D07FFC3895D90EB14448B55A84533ED440354247C448955A8448955904C8B45D04983C40449FFC04C8945D04C3B45B07D7B448B542460E9D5FEFFFF448B7C2478448B542460448B6C247C4C8B4DB0448B442458448B5C245C488B7D988B75804532F64488742450EB06440FB674245041FFC744897C2478453BF80F8C40FEFFFF488B5C2470EB48488B5C2470448B7C2458EB41488B5C2470448B7C2458488BF0EB32448B7C2458488BDEEB28448B7C2478488B5C2470440FB6742450488B7D98EB0D488B7D98440FB6F0EB034532F6488B742468488B55D833C9FF1550190000488B4DC8FF150E1700004885F6741E488B45C04885C0740C488BD0488BCEFF15FC160000488BCEFF15E3160000488B45B84885C07409488BC8FF15D91600004885FF7409488BCFFF151B180000488B45A04885C07409488BC8FF15091800004885DB7409488BCBFF15FB1700004584F60F8464F8FFFF448B4D88448B4584418BC7442B4DEC442B45E899F77C247C488D0D332C00004403C88B45804403C2894424288B44245C488D15BB1A000089442420E81A000000488D050B2C0000E91FF8FFFFCCCCCCCCCCCCCCCCCCCCCCCCCCCC48895424104C894424184C894C24204883EC284C8BC24C8D4C2440BA32000000FF15921700004883C428C3CCCCCCCCCCCCCCCCCCCCCC66660F1F840000000000483B0DF9250000751148C1C11066F7C1FFFF7502F3C348C1C910E971040000CC40534883EC20B900010000FF157F170000488BC8488BD8FF155B1600004889051C2C00004889050D2C00004885DB75058D4301EB2348832300E8A6070000488D0DD7070000E8D6060000488D0D0F080000E8CA06000033C04883C4205BC3CCCC488BC44889580848896810488978184C8960204155415641574883EC2033FF498BE84C8BF185D20F85350100008B056D25000085C00F8E20010000FFC8448BFF89055A25000065488B042530000000488B4808EB05483BC1740F33C0F0480FB10D632B000075EEEB0641BF010000008B055B2B000083F802740FB91F000000E864040000E99E010000488B0D502B0000FF157A150000488BE84885C00F849E000000488B0D2F2B0000FF15611500004C8BED4C8BE04C8BF04983EE084C3BF5725A49393E74F233C9FF154A15000049390674E5498B0EFF153415000033C9488BD8FF1531150000498906FFD3488B0DED2A0000FF1517150000488B0DD82A0000488BD8FF15071500004C3BEB75054C3BE074A54C8BEB488BEBEB974883FDFF7409488BCDFF15AE15000033C9FF15E61400004889059F2A0000488905A02A0000893D8A2A00004585FF0F85D800000048873D722A0000E9CC00000033C0E9CA00000083FA010F85BC00000065488B0425300000008BDF488B4808EB05483BC1740F33C0F0480FB1' $DllBinary_x64 &= '0D3C2A000075EEEB05BB010000008B05352A000085C0740CB91F000000E83F030000EB3E488D155E160000488D0D3F160000C7050D2A000001000000E83206000085C0758F488D151D160000488D0D0E160000E815060000C705E72900000200000085DB750A488BC7488705D129000048393DEA2900007421488D0DE1290000E83403000085C074114C8BC5BA02000000498BCEFF15C7290000FF0579230000B801000000488B5C2440488B6C2448488B7C24504C8B6424584883C420415F415E415DC3CC48895C24084889742410574883EC20498BF88BDA488BF183FA017505E86B0400004C8BC78BD3488BCE488B5C2430488B7424384883C4205FE903000000CCCCCC488BC448895808488970104889781841564883EC30498BF08BFA4C8BF1BB010000008958E88915D922000085D275123915DF220000750A33DB8958E8E9CB0000008D42FF83F8017737488B058C1500004885C07408FFD08BD88944242085DB0F84A70000004C8BC68BD7498BCEE802FDFFFF8BD88944242085C00F848C0000004C8BC68BD7498BCEE867E2FFFF8BD88944242083FF01753485C075304C8BC633D2498BCEE84BE2FFFF4C8BC633D2498BCEE8BEFCFFFF488B051F1500004885C0740A4C8BC633D2498BCEFFD085FF740583FF0375374C8BC68BD7498BCEE892FCFFFFF7D81BC923CB8BD9894C2420741C488B05E51400004885C074104C8BC68BD7498BCEFFD08BD889442420EB0633DB895C2420C705E6210000FFFFFFFF8BC3488B5C2440488B742448488B7C24504883C430415EC3CCCC40534883EC20488BD9FF1535120000B901000000890542270000E82F040000488BCBE82D040000833D2E27000000750AB901000000E814040000B9090400C04883C4205BE911040000CCCCCC48894C24084883EC38B917000000E81F04000085C07407B902000000CD29488D0D1B220000E8EA030000488B44243848890502230000488D4424384883C00848890592220000488B05EB2200004889055C210000488B44244048890560220000C70536210000090400C0C7053021000001000000C7053A21000001000000B808000000486BC000488D0D3221000048C7040102000000B808000000486BC000488B0DCA20000048894C0420B808000000486BC001488B0DBD20000048894C0420488D0D99130000E8E8FEFFFF4883C438C3CCFF2538120000FF253A120000CCCC4C63413C4533C94C8BD24C03C1410FB74014450FB758064883C0184903C04585DB741E8B500C4C3BD2720A8B480803CA4C3BD1720E41FFC14883C028453BCB72E233C0C3CCCCCCCCCCCCCCCCCCCCCCCC48895C2408574883EC20488BD9488D3D2CD0FFFF488BCFE83400000085C07422482BDF488BD3488BCFE882FFFFFF4885C0740F8B4024C1E81FF7D083E001EB0233C0488B5C243048' $DllBinary_x64 &= '83C4205FC3CCCCCC488BC1B94D5A0000663908740333C0C34863483C4803C833C0813950450000750CBA0B020000663951180F94C0C3CCCC40534883EC2048833D12260000007536BA080000008D4A18FF15CA100000488BC8488BD8FF152E100000488905EF250000488905E02500004885DB75058D4318EB064883230033C04883C4205BC3CCCC40534883EC20488BD9488B0DC0250000FF15EA0F000048894424384883F8FF750B488BCBFF155E100000EB7EB908000000E8E401000090488B0D92250000FF15BC0F00004889442438488B0D78250000FF15AA0F00004889442440488BCBFF15A40F0000488BC84C8D442440488D542438E8B0010000488BD8488B4C2438FF15840F000048890545250000488B4C2440FF15720F00004889052B250000B908000000E879010000488BC34883C4205BC34883EC28E847FFFFFF48F7D81BC0F7D8FFC84883C428C3CC48895C242055488BEC4883EC20488B05941E0000488365180048BB32A2DF2D992B0000483BC3756F488D4D18FF15160F0000488B451848894510FF15D00E00008BC048314510FF15CC0E0000488D4D208BC048314510FF153C0F00008B452048C1E020488D4D1048334520483345104833C148B9FFFFFFFFFFFF00004823C148B933A2DF2D992B0000483BC3480F44C1488905111E0000488B5C244848F7D04889050A1E00004883C4205DC348895C2408574883EC20488D1D63130000488D3D5C130000EB0E488B034885C07402FFD04883C308483BDF72ED488B5C24304883C4205FC348895C2408574883EC20488D1D3B130000488D3D34130000EB0E488B034885C07402FFD04883C308483BDF72ED488B5C24304883C4205FC3FF258E0E0000FF25380F0000488D0D21230000E930000000FF252E0F0000FF25300F0000FF25320F0000FF25340F0000FF25960E0000FF25880E0000FF257A0E0000FF25640E0000FF254E0E0000FF25B80D00004883EC284D8B4138488BCA498BD1E80D000000B8010000004883C428C3CCCCCC40534883EC20458B18488BDA4C8BC94183E3F841F600044C8BD17413418B40084D635004F7D84C03D14863C84C23D14963C34A8B1410488B43108B480848034B08F641030F740C0FB6410383E0F048984C03C84C33CA498BC94883C4205BE9B5F6FFFFCCCCCCCCCC40554883EC20488BEA488BD148894D28488B018B08894D24E8F5FBFFFF904883C4205DC3CC40554883EC20488BEAC705881C0000FFFFFFFF4883C4205DC3CCCC40554883EC20488BEA488B0133C98138050000C00F94C18BC14883C4205DC3CC40554883EC20488BEAB908000000E8EDFEFFFF904883C4205DC3CC0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000E64C000000000000CA' $DllBinary_x64 &= '4C000000000000BA4C000000000000A44C0000000000008A4C000000000000704C000000000000624C0000000000004E4C000000000000F24C000000000000DA4C00000000000000000000000000009E4B000000000000AE4B000000000000764F000000000000604F000000000000904B0000000000002A4F000000000000164F000000000000064F000000000000F64E0000000000008C4F0000000000007E4B0000000000006E4B000000000000584B0000000000004C4B000000000000364B000000000000284B0000000000001A4B0000000000000C4B000000000000FE4A000000000000464F000000000000F04A0000000000000000000000000000024E000000000000D24E000000000000C84E000000000000BA4E000000000000AC4E000000000000A24E0000000000009A4E0000000000007C4E000000000000524D0000000000005E4D0000000000006A4D000000000000724D0000000000007C4D000000000000844D0000000000008E4D0000000000009C4D000000000000A64D000000000000B04D000000000000BA4D000000000000D44D000000000000E64D000000000000F44D0000000000000E4E0000000000001C4E000000000000344E0000000000004A4E000000000000644E0000000000000000000000000000A2010000000000800000000000000000064D0000000000000000000000000000D84B000000000000CA4B000000000000284C000000000000364C0000000000001C4C0000000000000E4C000000000000064C000000000000FA4B000000000000E64B0000000000000000000000000000224D0000000000000000000000000000000000000000000000000000000000000000000000000000202A00800100000040300080010000000000000000000000000000000000000000000000A689E25B000000000200000068000000F0440000F02C000000000000A689E25B000000000C0000001400000058450000582D00008009F87B32BF1A108BBB00AA00300CAB00000000000000003050008001000000D050008001000000426C61636B00000053696C7665720000477261790000000057686974650000004D61726F6F6E000052656400507572706C650000000000004675636873696100477265656E0000004C696D65000000004F6C69766500000059656C6C6F7700004E61767900000000426C7565000000005465616C00000000417175610000000044656661756C740065786500646C6C0069636C0063706C007363720069636F0063757200616E6900626D700000000000676469706C7573006A7067006A7065670000000067696600476469706C7573537461727475700000476469706C757353687574646F776E00476469704372656174654269746D617046726F6D46696C6500000000000000004764' $DllBinary_x64 &= '6970437265617465484249544D415046726F6D4269746D6170000000000047646970446973706F7365496D6167650000000049636F6E000000005472616E73000000200900003000000000000000317C25647C25647C25647C2564000000000000000000E03FF8F8F800F8F8F800F8F8F800F8F8F80070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005000800100000000000000000000000000000000000000525344533A83FEDCC8528745BD1E87B1E51E240C01000000413A5C5F4175746F49745F5F5F5F5C5F50726F6A6563745F5F5F5C5F494D475365617263685C496D616765536561726368444C4C5C52656C656173655C496D616765536561726368444C4C2E7064620000000000100000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000106020006320230192A0B451943140195000DF00BE009D007C005700460033002500000C832000090040000192D0A001C015F000DF00BE009D007C00570046003300250C8320000E0020000191B030009011A0002500000C8320000A00000002125080025E4170018C418001074190008641E00201C00004A1C0000DC4500002108020008F416004A1C0000EA1C0000F04500002108020008341D00EA1C0000081D00001046000021000000EA1C0000081D000010460000210000004A1C0000EA1C0000F045000021000000201C00004A1C0000DC45000019EB0B00EBC4290017012A000BF009E007D005700460033002500000C83200003801000001130100134200000000000001000000011D0C001DC40B001D740A001D5409001D3408001D3219F017E015D01915080015740A001564090015340800155211E08C32000002000000372D00001A2E0000503300001A2E0000312D0000202E000075330000000000000106020006320250010F06000F6407000F3406000F320B700109010009620000090A04000A3406000A3206708C32000001000000CD2F0000003000009033000000300000010401000442000011060200063202308C32000001000000C73000002D310000B033000000000000010D04000D3409000D320650010A04000A3406000A320670000000000000000000000000A689E25B00000000BC470000010000000200000002000000A8470000B0470000B8470000301E0000201E0000CF470000DB47000000000100496D616765536561726368444C4C2E646C6C00496D61676553656172636800496D6167655465737400000000E04800000000000000000000BC4B000058400000904A00000000000000000000424C00' $DllBinary_x64 &= '0008420000884800000000000000000000FC4C000000400000804A00000000000000000000164D0000F8410000E04A000000000000000000003A4D000058420000704A00000000000000000000444D0000E8410000904900000000000000000000C64D0000084100000000000000000000000000000000000000000000E64C000000000000CA4C000000000000BA4C000000000000A44C0000000000008A4C000000000000704C000000000000624C0000000000004E4C000000000000F24C000000000000DA4C00000000000000000000000000009E4B000000000000AE4B000000000000764F000000000000604F000000000000904B0000000000002A4F000000000000164F000000000000064F000000000000F64E0000000000008C4F0000000000007E4B0000000000006E4B000000000000584B0000000000004C4B000000000000364B000000000000284B0000000000001A4B0000000000000C4B000000000000FE4A000000000000464F000000000000F04A0000000000000000000000000000024E000000000000D24E000000000000C84E000000000000BA4E000000000000AC4E000000000000A24E0000000000009A4E0000000000007C4E000000000000524D0000000000005E4D0000000000006A4D000000000000724D0000000000007C4D000000000000844D0000000000008E4D0000000000009C4D000000000000A64D000000000000B04D000000000000BA4D000000000000D44D000000000000E64D000000000000F44D0000000000000E4E0000000000001C4E000000000000344E0000000000004A4E000000000000644E0000000000000000000000000000A2010000000000800000000000000000064D0000000000000000000000000000D84B000000000000CA4B000000000000284C000000000000364C0000000000001C4C0000000000000E4C000000000000064C000000000000FA4B000000000000E64B0000000000000000000000000000224D0000000000000000000000000000880043726561746546696C654100F70147657446696C6553697A65006801467265654C69627261727900C602476C6F62616C4C6F636B0000BB02476C6F62616C416C6C6F6300EC0147657446696C6541747472696275746573410000C3035265616446696C65000069034D756C746942797465546F576964654368617200CD02476C6F62616C556E6C6F636B00004C0247657450726F63416464726573730000C202476C6F62616C4672656500003E034C6F61644C6962726172794100005200436C6F736548616E646C65004B45524E454C33322E646C6C0000A30044657374726F7949636F6E00F2014C6F6164496D616765410000800147657453797374656D4D6574726963730000690252656C65617365444300230147657444' $DllBinary_x64 &= '4300350147657449636F6E496E666F005400436F7079496D61676500C8004472617749636F6E45780000F60046696C6C5265637400005553455233322E646C6C00005400437265617465536F6C696442727573680000FB014765744F626A656374410000120247657453797374656D50616C65747465456E7472696573002F00437265617465436F6D70617469626C654269746D617000003000437265617465436F6D70617469626C6544430000770253656C6563744F626A6563740000E60044656C6574654F626A6563740000CA0147657444494269747300E30044656C657465444300001300426974426C74000047444933322E646C6C0027004578747261637449636F6E4100005348454C4C33322E646C6C008A0043726561746553747265616D4F6E48476C6F62616C006F6C6533322E646C6C004F4C4541555433322E646C6C000075045F73747269636D7000007F045F7374726E69636D70005006667265650000AA066D616C6C6F630000B60561746F6900001D07737472746F6C00004A0776737072696E74665F73000011077374726E63707900150773747272636872003407746F7570706572008606697378646967697400004D535643523132302E646C6C00005D015F5F4370705863707446696C74657200F2015F616D73675F6578697400006C035F6D616C6C6F635F63727400E1025F696E69747465726D00E2025F696E69747465726D5F65005C015F5F435F73706563696669635F68616E646C657200009D015F5F6372745F64656275676765725F686F6F6B009C015F5F637274556E68616E646C6564457863657074696F6E009B015F5F6372745465726D696E61746550726F63657373007E015F5F6372744361707475726550726576696F7573436F6E74657874005B035F6C6F636B00C7045F756E6C6F636B0009025F63616C6C6F635F637274009F015F5F646C6C6F6E657869740002045F6F6E65786974007B015F5F636C65616E5F747970655F696E666F5F6E616D65735F696E7465726E616C0000EE00456E636F6465506F696E74657200CB004465636F6465506F696E7465720002034973446562756767657250726573656E74000603497350726F636573736F724665617475726550726573656E7400A9035175657279506572666F726D616E6365436F756E74657200C70147657443757272656E7450726F63657373496400CB0147657443757272656E7454687265616449640000800247657453797374656D54696D65417346696C6554696D650000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000032A2DF2D992B0000CD5D20D266' $DllBinary_x64 &= 'D4FFFFFFFFFFFF75980000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010100000341200009045000040120000B112000090450000C01200002E1500009845000030150000181C0000BC450000201C00004A1C0000DC4500004A1C0000EA1C0000F0450000EA1C0000081D000010460000081D00009C1D0000244600009C1D0000A41D000038460000A41D0000001E000048460000001E0000191E000058460000301E0000B229000068460000C0290000EB2900008C460000002A00001F2A000098460000202A00007E2A000090450000802A0000CB2C00009C460000CC2C0000092D0000FC4600000C2D0000422E0000B8460000442E00008D2E000090450000902E0000612F00000C470000C02F00000D30000014470000403000008E30000090450000903000004031000040470000403100005731000038470000583100000432000060470000043200003C3200006C4700003C320000743200006C470000C8320000E532000038470000E83200004B330000904500005033000075330000F4460000753300008F330000F446000090330000B0330000F4460000B0330000CB330000F446000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' $DllBinary_x64 &= '01001800000018000080000000000000000000000000000001000200000030000080000000000000000000000000000001000904000048000000607000007D010000000000000000000000000000000000003C3F786D6C2076657273696F6E3D27312E302720656E636F64696E673D275554462D3827207374616E64616C6F6E653D27796573273F3E0D0A3C617373656D626C7920786D6C6E733D2775726E3A736368656D61732D6D6963726F736F66742D636F6D3A61736D2E763127206D616E696665737456657273696F6E3D27312E30273E0D0A20203C7472757374496E666F20786D6C6E733D2275726E3A736368656D61732D6D6963726F736F66742D636F6D3A61736D2E7633223E0D0A202020203C73656375726974793E0D0A2020202020203C72657175657374656450726976696C656765733E0D0A20202020202020203C726571756573746564457865637574696F6E4C6576656C206C6576656C3D276173496E766F6B6572272075694163636573733D2766616C736527202F3E0D0A2020202020203C2F72657175657374656450726976696C656765733E0D0A202020203C2F73656375726974793E0D0A20203C2F7472757374496E666F3E0D0A3C2F617373656D626C793E0D0A0000000000000000000000000000000000000000000000000000000000000000000000004000001400000080A288A2F0A2F8A2D8A40000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' Local $ImageSearchDLL_Binary = $DllBinary If @AutoItX64 Then $ImageSearchDLL_Binary = $DllBinary_x64 Local $ImageSearchDLL_FileExists = FileExists($ImageSearchDLL_Path) Local $ImageSearchDLL_FileSize = FileGetSize($ImageSearchDLL_Path) / 1024 If (Not $ImageSearchDLL_FileExists) Or ($ImageSearchDLL_FileSize < 10 Or $ImageSearchDLL_FileSize > 20) Then If $ImageSearchDLL_FileExists Then If StringInStr(FileGetAttrib($ImageSearchDLL_Path), "D") Then FileSetAttrib($ImageSearchDLL_Path, "-RAHS", 1) DirRemove($ImageSearchDLL_Path) Else FileSetAttrib($ImageSearchDLL_Path, "-RAHS") FileDelete($ImageSearchDLL_Path) EndIf EndIf Local $hOpen = FileOpen($ImageSearchDLL_Path, 2 + 8 + 16) FileWrite($hOpen, $ImageSearchDLL_Binary) FileClose($hOpen) $ImageSearchDLL_FileExists = FileExists($ImageSearchDLL_Path) $ImageSearchDLL_FileSize = (FileGetSize($ImageSearchDLL_Path) / 1024) EndIf If $ImageSearch_Debug Then ConsoleWrite("-- WorkingDir : " & @WorkingDir & @CRLF) ConsoleWrite("-- ScriptFullPath : " & @ScriptFullPath & @CRLF) ConsoleWrite("-- ImageSearchDLL : " & $ImageSearchDLL_Path & " (" & $ImageSearchDLL_FileSize & "kb)" & @CRLF) EndIf If (Not $ImageSearchDLL_FileExists) Then If $ImageSearch_Debug Then ConsoleWrite("! ImageSearchDLL is Not Found or Can't Write" & @CRLF & "! " & $ImageSearchDLL_Path & @CRLF) ; MsgBox(16 + 262144, "ImageSearchDLL", "ImageSearchDLL is Not Found or Can't Write !" & @CRLF & $ImageSearchDLL_Path) Return SetError(1, 0, 0) EndIf Return 1 EndFunc ;==>_ImageSearch_CheckDLL ; * -----:| Dao Van Trong - TRONG.LIVE  
       
    • By mLipok
      Here is just some usefull script analyzer:
      #include <ColorConstants.au3> #include <GUIConstantsEx.au3> #include <MsgBoxConstants.au3> #include <StaticConstants.au3> #include <TreeViewConstants.au3> #include <WindowsConstants.au3> #include <File.au3> #include <Array.au3> ; just put a FileFullPath to one of your project _UsedInclude_API() _GetAllDependencies("c:\Program Files (x86)\AutoIt3\SciTE\SciTE Jump\SciTE Jump.au3") _UsedInclude_API() _GetAllDependencies("c:\Program Files (x86)\AutoIt3\SciTE\AutoIt3Wrapper\AutoIt3Wrapper.au3") _UsedInclude_API() _GetAllDependencies("c:\Program Files (x86)\AutoIt3\SciTE\SciTEConfig\SciteConfig.au3" ) _UsedInclude_API() _GetAllDependencies(@ScriptFullPath) Func _GetAllDependencies($sFileToCheck) GUICreate("My GUI with treeview", 500, @DesktopHeight - 40) Local $idTreeview = GUICtrlCreateTreeView(6, 6, 488, @DesktopHeight - 40 - 12, BitOR($TVS_HASBUTTONS, $TVS_HASLINES, $TVS_LINESATROOT, $TVS_DISABLEDRAGDROP, $TVS_SHOWSELALWAYS), $WS_EX_CLIENTEDGE) Local $idDisplayitem = GUICtrlCreateTreeViewItem($sFileToCheck, $idTreeview) GUICtrlSetColor(-1, $COLOR_GREEN) __UsedIncludeToTreeView($sFileToCheck, $idDisplayitem) Local $hItem = GUICtrlGetHandle($idDisplayitem) GUICtrlSendMsg($idTreeview, $TVM_EXPAND, $TVE_TOGGLE, $hItem) GUISetState(@SW_SHOW) Local $idMsg ; Loop until the user exits. While 1 $idMsg = GUIGetMsg() Select Case $idMsg = $GUI_EVENT_CLOSE ExitLoop EndSelect WEnd EndFunc ;==>_GetAllDependencies Func _GetUsedIncludeToArray($sAU3Content) Local $aIncludes = StringRegExp($sAU3Content, '(?im)^\s*#include\s?[''""<](.*)\.au3[''"">]', 3) If @error Then Return SetError(@error, @extended, '') Else Return SetError(0, 0, $aIncludes) EndIf EndFunc ;==>_GetUsedIncludeToArray Func __UsedIncludeToTreeView($sFileToCheck, $idTreeview_ref) $hFile = FileOpen($sFileToCheck, $FO_READ) $sAU3Content = FileRead($hFile) FileClose($hFile) Local $aIncludes = _GetUsedIncludeToArray($sAU3Content) If @error Then Return SetError(@error, @extended, '') Else Local $idDisplayitem, $iNumberOfOccurrences = 0 For $iInclude_Idx = 0 To UBound($aIncludes) - 1 $iNumberOfOccurrences = _UsedInclude_API($aIncludes[$iInclude_Idx]) If $iNumberOfOccurrences = 0 Then $idDisplayitem = GUICtrlCreateTreeViewItem($aIncludes[$iInclude_Idx], $idTreeview_ref) __UsedIncludeToTreeView(_GetDir($sFileToCheck) & $aIncludes[$iInclude_Idx] & '.au3', $idDisplayitem) ElseIf $iNumberOfOccurrences = 1 Then $idDisplayitem = GUICtrlCreateTreeViewItem($aIncludes[$iInclude_Idx] & ' (Was used before: once)', $idTreeview_ref) GUICtrlSetColor(-1, $COLOR_RED) ElseIf $iNumberOfOccurrences = 2 Then $idDisplayitem = GUICtrlCreateTreeViewItem($aIncludes[$iInclude_Idx] & ' (Was used before: twice)', $idTreeview_ref) GUICtrlSetColor(-1, $COLOR_PURPLE) ElseIf $iNumberOfOccurrences > 2 Then $idDisplayitem = GUICtrlCreateTreeViewItem($aIncludes[$iInclude_Idx] & ' (Was used before more then twice)', $idTreeview_ref) GUICtrlSetColor(-1, $COLOR_BLUE) EndIf Next EndIf EndFunc ;==>__UsedIncludeToTreeView Func _UsedInclude_API($sIncludeFileName = Default) Local Static $sIncludeAPI_Static = '|' ; reset If $sIncludeFileName = Default Then $sIncludeAPI_Static = '|' Return EndIf StringReplace($sIncludeAPI_Static, '|' & $sIncludeFileName & '|', '|' & $sIncludeFileName & '|') Local $iNumberOfReplacements = @extended $sIncludeAPI_Static &= $sIncludeFileName & '|' Return SetError(0, 0, $iNumberOfReplacements) EndFunc ;==>_UsedInclude_API Func _GetDir($sFileFullPath) Local $sDrive = "", $sDir = "", $sFileName = "", $sExtension = "" Local $aPathSplit = _PathSplit($sFileFullPath, $sDrive, $sDir, $sFileName, $sExtension) Return $sDrive & $sDir EndFunc ;==>_GetDir  
      Have fun.
      mLipok
       
×
×
  • Create New...