├── .gitattributes ├── .gitignore ├── Distributed Zip ├── Benchmark.au3 ├── Changelog.txt ├── Credits.txt ├── FastFind 2_2.zip ├── FastFind.au3 ├── FastFind.chm ├── FastFind.dll ├── FastFind64.dll ├── FastFind_Demo.au3 └── Integration │ ├── FastFind.h │ └── FastFindDLL.def ├── FF help ├── Examples │ └── HelpFile │ │ ├── FFAddColor.au3 │ │ ├── FFBestSpot.au3 │ │ ├── FFNearestPixel.au3 │ │ ├── FFNearestSpot.au3 │ │ ├── FFSetDebugMode.au3 │ │ ├── FFSnapShot.au3 │ │ ├── FastFind.au3 │ │ ├── FastFind.dll │ │ ├── FastFind64.dll │ │ └── TRACER.TXT ├── FastFind.chm ├── FastFind.chw ├── FastFind.hhp ├── HelpDocs.zip ├── Index.hhk ├── Source │ ├── All_txt2htm.au3 │ ├── html │ │ ├── Introduction.htm │ │ ├── css │ │ │ └── default.css │ │ ├── examples │ │ │ ├── FFAddColor.txt.htm │ │ │ ├── FFBestSpot.txt.htm │ │ │ ├── FFNearestPixel.txt.htm │ │ │ ├── FFNearestSpot.txt.htm │ │ │ ├── FFSetDebugMode.txt.htm │ │ │ └── FFSnapShot.txt.htm │ │ ├── functions │ │ │ ├── FFAddColor.htm │ │ │ ├── FFAddExcludedArea.htm │ │ │ ├── FFBestSpot.htm │ │ │ ├── FFColorCount.htm │ │ │ ├── FFDrawSnapShot.htm │ │ │ ├── FFDuplicateSnapShot.htm │ │ │ ├── FFGetLastError.htm │ │ │ ├── FFGetLastFileName.htm │ │ │ ├── FFGetPixel.htm │ │ │ ├── FFGetVersion.htm │ │ │ ├── FFIsDifferent.htm │ │ │ ├── FFIsExcluded.htm │ │ │ ├── FFKeepChanges.htm │ │ │ ├── FFKeepColor.htm │ │ │ ├── FFLocalizeChanges.htm │ │ │ ├── FFNearestPixel.htm │ │ │ ├── FFNearestSpot.htm │ │ │ ├── FFRemoveColor.htm │ │ │ ├── FFResetColors.htm │ │ │ ├── FFResetExcludedAreas.htm │ │ │ ├── FFSaveBMP.htm │ │ │ ├── FFSaveJPG.htm │ │ │ ├── FFSetDebugMode.htm │ │ │ ├── FFSetDefaultSnapShot.htm │ │ │ ├── FFSetPixel.htm │ │ │ ├── FFSetWnd.htm │ │ │ ├── FFSnapShot.htm │ │ │ ├── FFTrace.htm │ │ │ └── FFTraceError.htm │ │ └── images │ │ │ ├── FindSpotExplain.png │ │ │ └── blue_gradient_1024x24.jpg │ ├── include │ │ ├── CompileLib.au3 │ │ ├── FTP.au3 │ │ └── OutputLib.au3 │ ├── txt2htm.ini │ ├── txt2htm │ │ ├── HelpFileGenerator │ │ │ ├── Defaults.ini │ │ │ ├── Help_File_Generator.au3 │ │ │ └── Templates │ │ │ │ └── HelpTemplate.txt │ │ ├── examples │ │ │ ├── FFAddColor.au3 │ │ │ ├── FFBestSpot.au3 │ │ │ ├── FFNearestPixel.au3 │ │ │ ├── FFNearestSpot.au3 │ │ │ ├── FFSetDebugMode.au3 │ │ │ ├── FFSnapShot.au3 │ │ │ ├── FastFind.au3 │ │ │ ├── FastFind.dll │ │ │ ├── FastFind64.dll │ │ │ └── TRACER.TXT │ │ └── txtFunctions │ │ │ ├── FFAddColor.txt │ │ │ ├── FFAddExcludedArea.txt │ │ │ ├── FFBestSpot.txt │ │ │ ├── FFColorCount.txt │ │ │ ├── FFDrawSnapShot.txt │ │ │ ├── FFDuplicateSnapShot.txt │ │ │ ├── FFGetLastError.txt │ │ │ ├── FFGetLastFileName.txt │ │ │ ├── FFGetPixel.txt │ │ │ ├── FFGetVersion.txt │ │ │ ├── FFIsDifferent.txt │ │ │ ├── FFIsExcluded.txt │ │ │ ├── FFKeepChanges.txt │ │ │ ├── FFKeepColor.txt │ │ │ ├── FFLocalizeChanges.txt │ │ │ ├── FFNearestPixel.txt │ │ │ ├── FFNearestSpot.txt │ │ │ ├── FFRemoveColor.txt │ │ │ ├── FFResetColors.txt │ │ │ ├── FFResetExcludedAreas.txt │ │ │ ├── FFSaveBMP.txt │ │ │ ├── FFSaveJPG.txt │ │ │ ├── FFSetDebugMode.txt │ │ │ ├── FFSetDefaultSnapShot.txt │ │ │ ├── FFSetPixel.txt │ │ │ ├── FFSetWnd.txt │ │ │ ├── FFSnapShot.txt │ │ │ ├── FFTrace.txt │ │ │ └── FFTraceError.txt │ └── txt2htm_error.log ├── Table of Contents.hhc ├── html │ ├── Introduction.htm │ ├── css │ │ └── default.css │ ├── examples │ │ ├── FFAddColor.txt.htm │ │ ├── FFBestSpot.txt.htm │ │ ├── FFNearestPixel.txt.htm │ │ ├── FFNearestSpot.txt.htm │ │ ├── FFSetDebugMode.txt.htm │ │ └── FFSnapShot.txt.htm │ ├── functions │ │ ├── FFAddColor.htm │ │ ├── FFAddExcludedArea.htm │ │ ├── FFApplyFilterOnSnapShot.htm │ │ ├── FFBestSpot.htm │ │ ├── FFColorCount.htm │ │ ├── FFComputeMeanValues.htm │ │ ├── FFDrawSnapShot.htm │ │ ├── FFDrawSnapShotXY.htm │ │ ├── FFDuplicateSnapShot.htm │ │ ├── FFGetLastError.htm │ │ ├── FFGetLastFileName.htm │ │ ├── FFGetPixel.htm │ │ ├── FFGetRawData.htm │ │ ├── FFGetVersion.htm │ │ ├── FFIsDifferent.htm │ │ ├── FFIsExcluded.htm │ │ ├── FFKeepChanges.htm │ │ ├── FFKeepColor.htm │ │ ├── FFLocalizeChanges.htm │ │ ├── FFNearestPixel.htm │ │ ├── FFNearestSpot.htm │ │ ├── FFRemoveColor.htm │ │ ├── FFResetColors.htm │ │ ├── FFResetExcludedAreas.htm │ │ ├── FFSaveBMP.htm │ │ ├── FFSaveJPG.htm │ │ ├── FFSetDebugMode.htm │ │ ├── FFSetDefaultSnapShot.htm │ │ ├── FFSetPixel.htm │ │ ├── FFSetWnd.htm │ │ ├── FFSnapShot.htm │ │ ├── FFTrace.htm │ │ └── FFTraceError.htm │ └── images │ │ ├── FindSpotExplain.png │ │ └── blue_gradient_1024x24.jpg └── htmlhelp.exe ├── FFShowPixels.exe ├── FastFind.sln ├── FastFindDLL.def ├── FastFindDLL ├── DofusSpecific.cpp ├── FastFind.cpp ├── FastFind.h ├── FastFind.rc ├── FastFindDLL.filters ├── FastFindDLL.vcproj ├── FastFindDLL.vcxproj ├── HiResTimer.cpp ├── HiResTimer.h ├── ImageProcessing.cpp ├── New in 2_0.txt ├── PixelProcessing.cpp ├── PixelProcessing.h ├── SnapShots.cpp ├── Specific.cpp ├── Tracer.cpp ├── Tracer.h ├── Win9x.asm ├── license.txt ├── proto.h ├── resource.h ├── stdafx.cpp └── stdafx.h ├── README.md └── ShowPixels ├── DlgProxy.h ├── MouseHook.cpp ├── MouseHook.h ├── ReadMe.txt ├── ShowPixels.cpp ├── ShowPixels.h ├── ShowPixels.idl ├── ShowPixels.rc ├── ShowPixels.reg ├── ShowPixels.vcxproj ├── ShowPixels.vcxproj.filters ├── ShowPixelsDlg.cpp ├── ShowPixelsDlg.h ├── ShowPixels_h.h ├── TRACER.TXT ├── res ├── ShowPixels.ico └── ShowPixels.rc2 ├── resource.h ├── stdafx.cpp └── targetver.h /.gitattributes: -------------------------------------------------------------------------------- 1 | # Auto detect text files and perform LF normalization 2 | * text=auto 3 | 4 | # Custom for Visual Studio 5 | *.cs diff=csharp 6 | *.sln merge=union 7 | *.csproj merge=union 8 | *.vbproj merge=union 9 | *.fsproj merge=union 10 | *.dbproj merge=union 11 | 12 | # Standard to msysgit 13 | *.doc diff=astextplain 14 | *.DOC diff=astextplain 15 | *.docx diff=astextplain 16 | *.DOCX diff=astextplain 17 | *.dot diff=astextplain 18 | *.DOT diff=astextplain 19 | *.pdf diff=astextplain 20 | *.PDF diff=astextplain 21 | *.rtf diff=astextplain 22 | *.RTF diff=astextplain 23 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | ################# 2 | ## Eclipse 3 | ################# 4 | 5 | *.pydevproject 6 | .project 7 | .metadata 8 | bin/ 9 | tmp/ 10 | *.tmp 11 | *.bak 12 | *.swp 13 | *~.nib 14 | local.properties 15 | .classpath 16 | .settings/ 17 | .loadpath 18 | 19 | # External tool builders 20 | .externalToolBuilders/ 21 | 22 | # Locally stored "Eclipse launch configurations" 23 | *.launch 24 | 25 | # CDT-specific 26 | .cproject 27 | 28 | # PDT-specific 29 | .buildpath 30 | 31 | 32 | ################# 33 | ## Visual Studio 34 | ################# 35 | 36 | ## Ignore Visual Studio temporary files, build results, and 37 | ## files generated by popular Visual Studio add-ons. 38 | 39 | # User-specific files 40 | *.suo 41 | *.user 42 | *.sln.docstates 43 | 44 | # Build results 45 | [Dd]ebug/ 46 | [Rr]elease/ 47 | *_i.c 48 | *_p.c 49 | *.ilk 50 | *.meta 51 | *.obj 52 | *.pch 53 | *.pdb 54 | *.pgc 55 | *.pgd 56 | *.rsp 57 | *.sbr 58 | *.tlb 59 | *.tli 60 | *.tlh 61 | *.tmp 62 | *.vspscc 63 | .builds 64 | *.dotCover 65 | 66 | ## TODO: If you have NuGet Package Restore enabled, uncomment this 67 | #packages/ 68 | 69 | # Visual C++ cache files 70 | ipch/ 71 | *.aps 72 | *.ncb 73 | *.opensdf 74 | *.sdf 75 | 76 | # Visual Studio profiler 77 | *.psess 78 | *.vsp 79 | 80 | # ReSharper is a .NET coding add-in 81 | _ReSharper* 82 | 83 | # Installshield output folder 84 | [Ee]xpress 85 | 86 | # DocProject is a documentation generator add-in 87 | DocProject/buildhelp/ 88 | DocProject/Help/*.HxT 89 | DocProject/Help/*.HxC 90 | DocProject/Help/*.hhc 91 | DocProject/Help/*.hhk 92 | DocProject/Help/*.hhp 93 | DocProject/Help/Html2 94 | DocProject/Help/html 95 | 96 | # Click-Once directory 97 | publish 98 | 99 | # Others 100 | [Bb]in 101 | [Oo]bj 102 | sql 103 | TestResults 104 | *.Cache 105 | ClientBin 106 | stylecop.* 107 | ~$* 108 | *.dbmdl 109 | Generated_Code #added for RIA/Silverlight projects 110 | 111 | # Backup & report files from converting an old project file to a newer 112 | # Visual Studio version. Backup files are not needed, because we have git ;-) 113 | _UpgradeReport_Files/ 114 | Backup*/ 115 | UpgradeLog*.XML 116 | 117 | 118 | 119 | ############ 120 | ## Windows 121 | ############ 122 | 123 | # Windows image file caches 124 | Thumbs.db 125 | 126 | # Folder config file 127 | Desktop.ini 128 | 129 | 130 | ############# 131 | ## Python 132 | ############# 133 | 134 | *.py[co] 135 | 136 | # Packages 137 | *.egg 138 | *.egg-info 139 | dist 140 | build 141 | eggs 142 | parts 143 | bin 144 | var 145 | sdist 146 | develop-eggs 147 | .installed.cfg 148 | 149 | # Installer logs 150 | pip-log.txt 151 | 152 | # Unit test / coverage reports 153 | .coverage 154 | .tox 155 | 156 | #Translations 157 | *.mo 158 | 159 | #Mr Developer 160 | .mr.developer.cfg 161 | 162 | # Mac crap 163 | .DS_Store 164 | FFShowPixels1_7.zip 165 | TRACER.TXT 166 | FFShowPixels.txt 167 | FFColors.jpg 168 | -------------------------------------------------------------------------------- /Distributed Zip/Benchmark.au3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FastFrench/FastFind/693c5c1eed3ebe228d8e10eca0f4e822e5c26c00/Distributed Zip/Benchmark.au3 -------------------------------------------------------------------------------- /Distributed Zip/Changelog.txt: -------------------------------------------------------------------------------- 1 | - [v1.4] : find the "best spot" - meaning the spot that has the best number of "right" colors. 2 | - [v1.4] : now provided with a tool, FFShowPixels.exe, to find colors, manage color lists, show all occurences of them on the Captured Window, and... automatically generates AutoIt or C++ code. 3 | - [v1.6] : Saves SnapShots on BitMaps (BMP and JPG supported) 4 | - [v1.6] : Modifies SnapShots with "filters" (Keep only some colors or only pixels that have changes. All other pixels can be turned to black). 5 | - [v1.7] : Can change pixels colors on SnapShots (SetPixel) 6 | - [v1.7] : Can access the Raw pixel data of SnapShots (GetRawData) 7 | - [v1.7] : Can draw back SnapShots on Screen. 8 | - [v1.8] : Bug fixes. Deleted 9 | - [v1.8.1] : Bug fixes (FastFind.au3). 10 | - [v1.8.2] : Bug fixes (FastFind.au3). 11 | - [v1.8.3] : Bug fixes (FastFind.au3). Deleted 12 | - [v1.8.4] : Should now run on early XP and Windows 2000 OS. 13 | - [v2.0] : Documentation file in english (FastFind.chm), several new functions and new feature on some old functions. 14 | - [v2.1] : Bug fixes (errors in message boxes). 15 | - [v2.2] : Crashes + error messages (not gone in 2.1 ?!). 16 | -------------------------------------------------------------------------------- /Distributed Zip/Credits.txt: -------------------------------------------------------------------------------- 1 | FastFrench (antispam@laposte.net): Author of FastFind 2 | 3 | Some parts and concept come from Chris Mallett (support@autohotkey.com), modified by kangkengkingkong@hotmail.com 4 | 5 | CeramicWeasel : Help file in English for version 1.8 (FastFind.chm) 6 | Frank10 : Update 1.8.4 => 2.0 Autoit Wrapper 7 | 8 | 9 | AutoIt forum : http://www.autoitscript.com/forum/topic/126430-advanced-pixel-search-library/ -------------------------------------------------------------------------------- /Distributed Zip/FastFind 2_2.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FastFrench/FastFind/693c5c1eed3ebe228d8e10eca0f4e822e5c26c00/Distributed Zip/FastFind 2_2.zip -------------------------------------------------------------------------------- /Distributed Zip/FastFind.au3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FastFrench/FastFind/693c5c1eed3ebe228d8e10eca0f4e822e5c26c00/Distributed Zip/FastFind.au3 -------------------------------------------------------------------------------- /Distributed Zip/FastFind.chm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FastFrench/FastFind/693c5c1eed3ebe228d8e10eca0f4e822e5c26c00/Distributed Zip/FastFind.chm -------------------------------------------------------------------------------- /Distributed Zip/FastFind.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FastFrench/FastFind/693c5c1eed3ebe228d8e10eca0f4e822e5c26c00/Distributed Zip/FastFind.dll -------------------------------------------------------------------------------- /Distributed Zip/FastFind64.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FastFrench/FastFind/693c5c1eed3ebe228d8e10eca0f4e822e5c26c00/Distributed Zip/FastFind64.dll -------------------------------------------------------------------------------- /Distributed Zip/FastFind_Demo.au3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FastFrench/FastFind/693c5c1eed3ebe228d8e10eca0f4e822e5c26c00/Distributed Zip/FastFind_Demo.au3 -------------------------------------------------------------------------------- /Distributed Zip/Integration/FastFind.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FastFrench/FastFind/693c5c1eed3ebe228d8e10eca0f4e822e5c26c00/Distributed Zip/Integration/FastFind.h -------------------------------------------------------------------------------- /Distributed Zip/Integration/FastFindDLL.def: -------------------------------------------------------------------------------- 1 | LIBRARY "FastFind" 2 | 3 | EXPORTS 4 | SetDebugMode 5 | DebugTrace 6 | DebugError 7 | 8 | SetHWnd 9 | GetLastErrorMsg 10 | 11 | AddExcludedArea 12 | ResetExcludedAreas 13 | IsExcluded 14 | 15 | FFTest 16 | FFVersion 17 | 18 | SnapShot 19 | 20 | ProgressiveSearch 21 | GenericColorSearch 22 | ColorCount 23 | ColorPixelSearch 24 | 25 | LocalizeChanges 26 | HasChanged 27 | 28 | FFGetPixel 29 | 30 | AddColor 31 | RemoveColor 32 | ResetColors 33 | ColorsSearch 34 | ColorsPixelSearch 35 | 36 | SaveBMP 37 | SaveJPG 38 | GetLastFileSuffix 39 | 40 | KeepChanges 41 | KeepColor 42 | 43 | 44 | DrawSnapShot 45 | DrawSnapShotXY 46 | FFSetPixel 47 | 48 | DuplicateSnapShot 49 | GetRawData 50 | 51 | ApplyFilterOnSnapShot 52 | ComputeMeanValues 53 | -------------------------------------------------------------------------------- /FF help/Examples/HelpFile/FFAddColor.au3: -------------------------------------------------------------------------------- 1 | #include "FastFind.au3" 2 | 3 | Local $aColorArray[2] = [0x00FFFFFF, 0x00000000] 4 | 5 | FFAddColor($aColorArray) 6 | FFAddColor(0x00FF0000) 7 | -------------------------------------------------------------------------------- /FF help/Examples/HelpFile/FFBestSpot.au3: -------------------------------------------------------------------------------- 1 | #include "FastFind.au3" 2 | 3 | $FFhWnd = WinGetHandle("[ACTIVE]") 4 | FFSetWnd($FFhWnd) 5 | FFSnapShot() 6 | 7 | Local $aCoords = FFBestSpot(20, 25, 150, 0, 0, 0x00FFFFFF, False) 8 | 9 | If Not @error Then 10 | MsgBox(0, "Coords", $aCoords[0] & ", " & $aCoords[1]) 11 | Else 12 | MsgBox(0, "Coords", "Match not found.") 13 | EndIf -------------------------------------------------------------------------------- /FF help/Examples/HelpFile/FFNearestPixel.au3: -------------------------------------------------------------------------------- 1 | #include "FastFind.au3" 2 | 3 | $FFhWnd = WinGetHandle("[ACTIVE]") 4 | FFSetWnd($FFhWnd) 5 | FFSnapShot() 6 | 7 | Local $aCoords = FFNearestPixel(50, 20, 0x00FFFFFF, False) 8 | 9 | If Not @error Then 10 | MsgBox(0, "Coords", $aCoords[0] & ", " & $aCoords[1]) 11 | Else 12 | MsgBox(0, "Coords", "Match not found.") 13 | EndIf -------------------------------------------------------------------------------- /FF help/Examples/HelpFile/FFNearestSpot.au3: -------------------------------------------------------------------------------- 1 | #include "FastFind.au3" 2 | 3 | $FFhWnd = WinGetHandle("[ACTIVE]") 4 | FFSetWnd($FFhWnd) 5 | FFSnapShot() 6 | 7 | Local $aCoords = FFNearestSpot(10, 25, 0, 0, 0x00FFFFFF, False) 8 | 9 | If Not @error Then 10 | MsgBox(0, "Coords", $aCoords[0] & ", " & $aCoords[1]) 11 | Else 12 | MsgBox(0, "Coords", "Match not found.") 13 | EndIf -------------------------------------------------------------------------------- /FF help/Examples/HelpFile/FFSetDebugMode.au3: -------------------------------------------------------------------------------- 1 | #include "FastFind.au3" 2 | #Include 3 | 4 | #RequireAdmin 5 | 6 | FFSetDebugMode(7) ; console + file + graphical -------------------------------------------------------------------------------- /FF help/Examples/HelpFile/FFSnapShot.au3: -------------------------------------------------------------------------------- 1 | #include "FastFind.au3" 2 | 3 | AutoItSetOption("WinTitleMatchMode", 4) 4 | 5 | $FFhWnd = WinGetHandle("[ACTIVE]") 6 | FFSetWnd($FFhWnd) 7 | 8 | FFSnapShot(0, 0, 300, 150) 9 | FFSaveBMP(@YEAR & "-" & @MON & "-" & @MDAY & "_" & @HOUR & @MIN & @SEC, false) -------------------------------------------------------------------------------- /FF help/Examples/HelpFile/FastFind.au3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FastFrench/FastFind/693c5c1eed3ebe228d8e10eca0f4e822e5c26c00/FF help/Examples/HelpFile/FastFind.au3 -------------------------------------------------------------------------------- /FF help/Examples/HelpFile/FastFind.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FastFrench/FastFind/693c5c1eed3ebe228d8e10eca0f4e822e5c26c00/FF help/Examples/HelpFile/FastFind.dll -------------------------------------------------------------------------------- /FF help/Examples/HelpFile/FastFind64.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FastFrench/FastFind/693c5c1eed3ebe228d8e10eca0f4e822e5c26c00/FF help/Examples/HelpFile/FastFind64.dll -------------------------------------------------------------------------------- /FF help/Examples/HelpFile/TRACER.TXT: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FastFrench/FastFind/693c5c1eed3ebe228d8e10eca0f4e822e5c26c00/FF help/Examples/HelpFile/TRACER.TXT -------------------------------------------------------------------------------- /FF help/FastFind.chm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FastFrench/FastFind/693c5c1eed3ebe228d8e10eca0f4e822e5c26c00/FF help/FastFind.chm -------------------------------------------------------------------------------- /FF help/FastFind.chw: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FastFrench/FastFind/693c5c1eed3ebe228d8e10eca0f4e822e5c26c00/FF help/FastFind.chw -------------------------------------------------------------------------------- /FF help/FastFind.hhp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FastFrench/FastFind/693c5c1eed3ebe228d8e10eca0f4e822e5c26c00/FF help/FastFind.hhp -------------------------------------------------------------------------------- /FF help/HelpDocs.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FastFrench/FastFind/693c5c1eed3ebe228d8e10eca0f4e822e5c26c00/FF help/HelpDocs.zip -------------------------------------------------------------------------------- /FF help/Source/html/Introduction.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FastFind 5 | 6 | 7 | 8 | 9 | 10 |
FastFind
11 |

Introduction

12 |

FastFind is an advanced pixel search library for AutoIt scripts. It replaces and improves upon the functionality of the standard AutoIt pixel search functions, PixelGetColor and PixelSearch, allowing for more complex searches to be performed at much faster speeds.
13 |
14 | It consists of a .dll file that contains the pixel searching logic, and an AutoIt wrapper file, which acts as an interface between your AutoIt script and the DLL. To start using FastFind, simply copy the files into the same folder as your script, and insert #include "FastFind.au3" near the top of your script file. You will then be able to reference the FastFind functions listed in this help file.

15 |

 

16 | 17 |

Required Files:

18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 |
FastFind.au3AutoIt wrapper (include)
FastFind.dllLibrary for 32bit systems
FastFind64.dllLibrary for 64bit systems
32 | 33 |

 

34 |

How FastFind Works

35 |

One of the reasons FastFind is so much quicker than AutoIt's native pixel search functions is it's use of SnapShots. A SnapShot is basically a pixel map of a specified area on screen as it looked at the time the SnapShot was taken. This pixel information is stored in active memory, which means your script can access it much, much faster than the time it would take to make a new pixel request from the screen. Once a SnapShot is taken, search operations can be performed on that SnapShot until that memory is freed or overwritten.
36 |
37 | It is possible to retain up to 1024 different SnapShots simultaneously, but storing an 800x600 SnapShot will divert about 1.8MB of available RAM, so the size and quantity of SnapShots in use at any given time should be kept to a minimum.
38 |
39 | FastFind pixel search functions will automatically take a new SnapShot and store it in the default 'slot' when they are called, unless you specify otherwise in the function parameters. This will cause a previous SnapShot to be overwritten if it is also stored in the default 'slot'. Check the individual function help pages for more details and instructions on how to change this behavior.
40 |
41 | More advanced operations can be performed with the pixel search functions by maintaining a list of colors and exclusion zones.

42 | 43 | 44 | 45 | -------------------------------------------------------------------------------- /FF help/Source/html/examples/FFAddColor.txt.htm: -------------------------------------------------------------------------------- 1 | 2 | #include "FastFind.au3" 3 | 4 | Local $aColorArray[2] = [0x00FFFFFF, 0x00000000] 5 | 6 | FFAddColor($aColorArray) 7 | FFAddColor(0x00FF0000) 8 | 9 | -------------------------------------------------------------------------------- /FF help/Source/html/examples/FFBestSpot.txt.htm: -------------------------------------------------------------------------------- 1 | 2 | #include "FastFind.au3" 3 | 4 | $FFhWnd = WinGetHandle("[ACTIVE]") 5 | FFSetWnd($FFhWnd) 6 | FFSnapShot() 7 | 8 | Local $aCoords = FFBestSpot(20, 25, 150, 0, 0, 0x00FFFFFF, False) 9 | 10 | If Not @error Then 11 |     MsgBox(0, "Coords", $aCoords[0] & ", " & $aCoords[1]) 12 | Else 13 |     MsgBox(0, "Coords", "Match not found.") 14 | EndIf 15 | -------------------------------------------------------------------------------- /FF help/Source/html/examples/FFNearestPixel.txt.htm: -------------------------------------------------------------------------------- 1 | 2 | #include "FastFind.au3" 3 | 4 | $FFhWnd = WinGetHandle("[ACTIVE]") 5 | FFSetWnd($FFhWnd) 6 | FFSnapShot() 7 | 8 | Local $aCoords = FFNearestPixel(50, 20, 0x00FFFFFF, False) 9 | 10 | If Not @error Then 11 |     MsgBox(0, "Coords", $aCoords[0] & ", " & $aCoords[1]) 12 | Else 13 |     MsgBox(0, "Coords", "Match not found.") 14 | EndIf 15 | -------------------------------------------------------------------------------- /FF help/Source/html/examples/FFNearestSpot.txt.htm: -------------------------------------------------------------------------------- 1 | 2 | #include "FastFind.au3" 3 | 4 | $FFhWnd = WinGetHandle("[ACTIVE]") 5 | FFSetWnd($FFhWnd) 6 | FFSnapShot() 7 | 8 | Local $aCoords = FFNearestSpot(10, 25, 0, 0, 0x00FFFFFF, False) 9 | 10 | If Not @error Then 11 |     MsgBox(0, "Coords", $aCoords[0] & ", " & $aCoords[1]) 12 | Else 13 |     MsgBox(0, "Coords", "Match not found.") 14 | EndIf 15 | -------------------------------------------------------------------------------- /FF help/Source/html/examples/FFSetDebugMode.txt.htm: -------------------------------------------------------------------------------- 1 | 2 | #include "FastFind.au3" 3 | #Include <WinAPI.au3> 4 | 5 | #RequireAdmin 6 | 7 | FFSetDebugMode(7) ; console + file + graphical 8 | -------------------------------------------------------------------------------- /FF help/Source/html/examples/FFSnapShot.txt.htm: -------------------------------------------------------------------------------- 1 | 2 | #include "FastFind.au3" 3 | 4 | AutoItSetOption("WinTitleMatchMode", 4) 5 | 6 | $FFhWnd = WinGetHandle("[ACTIVE]") 7 | FFSetWnd($FFhWnd) 8 | 9 | FFSnapShot(0, 0, 300, 150) 10 | FFSaveBMP(@YEAR & "-" & @MON & "-" & @MDAY & "_" & @HOUR & @MIN & @SEC, false) 11 | -------------------------------------------------------------------------------- /FF help/Source/html/functions/FFAddColor.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFAddColor 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFAddColor 12 |
13 |

Add one or more colors to the color list maintained by FastFind.

14 | 15 |

16 | FFAddColor ( NewColor )
17 |

18 |

 

19 | 20 |

Parameters

21 | 22 | 23 | 24 | 25 | 26 |
NewColorColor value or an array of color values.
27 | 28 |

 

29 | 30 |

Return Value

31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 |
Success:Returns 1
Failure:Returns 0
41 |

 

42 | 43 |

Remarks

44 | The color list can be used when calling search functions, to search for multiple colors instead of one.
45 |
46 |

 

47 | 48 |

Related

49 | FFRemoveColor, FFResetColors, FFNearestPixel, FFNearestSpot, FFBestSpot 50 |

 

51 | 52 |

Example

53 |

54 |
55 | #include "FastFind.au3"
56 |
57 | Local $aColorArray[2] = [0x00FFFFFF, 0x00000000]
58 |
59 | FFAddColor($aColorArray)
60 | FFAddColor(0x00FF0000)
61 |

62 | 66 |

 

67 | 68 | 69 | 70 | -------------------------------------------------------------------------------- /FF help/Source/html/functions/FFAddExcludedArea.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFAddExcludedArea 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFAddExcludedArea 12 |
13 |

Adds an exclusion zone.

14 | 15 |

16 | FFAddExcludedArea ( x1, y1, x2, y2 )
17 |

18 |

 

19 | 20 |

Parameters

21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 |
x1Left coordinate of exlusion area.
y1Top coordinate of exlusion area.
x2Right coordinate of exlusion area.
y2Bottom coordinate of exlusion area.
39 | 40 |

 

41 | 42 |

Return Value

43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 |
Success:Returns 1
Failure:Returns 0
53 |

 

54 | 55 |

Remarks

56 | Exclusion zones are used to restrict the search area in the FastFind search functions. It is possible to have up to 1024 rectangles of exclusion, thereby precisely removing any search area. Once set, the exclusion zones will apply to all FastFind searches until they're reset.
57 |
58 |

 

59 | 60 |

Related

61 | FFResetExcludedAreas, FFIsExcluded, FFNearestPixel, FFNearestSpot, FFBestSpot 62 |

 

63 | 64 | 65 | 66 | -------------------------------------------------------------------------------- /FF help/Source/html/functions/FFColorCount.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFColorCount 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFColorCount 12 |
13 |

Counts the number of pixels of a given color in a SnapShot.

14 | 15 |

16 | FFColorCount ( ColorToCount, [ShadeVariation [, ForceNewSnap [, Left [, Top [, Right [, Bottom [, NoSnapShot [, WindowHandle]]]]]]]] )
17 |

18 |

 

19 | 20 |

Parameters

21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 |
ColorToCountColour value of pixels to count (in decimal or hex).
ShadeVariation [optional] A number between 0 and 255 to indicate the allowed number of shades of variation of the red, green, and blue components of the colour. Default is 0 (exact match).
ForceNewSnap [optional] If true, a new SnapShot will be made and the count will be done on that. Default is True.
Left [optional] Left coordinate of the new SnapShot area. Default is 0.
Top [optional] Top coordinate of the new SnapShot area. Default is 0.
Right [optional] Right coordinate of the new SnapShot area. Default is 0.
Bottom [optional] Bottom coordinate of the new SnapShot area. Default is 0.
NoSnapShot [optional] SnapShot number. Determines which "slot" the new SnapShot will be stored in.
WindowHandle [optional] Window handle to be used.
59 | 60 |

 

61 | 62 |

Return Value

63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 |
Success:Returns the number of matching pixels
Failure:Returns False
73 |

 

74 | 75 |

Remarks

76 | None.
77 |
78 |

 

79 | 80 |

Related

81 | FFSnapShot 82 |

 

83 | 84 | 85 | 86 | -------------------------------------------------------------------------------- /FF help/Source/html/functions/FFDrawSnapShot.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFDrawSnapShot 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFDrawSnapShot 12 |
13 |

Draws the SnapShot back onto the screen.

14 | 15 |

16 | FFDrawSnapShot ( [ NoSnapShot ] )
17 |

18 |

 

19 | 20 |

Parameters

21 | 22 | 23 | 24 | 25 | 26 |
NoSnapShot [optional] SnapShot number. Default is the most recent SnapShot taken.
27 | 28 |

 

29 | 30 |

Return Value

31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 |
Success:Returns 1
Failure:Returns 0 and sets @ERROR
41 |

 

42 | 43 |

Remarks

44 | The SnapShot will be drawn on the same Window and position it was taken from, and will include modifications.
45 |
46 |

 

47 | 48 |

Related

49 | FFSnapShot, FFSetPixel, FFKeepChanges, FFKeepColor 50 |

 

51 | 52 | 53 | 54 | -------------------------------------------------------------------------------- /FF help/Source/html/functions/FFDuplicateSnapShot.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFDuplicateSnapShot 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFDuplicateSnapShot 12 |
13 |

Makes a copy of a SnapShot.

14 | 15 |

16 | FFDuplicateSnapShot ( NoSnapShotSrc, NoSnapShotDst )
17 |

18 |

 

19 | 20 |

Parameters

21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 |
NoSnapShotSrcThe "slot" number of the source SnapShot.
NoSnapShotDstThe destination "slot" number where the duplicate SnapShot will be stored.
31 | 32 |

 

33 | 34 |

Return Value

35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 |
Success:Returns 1
Failure:Returns 0 and sets @ERROR
45 |

 

46 | 47 |

Remarks

48 | None.
49 |
50 |

 

51 | 52 |

Related

53 | FFSnapShot 54 |

 

55 | 56 | 57 | 58 | -------------------------------------------------------------------------------- /FF help/Source/html/functions/FFGetLastError.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFGetLastError 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFGetLastError 12 |
13 |

Returns the last error message from the DLL's debug channels.

14 | 15 |

16 | FFGetLastError ( )
17 |

18 |

 

19 | 20 |

Parameters

21 | None.
22 | 23 |

 

24 | 25 |

Return Value

26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 |
Success:Returns the error message.
Failure:Returns an empty string and sets @ERROR
36 |

 

37 | 38 |

Remarks

39 | This function won't work if all debug options are disabled, as error strings won't be initialized.
40 |
41 |

 

42 | 43 |

Related

44 | FFSetDebugMode, FFTraceError 45 |

 

46 | 47 | 48 | 49 | -------------------------------------------------------------------------------- /FF help/Source/html/functions/FFGetLastFileName.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFGetLastFileName 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFGetLastFileName 12 |
13 |

Returns the filename of the last BMP or JPG saved by FastFind.

14 | 15 |

16 | FFGetLastFileName ( )
17 |

18 |

 

19 | 20 |

Parameters

21 | None.
22 | 23 |

 

24 | 25 |

Return Value

26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 |
Success:Returns the file name.
Failure:Returns an empty string.
36 |

 

37 | 38 |

Remarks

39 | None.
40 |
41 |

 

42 | 43 |

Related

44 | FFSaveBMP, FFSaveJPG 45 |

 

46 | 47 | 48 | 49 | -------------------------------------------------------------------------------- /FF help/Source/html/functions/FFGetPixel.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFGetPixel 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFGetPixel 12 |
13 |

Returns the color value of a specified pixel in a SnapShot.

14 | 15 |

16 | FFGetPixel ( x, y [, NoSnapShot ] )
17 |

18 |

 

19 | 20 |

Parameters

21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 |
xX coordinate of pixel.
yY coordinate of pixel.
NoSnapShot [optional] SnapShot number. Default is the most recent SnapShot taken.
35 | 36 |

 

37 | 38 |

Return Value

39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 |
Success:Returns the color value of the pixel.
Failure:Returns -1 and sets @ERROR
49 |

 

50 | 51 |

Remarks

52 | None.
53 |
54 |

 

55 | 56 |

Related

57 | FFSnapShot, FFNearestPixel, FFNearestSpot 58 |

 

59 | 60 | 61 | 62 | -------------------------------------------------------------------------------- /FF help/Source/html/functions/FFGetVersion.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFGetVersion 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFGetVersion 12 |
13 |

Returns the version of the FastFind DLL.

14 | 15 |

16 | FFGetVersion ( )
17 |

18 |

 

19 | 20 |

Parameters

21 | None.
22 | 23 |

 

24 | 25 |

Return Value

26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 |
Success:Returns the version number.
Failure:Returns '???' and sets @ERROR
36 |

 

37 | 38 |

Remarks

39 | None.
40 |
41 |

 

42 | 43 |

Related

44 | 45 |

 

46 | 47 | 48 | 49 | -------------------------------------------------------------------------------- /FF help/Source/html/functions/FFIsDifferent.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFIsDifferent 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFIsDifferent 12 |
13 |

Compares two SnapShots and determines whether they have any differences.

14 | 15 |

16 | FFIsDifferent ( NoSnapShot1, NoSnapShot2 )
17 |

18 |

 

19 | 20 |

Parameters

21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 |
NoSnapShot1The "slot" number of the first SnapShot to compare.
NoSnapShot2The "slot" number of the second SnapShot to compare.
31 | 32 |

 

33 | 34 |

Return Value

35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 |
Success:Returns True
Failure:Returns False
45 |

 

46 | 47 |

Remarks

48 | None.
49 |
50 |

 

51 | 52 |

Related

53 | FFSnapShot, FFLocalizeChanges 54 |

 

55 | 56 | 57 | 58 | -------------------------------------------------------------------------------- /FF help/Source/html/functions/FFIsExcluded.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFIsExcluded 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFIsExcluded 12 |
13 |

Checks if the point passed as a parameter is within the current exclusion zones.

14 | 15 |

16 | FFIsExcluded ( x, y, hWnd )
17 |

18 |

 

19 | 20 |

Parameters

21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 |
xHorizontal coordinate of point.
yVertical coordinate of point.
hWndWindow handle.
35 | 36 |

 

37 | 38 |

Return Value

39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 |
Success:Returns 1
Failure:Returns 0
49 |

 

50 | 51 |

Remarks

52 | None.
53 |
54 |

 

55 | 56 |

Related

57 | FFAddExcludedArea, FFResetExcludedAreas 58 |

 

59 | 60 | 61 | 62 | -------------------------------------------------------------------------------- /FF help/Source/html/functions/FFKeepChanges.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFKeepChanges 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFKeepChanges 12 |
13 |

Change a SnapShot so that it keeps only the pixels that are different from another SnapShot.

14 | 15 |

16 | FFKeepChanges ( NoSnapShot1, NoSnapShot2 )
17 |

18 |

 

19 | 20 |

Parameters

21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 |
NoSnapShot1The "slot" number of the SnapShot to change.
NoSnapShot2The "slot" number of the SnapShot to compare against.
31 | 32 |

 

33 | 34 |

Return Value

35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 |
Success:Returns 1
Failure:Returns 0 and sets @ERROR
45 |

 

46 | 47 |

Remarks

48 | The first SnapShot will be modified when this function is called, changing pixels that are the same in both SnapShots to black. The second SnapShot is kept unchanged.
49 |
50 |

 

51 | 52 |

Related

53 | FFSnapShot, FFIsDifferent, FFLocalizeChanges, FFKeepColor, FFDrawSnapShot 54 |

 

55 | 56 | 57 | 58 | -------------------------------------------------------------------------------- /FF help/Source/html/functions/FFKeepColor.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFKeepColor 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFKeepColor 12 |
13 |

Change a SnapShot so that it keeps only the color(s) specified.

14 | 15 |

16 | FFKeepColor ( ColorToFind [, ShadeVariation [, ForceNewSnap [, Left [, Top [, Right [, Bottom [, NoSnapShot [, WindowHandle]]]]]]]] )
17 |

18 |

 

19 | 20 |

Parameters

21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 |
ColorToFindColor value of pixels to keep (in decimal or hex). -1 to use the FastFind color list.
ShadeVariation [optional] A number between 0 and 255 to indicate the allowed number of shades of variation of the red, green, and blue components of the colour. Default is 0 (exact match).
ForceNewSnap [optional] If true, a new SnapShot will be made and the change will be done on that. Default is True.
Left [optional] Left coordinate of the new SnapShot area. Default is 0.
Top [optional] Top coordinate of the new SnapShot area. Default is 0.
Right [optional] Right coordinate of the new SnapShot area. Default is 0.
Bottom [optional] Bottom coordinate of the new SnapShot area. Default is 0.
NoSnapShot [optional] SnapShot number. Determines which "slot" the new SnapShot will be stored in.
WindowHandle [optional] Window handle to be used.
59 | 60 |

 

61 | 62 |

Return Value

63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 |
Success:Returns 1
Failure:Returns 0 and sets @ERROR
73 |

 

74 | 75 |

Remarks

76 | Pixels that don't match the specified color(s) will become black. Setting the ColorToFind parameter to -1 will cause this function to match on any color in the FastFind color list.
77 |
78 | A new SnapShot will be saved in the default slot unless ForceNewSnap is set to false.
79 |
80 |

 

81 | 82 |

Related

83 | FFSnapShot, FFColorCount, FFKeepChanges, FFDrawSnapShot 84 |

 

85 | 86 | 87 | 88 | -------------------------------------------------------------------------------- /FF help/Source/html/functions/FFLocalizeChanges.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFLocalizeChanges 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFLocalizeChanges 12 |
13 |

Compares two SnapShots and specifies the number of differences, as well as the area in which they occur.

14 | 15 |

16 | FFLocalizeChanges ( NoSnapShot1, NoSnapShot2 )
17 |

18 |

 

19 | 20 |

Parameters

21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 |
NoSnapShot1The "slot" number of the first SnapShot to compare.
NoSnapShot2The "slot" number of the second SnapShot to compare.
31 | 32 |

 

33 | 34 |

Return Value

35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 |
Success:Returns a five-element array specifying the area and number of differences.
Failure:Returns 0 and sets @ERROR = 1
45 |

 

46 | 47 |

Remarks

48 | If successful, the elements of the array returned are as follows:
49 | [0]: left edge of the rectangle
50 | [1]: upper edge of the rectangle
51 | [2]: right edge of the rectangle
52 | [3]: lower edge of the rectangle
53 | [4]: Number of pixels that changed
54 |
55 |

 

56 | 57 |

Related

58 | FFSnapShot, FFIsDifferent 59 |

 

60 | 61 | 62 | 63 | -------------------------------------------------------------------------------- /FF help/Source/html/functions/FFRemoveColor.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFRemoveColor 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFRemoveColor 12 |
13 |

Remove a color from the list of colors if it exists in the list.

14 | 15 |

16 | FFRemoveColor ( OldColor )
17 |

18 |

 

19 | 20 |

Parameters

21 | 22 | 23 | 24 | 25 | 26 |
OldColorColor value to remove.
27 | 28 |

 

29 | 30 |

Return Value

31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 |
Success:Returns 1
Failure:Returns 0
41 |

 

42 | 43 |

Remarks

44 | None.
45 |
46 |

 

47 | 48 |

Related

49 | FFAddColor, FFResetColors, FFNearestPixel, FFNearestSpot, FFBestSpot 50 |

 

51 | 52 | 53 | 54 | -------------------------------------------------------------------------------- /FF help/Source/html/functions/FFResetColors.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFResetColors 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFResetColors 12 |
13 |

Completely empty the list of colors.

14 | 15 |

16 | FFResetColors ( )
17 |

18 |

 

19 | 20 |

Parameters

21 | None.
22 | 23 |

 

24 | 25 |

Return Value

26 | None.
27 |

 

28 | 29 |

Remarks

30 | None.
31 |
32 |

 

33 | 34 |

Related

35 | FFAddColor, FFRemoveColor, FFNearestPixel, FFNearestSpot, FFBestSpot 36 |

 

37 | 38 | 39 | 40 | -------------------------------------------------------------------------------- /FF help/Source/html/functions/FFResetExcludedAreas.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFResetExcludedAreas 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFResetExcludedAreas 12 |
13 |

Clears the list of all exclusion zones.

14 | 15 |

16 | FFResetExcludedAreas ( )
17 |

18 |

 

19 | 20 |

Parameters

21 | None.
22 | 23 |

 

24 | 25 |

Return Value

26 | None.
27 |

 

28 | 29 |

Remarks

30 | None.
31 |
32 |

 

33 | 34 |

Related

35 | FFAddExcludedArea, FFIsExcluded, FFNearestPixel, FFNearestSpot, FFBestSpot 36 |

 

37 | 38 | 39 | 40 | -------------------------------------------------------------------------------- /FF help/Source/html/functions/FFSaveBMP.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFSaveBMP 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFSaveBMP 12 |
13 |

Save a SnapShot to a .BMP file.

14 | 15 |

16 | FFSaveBMP ( "FileNameWithNoExtension" [, ForceNewSnap [, Left [, Top [, Right [, Bottom [, NoSnapShot [, WindowHandle]]]]]]] )
17 |

18 |

 

19 | 20 |

Parameters

21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 |
FileNameWithNoExtensionName of the file to create.
ForceNewSnap [optional] If true, a new SnapShot will be made and that will be saved. Default is False.
Left [optional] Left coordinate of the new SnapShot area. Default is 0.
Top [optional] Top coordinate of the new SnapShot area. Default is 0.
Right [optional] Right coordinate of the new SnapShot area. Default is 0.
Bottom [optional] Bottom coordinate of the new SnapShot area. Default is 0.
NoSnapShot [optional] SnapShot number. Determines which "slot" the new SnapShot will be stored in.
WindowHandle [optional] Window handle to be used.
55 | 56 |

 

57 | 58 |

Return Value

59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 |
Success:Returns 1
Failure:Returns 0 and sets @ERROR
69 |

 

70 | 71 |

Remarks

72 | None.
73 |
74 |

 

75 | 76 |

Related

77 | FFSnapShot, FFSaveJPG 78 |

 

79 | 80 | 81 | 82 | -------------------------------------------------------------------------------- /FF help/Source/html/functions/FFSaveJPG.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFSaveJPG 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFSaveJPG 12 |
13 |

Save a SnapShot to a .JPG file.

14 | 15 |

16 | FFSaveJPG ( "FileNameWithNoExtension" [, QualityFactor [, ForceNewSnap [, Left [, Top [, Right [, Bottom [, NoSnapShot [, WindowHandle]]]]]]]] )
17 |

18 |

 

19 | 20 |

Parameters

21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 |
FileNameWithNoExtensionName of the file to create.
QualityFactor [optional] Quality level of the JPEG, from 1-100. Default is 85.
ForceNewSnap [optional] If true, a new SnapShot will be made and that will be saved. Default is True.
Left [optional] Left coordinate of the new SnapShot area. Default is 0.
Top [optional] Top coordinate of the new SnapShot area. Default is 0.
Right [optional] Right coordinate of the new SnapShot area. Default is 0.
Bottom [optional] Bottom coordinate of the new SnapShot area. Default is 0.
NoSnapShot [optional] SnapShot number. Determines which "slot" the new SnapShot will be stored in.
WindowHandle [optional] Window handle to be used.
59 | 60 |

 

61 | 62 |

Return Value

63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 |
Success:Returns 1
Failure:Returns 0 and sets @ERROR
73 |

 

74 | 75 |

Remarks

76 | A new SnapShot will be saved in the default slot unless ForceNewSnap is set to false.
77 |
78 |

 

79 | 80 |

Related

81 | FFSnapShot, FFSaveBMP 82 |

 

83 | 84 | 85 | 86 | -------------------------------------------------------------------------------- /FF help/Source/html/functions/FFSetDebugMode.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFSetDebugMode 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFSetDebugMode 12 |
13 |

Sets the types of debugging to be used.

14 | 15 |

16 | FFSetDebugMode ( DebugMode )
17 |

18 |

 

19 | 20 |

Parameters

21 | 22 | 23 | 24 | 35 | 36 |
DebugModeMode to use for debugging.
25 | Can be a combination of the following:
26 |   0 = No debugging
27 |   1 = Information sent to the console (RequireAdmin)
28 |   2 = Debug information sent to a file (tracer.txt)
29 |   4 = Graphical display of points / areas identified
30 |   8 = Display MessageBox (blocking)
31 |   16 = Excludes internal traces from the DLL
32 |   32 = Excludes detailed internal traces from the DLL
33 |   64 = Excludes external traces (from the application)
34 |   128 = Error message (priority)
37 | 38 |

 

39 | 40 |

Return Value

41 | None.
42 |

 

43 | 44 |

Remarks

45 | Note that in case of an error, a MessageBox is displayed in the DLL if DebugMode > 0. Serious errors are displayed on all available channels (file, console and MessageBox) if DebugMode > 0.
46 |
47 | To send information to the console in Windows Vista and Windows 7, you will need the #RequireAdmin tag in your AutoIt script.
48 |
49 |

 

50 | 51 |

Related

52 | FFTrace, FFTraceError 53 |

 

54 | 55 |

Example

56 |

57 |
58 | #include "FastFind.au3"
59 | #Include <WinAPI.au3>
60 |
61 | #RequireAdmin
62 |
63 | FFSetDebugMode(7) ; console + file + graphical

64 | 68 |

 

69 | 70 | 71 | 72 | -------------------------------------------------------------------------------- /FF help/Source/html/functions/FFSetDefaultSnapShot.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFSetDefaultSnapShot 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFSetDefaultSnapShot 12 |
13 |

Sets the default snapshot to be used when none is specified.

14 | 15 |

16 | FFSetDefaultSnapShot ( NewSnapShot )
17 |

18 |

 

19 | 20 |

Parameters

21 | 22 | 23 | 24 | 25 | 26 |
NewSnapShotSnapshot number, from 0 to 1023.
27 | 28 |

 

29 | 30 |

Return Value

31 | None.
32 |

 

33 | 34 |

Remarks

35 | When using functions that require a snapshot and no snapshot number is specified, they will use the default snapshot. Unless changed, the default snapshot number is 0.
36 |
37 |

 

38 | 39 |

Related

40 | FFSnapShot 41 |

 

42 | 43 | 44 | 45 | -------------------------------------------------------------------------------- /FF help/Source/html/functions/FFSetPixel.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFSetPixel 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFSetPixel 12 |
13 |

Changes the color of a pixel in a given SnapShot.

14 | 15 |

16 | FFSetPixel ( x, y, Color [, NoSnapShot ] )
17 |

18 |

 

19 | 20 |

Parameters

21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 |
xX coordinate of pixel.
yY coordinate of pixel.
ColorColor value to change the pixel to (in decimal or hex).
NoSnapShot [optional] SnapShot number. Default is the most recent SnapShot taken.
39 | 40 |

 

41 | 42 |

Return Value

43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 |
Success:Returns 1
Failure:Returns 0 and sets @ERROR
53 |

 

54 | 55 |

Remarks

56 | None.
57 |
58 |

 

59 | 60 |

Related

61 | FFSnapShot, FFGetPixel, FFKeepColor, FFDrawSnapShot 62 |

 

63 | 64 | 65 | 66 | -------------------------------------------------------------------------------- /FF help/Source/html/functions/FFSetWnd.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFSetWnd 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFSetWnd 12 |
13 |

Sets the current window to use.

14 | 15 |

16 | FFSetWnd ( "WindowHandle" [, ClientOnly] )
17 |

18 |

 

19 | 20 |

Parameters

21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 30 | 31 |
WindowHandleThe window handle to use. If windowHandle = 0, the entire screen will be used.
ClientOnly [optional] True = Only the client area of the window will be used (default).
29 | False = The entire window will be used.
32 | 33 |

 

34 | 35 |

Return Value

36 | None.
37 |

 

38 | 39 |

Remarks

40 | This will determine the area of the screen captured by snapshots. If not set, the entire screen is used by default. Once set, snapshots will capture only the specified window until it is changed.
41 |
42 |

 

43 | 44 |

Related

45 | FFSnapShot 46 |

 

47 | 48 | 49 | 50 | -------------------------------------------------------------------------------- /FF help/Source/html/functions/FFTrace.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFTrace 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFTrace 12 |
13 |

Inserts text into the DLL's debug channels.

14 | 15 |

16 | FFTrace ( "DebugString" )
17 |

18 |

 

19 | 20 |

Parameters

21 | 22 | 23 | 24 | 25 | 26 |
DebugStringString to insert into debug channels.
27 | 28 |

 

29 | 30 |

Return Value

31 | None.
32 |

 

33 | 34 |

Remarks

35 | The debug channels where this text appears will depend on the current debug mode.
36 |
37 |

 

38 | 39 |

Related

40 | FFSetDebugMode, FFTraceError 41 |

 

42 | 43 | 44 | 45 | -------------------------------------------------------------------------------- /FF help/Source/html/functions/FFTraceError.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFTraceError 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFTraceError 12 |
13 |

Inserts an error message into the DLL's debug channels.

14 | 15 |

16 | FFTraceError ( "DebugString" )
17 |

18 |

 

19 | 20 |

Parameters

21 | 22 | 23 | 24 | 25 | 26 |
DebugStringError message to insert into debug channels.
27 | 28 |

 

29 | 30 |

Return Value

31 | None.
32 |

 

33 | 34 |

Remarks

35 | This works similar to FFTrace, however it will be treated as an error and appear in a MessageBox. The debug channels where this message appears will depend on the current debug mode.
36 |
37 |

 

38 | 39 |

Related

40 | FFSetDebugMode, FFTrace, FFGetLastError 41 |

 

42 | 43 | 44 | 45 | -------------------------------------------------------------------------------- /FF help/Source/html/images/FindSpotExplain.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FastFrench/FastFind/693c5c1eed3ebe228d8e10eca0f4e822e5c26c00/FF help/Source/html/images/FindSpotExplain.png -------------------------------------------------------------------------------- /FF help/Source/html/images/blue_gradient_1024x24.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FastFrench/FastFind/693c5c1eed3ebe228d8e10eca0f4e822e5c26c00/FF help/Source/html/images/blue_gradient_1024x24.jpg -------------------------------------------------------------------------------- /FF help/Source/txt2htm.ini: -------------------------------------------------------------------------------- 1 | [Input] 2 | examples = "txt2htm\examples\" 3 | functions = "txt2htm\txtFunctions\" 4 | 5 | 6 | [Output] 7 | mainHtml = "html\" 8 | functions = "html\functions\" 9 | examples = "html\examples\" 10 | -------------------------------------------------------------------------------- /FF help/Source/txt2htm/HelpFileGenerator/Defaults.ini: -------------------------------------------------------------------------------- 1 | [MAIN] 2 | Library= 3 | FuncPrefix=FF 4 | Success=Returns 1 5 | Failure=Returns 0 and sets @ERROR = 1 -------------------------------------------------------------------------------- /FF help/Source/txt2htm/HelpFileGenerator/Templates/HelpTemplate.txt: -------------------------------------------------------------------------------- 1 | ###User Defined Function### 2 | #Function Name# 3 | 4 | ###Description### 5 | #Description# 6 | 7 | ###Syntax### 8 | #Syntax# 9 | 10 | ###Parameters### 11 | @@ParamTable@@ 12 | #Parm# 13 | @@End@@ 14 | 15 | ###ReturnValue### 16 | @@ReturnTable@@ 17 | #Success# 18 | #Failure# 19 | @@End@@ 20 | 21 | 22 | ###Remarks### 23 | #Remarks# 24 | 25 | 26 | ###Related### 27 | #Related# 28 | 29 | 30 | ###Example### 31 | @@IncludeExample@@ -------------------------------------------------------------------------------- /FF help/Source/txt2htm/examples/FFAddColor.au3: -------------------------------------------------------------------------------- 1 | #include "FastFind.au3" 2 | 3 | Local $aColorArray[2] = [0x00FFFFFF, 0x00000000] 4 | 5 | FFAddColor($aColorArray) 6 | FFAddColor(0x00FF0000) 7 | -------------------------------------------------------------------------------- /FF help/Source/txt2htm/examples/FFBestSpot.au3: -------------------------------------------------------------------------------- 1 | #include "FastFind.au3" 2 | 3 | $FFhWnd = WinGetHandle("[ACTIVE]") 4 | FFSetWnd($FFhWnd) 5 | FFSnapShot() 6 | 7 | Local $aCoords = FFBestSpot(20, 25, 150, 0, 0, 0x00FFFFFF, False) 8 | 9 | If Not @error Then 10 | MsgBox(0, "Coords", $aCoords[0] & ", " & $aCoords[1]) 11 | Else 12 | MsgBox(0, "Coords", "Match not found.") 13 | EndIf -------------------------------------------------------------------------------- /FF help/Source/txt2htm/examples/FFNearestPixel.au3: -------------------------------------------------------------------------------- 1 | #include "FastFind.au3" 2 | 3 | $FFhWnd = WinGetHandle("[ACTIVE]") 4 | FFSetWnd($FFhWnd) 5 | FFSnapShot() 6 | 7 | Local $aCoords = FFNearestPixel(50, 20, 0x00FFFFFF, False) 8 | 9 | If Not @error Then 10 | MsgBox(0, "Coords", $aCoords[0] & ", " & $aCoords[1]) 11 | Else 12 | MsgBox(0, "Coords", "Match not found.") 13 | EndIf -------------------------------------------------------------------------------- /FF help/Source/txt2htm/examples/FFNearestSpot.au3: -------------------------------------------------------------------------------- 1 | #include "FastFind.au3" 2 | 3 | $FFhWnd = WinGetHandle("[ACTIVE]") 4 | FFSetWnd($FFhWnd) 5 | FFSnapShot() 6 | 7 | Local $aCoords = FFNearestSpot(10, 25, 0, 0, 0x00FFFFFF, False) 8 | 9 | If Not @error Then 10 | MsgBox(0, "Coords", $aCoords[0] & ", " & $aCoords[1]) 11 | Else 12 | MsgBox(0, "Coords", "Match not found.") 13 | EndIf -------------------------------------------------------------------------------- /FF help/Source/txt2htm/examples/FFSetDebugMode.au3: -------------------------------------------------------------------------------- 1 | #include "FastFind.au3" 2 | #Include 3 | 4 | #RequireAdmin 5 | 6 | FFSetDebugMode(7) ; console + file + graphical -------------------------------------------------------------------------------- /FF help/Source/txt2htm/examples/FFSnapShot.au3: -------------------------------------------------------------------------------- 1 | #include "FastFind.au3" 2 | 3 | AutoItSetOption("WinTitleMatchMode", 4) 4 | 5 | $FFhWnd = WinGetHandle("[ACTIVE]") 6 | FFSetWnd($FFhWnd) 7 | 8 | FFSnapShot(0, 0, 300, 150) 9 | FFSaveBMP(@YEAR & "-" & @MON & "-" & @MDAY & "_" & @HOUR & @MIN & @SEC, false) -------------------------------------------------------------------------------- /FF help/Source/txt2htm/examples/FastFind.au3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FastFrench/FastFind/693c5c1eed3ebe228d8e10eca0f4e822e5c26c00/FF help/Source/txt2htm/examples/FastFind.au3 -------------------------------------------------------------------------------- /FF help/Source/txt2htm/examples/FastFind.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FastFrench/FastFind/693c5c1eed3ebe228d8e10eca0f4e822e5c26c00/FF help/Source/txt2htm/examples/FastFind.dll -------------------------------------------------------------------------------- /FF help/Source/txt2htm/examples/FastFind64.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FastFrench/FastFind/693c5c1eed3ebe228d8e10eca0f4e822e5c26c00/FF help/Source/txt2htm/examples/FastFind64.dll -------------------------------------------------------------------------------- /FF help/Source/txt2htm/examples/TRACER.TXT: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FastFrench/FastFind/693c5c1eed3ebe228d8e10eca0f4e822e5c26c00/FF help/Source/txt2htm/examples/TRACER.TXT -------------------------------------------------------------------------------- /FF help/Source/txt2htm/txtFunctions/FFAddColor.txt: -------------------------------------------------------------------------------- 1 | ###User Defined Function### 2 | FFAddColor 3 | 4 | ###Description### 5 | Add one or more colors to the color list maintained by FastFind. 6 | 7 | ###Syntax### 8 | FFAddColor ( NewColor ) 9 | 10 | ###Parameters### 11 | @@ParamTable@@ 12 | NewColor 13 | Color value or an array of color values. 14 | @@End@@ 15 | 16 | ###ReturnValue### 17 | @@ReturnTable@@ 18 | Success: Returns 1 19 | Failure: Returns 0 20 | @@End@@ 21 | 22 | 23 | ###Remarks### 24 | The color list can be used when calling search functions, to search for multiple colors instead of one. 25 | 26 | 27 | ###Related### 28 | FFRemoveColor, FFResetColors, FFNearestPixel, FFNearestSpot, FFBestSpot 29 | 30 | 31 | ###Example### 32 | @@IncludeExample@@ 33 | -------------------------------------------------------------------------------- /FF help/Source/txt2htm/txtFunctions/FFAddExcludedArea.txt: -------------------------------------------------------------------------------- 1 | ###User Defined Function### 2 | FFAddExcludedArea 3 | 4 | ###Description### 5 | Adds an exclusion zone. 6 | 7 | ###Syntax### 8 | FFAddExcludedArea ( x1, y1, x2, y2 ) 9 | 10 | ###Parameters### 11 | @@ParamTable@@ 12 | x1 13 | Left coordinate of exlusion area. 14 | y1 15 | Top coordinate of exlusion area. 16 | x2 17 | Right coordinate of exlusion area. 18 | y2 19 | Bottom coordinate of exlusion area. 20 | @@End@@ 21 | 22 | ###ReturnValue### 23 | @@ReturnTable@@ 24 | Success: Returns 1 25 | Failure: Returns 0 26 | @@End@@ 27 | 28 | 29 | ###Remarks### 30 | Exclusion zones are used to restrict the search area in the FastFind search functions. It is possible to have up to 1024 rectangles of exclusion, thereby precisely removing any search area. Once set, the exclusion zones will apply to all FastFind searches until they're reset. 31 | 32 | 33 | ###Related### 34 | FFResetExcludedAreas, FFIsExcluded, FFNearestPixel, FFNearestSpot, FFBestSpot 35 | 36 | 37 | ###Example### 38 | @@IncludeExample@@ 39 | -------------------------------------------------------------------------------- /FF help/Source/txt2htm/txtFunctions/FFBestSpot.txt: -------------------------------------------------------------------------------- 1 | ###User Defined Function### 2 | FFBestSpot 3 | 4 | ###Description### 5 | Searches a SnapShot for the area containing the best number of pixels of the given color, closest to the given point. 6 | 7 | ###Syntax### 8 | FFBestSpot ( SizeSearch, MinNbPixel, OptNbPixel, PosX, PosY, Color [, ShadeVariation [, ForceNewSnap [, Left [, Top [, Right [, Bottom [, NoSnapShot [, WindowHandle]]]]]]]] ) 9 | 10 | ###Parameters### 11 | @@ParamTable@@ 12 | SizeSearch 13 | The width and height of the area to search for. 14 | MinNbPixel 15 | Minimum number of pixels in the area. 16 | OptNbPixel 17 | Optimal number of pixels in the area. 18 | PosX 19 | X coordinate of proximity position. 20 | PosY 21 | Y coordinate of proximity position. 22 | Color 23 | Colour value of pixel to find (in decimal or hex). -1 to use the FastFind color list. 24 | ShadeVariation 25 | [optional] A number between 0 and 255 to indicate the allowed number of shades of variation of the red, green, and blue components of the colour. Default is 0 (exact match). 26 | ForceNewSnap 27 | [optional] If true, a new SnapShot will be made and the search will be done on that. Default is True. 28 | Left 29 | [optional] Left coordinate of the new SnapShot area. Default is 0. 30 | Top 31 | [optional] Top coordinate of the new SnapShot area. Default is 0. 32 | Right 33 | [optional] Right coordinate of the new SnapShot area. Default is 0. 34 | Bottom 35 | [optional] Bottom coordinate of the new SnapShot area. Default is 0. 36 | NoSnapShot 37 | [optional] SnapShot number. Determines which "slot" the new SnapShot will be stored in. 38 | WindowHandle 39 | [optional] Window handle to be used. 40 | @@End@@ 41 | 42 | ###ReturnValue### 43 | @@ReturnTable@@ 44 | Success: Returns a three-element array of area's coordinates and number of pixels found. (Array[0] = x, Array[1] = y, Array[2] = Number of pixels found). 45 | Failure: Returns 0 and sets @ERROR 46 | @@End@@ 47 | 48 | 49 | ###Remarks### 50 | This feature is similar to FFNearestSpot, but will perform a more extensive search to try to find the area with the best number of "right" pixels. 51 | 52 | First, this function will try to find a spot with at least the optimal number of pixels of the specified color, returning the one closest to PosX, PosY. If there is no area with the optimal number of pixels (or more), it will look for the spot with the highest number of pixels of the specified color, over the minimum acceptable amount. 53 | 54 | If it cannot find an area with at least the minimum number of pixels of the specified color, it will try the same two searches again, but now with ShadeVariation as set in the parameter (if this parameter is not 0). 55 | 56 | Setting the Color parameter to -1 will cause the search to match on any color in the FastFind color list. 57 | 58 | A new SnapShot will be saved in the default slot if ForceNewSnap remains True. 59 | 60 | 61 | ###Related### 62 | FFSnapShot, FFAddColor, FFAddExcludedArea, FFGetPixel, FFNearestPixel, FFNearestSpot 63 | 64 | 65 | ###Example### 66 | @@IncludeExample@@ -------------------------------------------------------------------------------- /FF help/Source/txt2htm/txtFunctions/FFColorCount.txt: -------------------------------------------------------------------------------- 1 | ###User Defined Function### 2 | FFColorCount 3 | 4 | ###Description### 5 | Counts the number of pixels of a given color in a SnapShot. 6 | 7 | ###Syntax### 8 | FFColorCount ( ColorToCount, [ShadeVariation [, ForceNewSnap [, Left [, Top [, Right [, Bottom [, NoSnapShot [, WindowHandle]]]]]]]] ) 9 | 10 | ###Parameters### 11 | @@ParamTable@@ 12 | ColorToCount 13 | Colour value of pixels to count (in decimal or hex). 14 | ShadeVariation 15 | [optional] A number between 0 and 255 to indicate the allowed number of shades of variation of the red, green, and blue components of the colour. Default is 0 (exact match). 16 | ForceNewSnap 17 | [optional] If true, a new SnapShot will be made and the count will be done on that. Default is True. 18 | Left 19 | [optional] Left coordinate of the new SnapShot area. Default is 0. 20 | Top 21 | [optional] Top coordinate of the new SnapShot area. Default is 0. 22 | Right 23 | [optional] Right coordinate of the new SnapShot area. Default is 0. 24 | Bottom 25 | [optional] Bottom coordinate of the new SnapShot area. Default is 0. 26 | NoSnapShot 27 | [optional] SnapShot number. Determines which "slot" the new SnapShot will be stored in. 28 | WindowHandle 29 | [optional] Window handle to be used. 30 | @@End@@ 31 | 32 | ###ReturnValue### 33 | @@ReturnTable@@ 34 | Success: Returns the number of matching pixels 35 | Failure: Returns False 36 | @@End@@ 37 | 38 | 39 | ###Remarks### 40 | None. 41 | 42 | 43 | ###Related### 44 | FFSnapShot 45 | 46 | 47 | ###Example### 48 | @@IncludeExample@@ -------------------------------------------------------------------------------- /FF help/Source/txt2htm/txtFunctions/FFDrawSnapShot.txt: -------------------------------------------------------------------------------- 1 | ###User Defined Function### 2 | FFDrawSnapShot 3 | 4 | ###Description### 5 | Draws the SnapShot back onto the screen. 6 | 7 | ###Syntax### 8 | FFDrawSnapShot ( [ NoSnapShot ] ) 9 | 10 | ###Parameters### 11 | @@ParamTable@@ 12 | NoSnapShot 13 | [optional] SnapShot number. Default is the most recent SnapShot taken. 14 | @@End@@ 15 | 16 | ###ReturnValue### 17 | @@ReturnTable@@ 18 | Success: Returns 1 19 | Failure: Returns 0 and sets @ERROR 20 | @@End@@ 21 | 22 | 23 | ###Remarks### 24 | The SnapShot will be drawn on the same Window and position it was taken from, and will include modifications. 25 | 26 | 27 | ###Related### 28 | FFSnapShot, FFSetPixel, FFKeepChanges, FFKeepColor 29 | 30 | 31 | ###Example### 32 | @@IncludeExample@@ 33 | -------------------------------------------------------------------------------- /FF help/Source/txt2htm/txtFunctions/FFDuplicateSnapShot.txt: -------------------------------------------------------------------------------- 1 | ###User Defined Function### 2 | FFDuplicateSnapShot 3 | 4 | ###Description### 5 | Makes a copy of a SnapShot. 6 | 7 | ###Syntax### 8 | FFDuplicateSnapShot ( NoSnapShotSrc, NoSnapShotDst ) 9 | 10 | ###Parameters### 11 | @@ParamTable@@ 12 | NoSnapShotSrc 13 | The "slot" number of the source SnapShot. 14 | NoSnapShotDst 15 | The destination "slot" number where the duplicate SnapShot will be stored. 16 | @@End@@ 17 | 18 | ###ReturnValue### 19 | @@ReturnTable@@ 20 | Success: Returns 1 21 | Failure: Returns 0 and sets @ERROR 22 | @@End@@ 23 | 24 | 25 | ###Remarks### 26 | None. 27 | 28 | 29 | ###Related### 30 | FFSnapShot 31 | 32 | 33 | ###Example### 34 | @@IncludeExample@@ 35 | -------------------------------------------------------------------------------- /FF help/Source/txt2htm/txtFunctions/FFGetLastError.txt: -------------------------------------------------------------------------------- 1 | ###User Defined Function### 2 | FFGetLastError 3 | 4 | ###Description### 5 | Returns the last error message from the DLL's debug channels. 6 | 7 | ###Syntax### 8 | FFGetLastError ( ) 9 | 10 | ###Parameters### 11 | None. 12 | 13 | ###ReturnValue### 14 | @@ReturnTable@@ 15 | Success: Returns the error message. 16 | Failure: Returns an empty string and sets @ERROR 17 | @@End@@ 18 | 19 | 20 | ###Remarks### 21 | This function won't work if all debug options are disabled, as error strings won't be initialized. 22 | 23 | 24 | ###Related### 25 | FFSetDebugMode, FFTraceError 26 | 27 | 28 | ###Example### 29 | @@IncludeExample@@ 30 | -------------------------------------------------------------------------------- /FF help/Source/txt2htm/txtFunctions/FFGetLastFileName.txt: -------------------------------------------------------------------------------- 1 | ###User Defined Function### 2 | FFGetLastFileName 3 | 4 | ###Description### 5 | Returns the filename of the last BMP or JPG saved by FastFind. 6 | 7 | ###Syntax### 8 | FFGetLastFileName ( ) 9 | 10 | ###Parameters### 11 | None. 12 | 13 | ###ReturnValue### 14 | @@ReturnTable@@ 15 | Success: Returns the file name. 16 | Failure: Returns an empty string. 17 | @@End@@ 18 | 19 | 20 | ###Remarks### 21 | None. 22 | 23 | 24 | ###Related### 25 | FFSaveBMP, FFSaveJPG 26 | 27 | 28 | ###Example### 29 | @@IncludeExample@@ -------------------------------------------------------------------------------- /FF help/Source/txt2htm/txtFunctions/FFGetPixel.txt: -------------------------------------------------------------------------------- 1 | ###User Defined Function### 2 | FFGetPixel 3 | 4 | ###Description### 5 | Returns the color value of a specified pixel in a SnapShot. 6 | 7 | ###Syntax### 8 | FFGetPixel ( x, y [, NoSnapShot ] ) 9 | 10 | ###Parameters### 11 | @@ParamTable@@ 12 | x 13 | X coordinate of pixel. 14 | y 15 | Y coordinate of pixel. 16 | NoSnapShot 17 | [optional] SnapShot number. Default is the most recent SnapShot taken. 18 | @@End@@ 19 | 20 | ###ReturnValue### 21 | @@ReturnTable@@ 22 | Success: Returns the color value of the pixel. 23 | Failure: Returns -1 and sets @ERROR 24 | @@End@@ 25 | 26 | 27 | ###Remarks### 28 | None. 29 | 30 | 31 | ###Related### 32 | FFSnapShot, FFNearestPixel, FFNearestSpot 33 | 34 | 35 | ###Example### 36 | @@IncludeExample@@ 37 | -------------------------------------------------------------------------------- /FF help/Source/txt2htm/txtFunctions/FFGetVersion.txt: -------------------------------------------------------------------------------- 1 | ###User Defined Function### 2 | FFGetVersion 3 | 4 | ###Description### 5 | Returns the version of the FastFind DLL. 6 | 7 | ###Syntax### 8 | FFGetVersion ( ) 9 | 10 | ###Parameters### 11 | None. 12 | 13 | ###ReturnValue### 14 | @@ReturnTable@@ 15 | Success: Returns the version number. 16 | Failure: Returns '???' and sets @ERROR 17 | @@End@@ 18 | 19 | 20 | ###Remarks### 21 | None. 22 | 23 | 24 | ###Related### 25 | 26 | 27 | ###Example### 28 | @@IncludeExample@@ 29 | -------------------------------------------------------------------------------- /FF help/Source/txt2htm/txtFunctions/FFIsDifferent.txt: -------------------------------------------------------------------------------- 1 | ###User Defined Function### 2 | FFIsDifferent 3 | 4 | ###Description### 5 | Compares two SnapShots and determines whether they have any differences. 6 | 7 | ###Syntax### 8 | FFIsDifferent ( NoSnapShot1, NoSnapShot2 ) 9 | 10 | ###Parameters### 11 | @@ParamTable@@ 12 | NoSnapShot1 13 | The "slot" number of the first SnapShot to compare. 14 | NoSnapShot2 15 | The "slot" number of the second SnapShot to compare. 16 | @@End@@ 17 | 18 | ###ReturnValue### 19 | @@ReturnTable@@ 20 | Success: Returns True 21 | Failure: Returns False 22 | @@End@@ 23 | 24 | 25 | ###Remarks### 26 | None. 27 | 28 | 29 | ###Related### 30 | FFSnapShot, FFLocalizeChanges 31 | 32 | 33 | ###Example### 34 | @@IncludeExample@@ -------------------------------------------------------------------------------- /FF help/Source/txt2htm/txtFunctions/FFIsExcluded.txt: -------------------------------------------------------------------------------- 1 | ###User Defined Function### 2 | FFIsExcluded 3 | 4 | ###Description### 5 | Checks if the point passed as a parameter is within the current exclusion zones. 6 | 7 | ###Syntax### 8 | FFIsExcluded ( x, y, hWnd ) 9 | 10 | ###Parameters### 11 | @@ParamTable@@ 12 | x 13 | Horizontal coordinate of point. 14 | y 15 | Vertical coordinate of point. 16 | hWnd 17 | Window handle. 18 | @@End@@ 19 | 20 | ###ReturnValue### 21 | @@ReturnTable@@ 22 | Success: Returns 1 23 | Failure: Returns 0 24 | @@End@@ 25 | 26 | 27 | ###Remarks### 28 | None. 29 | 30 | 31 | ###Related### 32 | FFAddExcludedArea, FFResetExcludedAreas 33 | 34 | 35 | ###Example### 36 | @@IncludeExample@@ 37 | -------------------------------------------------------------------------------- /FF help/Source/txt2htm/txtFunctions/FFKeepChanges.txt: -------------------------------------------------------------------------------- 1 | ###User Defined Function### 2 | FFKeepChanges 3 | 4 | ###Description### 5 | Change a SnapShot so that it keeps only the pixels that are different from another SnapShot. 6 | 7 | ###Syntax### 8 | FFKeepChanges ( NoSnapShot1, NoSnapShot2 ) 9 | 10 | ###Parameters### 11 | @@ParamTable@@ 12 | NoSnapShot1 13 | The "slot" number of the SnapShot to change. 14 | NoSnapShot2 15 | The "slot" number of the SnapShot to compare against. 16 | @@End@@ 17 | 18 | ###ReturnValue### 19 | @@ReturnTable@@ 20 | Success: Returns 1 21 | Failure: Returns 0 and sets @ERROR 22 | @@End@@ 23 | 24 | 25 | ###Remarks### 26 | The first SnapShot will be modified when this function is called, changing pixels that are the same in both SnapShots to black. The second SnapShot is kept unchanged. 27 | 28 | 29 | ###Related### 30 | FFSnapShot, FFIsDifferent, FFLocalizeChanges, FFKeepColor, FFDrawSnapShot 31 | 32 | 33 | ###Example### 34 | @@IncludeExample@@ 35 | -------------------------------------------------------------------------------- /FF help/Source/txt2htm/txtFunctions/FFKeepColor.txt: -------------------------------------------------------------------------------- 1 | ###User Defined Function### 2 | FFKeepColor 3 | 4 | ###Description### 5 | Change a SnapShot so that it keeps only the color(s) specified. 6 | 7 | ###Syntax### 8 | FFKeepColor ( ColorToFind [, ShadeVariation [, ForceNewSnap [, Left [, Top [, Right [, Bottom [, NoSnapShot [, WindowHandle]]]]]]]] ) 9 | 10 | ###Parameters### 11 | @@ParamTable@@ 12 | ColorToFind 13 | Color value of pixels to keep (in decimal or hex). -1 to use the FastFind color list. 14 | ShadeVariation 15 | [optional] A number between 0 and 255 to indicate the allowed number of shades of variation of the red, green, and blue components of the colour. Default is 0 (exact match). 16 | ForceNewSnap 17 | [optional] If true, a new SnapShot will be made and the change will be done on that. Default is True. 18 | Left 19 | [optional] Left coordinate of the new SnapShot area. Default is 0. 20 | Top 21 | [optional] Top coordinate of the new SnapShot area. Default is 0. 22 | Right 23 | [optional] Right coordinate of the new SnapShot area. Default is 0. 24 | Bottom 25 | [optional] Bottom coordinate of the new SnapShot area. Default is 0. 26 | NoSnapShot 27 | [optional] SnapShot number. Determines which "slot" the new SnapShot will be stored in. 28 | WindowHandle 29 | [optional] Window handle to be used. 30 | @@End@@ 31 | 32 | ###ReturnValue### 33 | @@ReturnTable@@ 34 | Success: Returns 1 35 | Failure: Returns 0 and sets @ERROR 36 | @@End@@ 37 | 38 | 39 | ###Remarks### 40 | Pixels that don't match the specified color(s) will become black. Setting the ColorToFind parameter to -1 will cause this function to match on any color in the FastFind color list. 41 | 42 | A new SnapShot will be saved in the default slot unless ForceNewSnap is set to false. 43 | 44 | 45 | ###Related### 46 | FFSnapShot, FFColorCount, FFKeepChanges, FFDrawSnapShot 47 | 48 | 49 | ###Example### 50 | @@IncludeExample@@ 51 | -------------------------------------------------------------------------------- /FF help/Source/txt2htm/txtFunctions/FFLocalizeChanges.txt: -------------------------------------------------------------------------------- 1 | ###User Defined Function### 2 | FFLocalizeChanges 3 | 4 | ###Description### 5 | Compares two SnapShots and specifies the number of differences, as well as the area in which they occur. 6 | 7 | ###Syntax### 8 | FFLocalizeChanges ( NoSnapShot1, NoSnapShot2 ) 9 | 10 | ###Parameters### 11 | @@ParamTable@@ 12 | NoSnapShot1 13 | The "slot" number of the first SnapShot to compare. 14 | NoSnapShot2 15 | The "slot" number of the second SnapShot to compare. 16 | @@End@@ 17 | 18 | ###ReturnValue### 19 | @@ReturnTable@@ 20 | Success: Returns a five-element array specifying the area and number of differences. 21 | Failure: Returns 0 and sets @ERROR = 1 22 | @@End@@ 23 | 24 | 25 | ###Remarks### 26 | If successful, the elements of the array returned are as follows: 27 | [0]: left edge of the rectangle 28 | [1]: upper edge of the rectangle 29 | [2]: right edge of the rectangle 30 | [3]: lower edge of the rectangle 31 | [4]: Number of pixels that changed 32 | 33 | 34 | ###Related### 35 | FFSnapShot, FFIsDifferent 36 | 37 | 38 | ###Example### 39 | @@IncludeExample@@ -------------------------------------------------------------------------------- /FF help/Source/txt2htm/txtFunctions/FFNearestPixel.txt: -------------------------------------------------------------------------------- 1 | ###User Defined Function### 2 | FFNearestPixel 3 | 4 | ###Description### 5 | Searches a SnapShot for a pixel of the given color, closest to the given point. 6 | 7 | ###Syntax### 8 | FFNearestPixel ( PosX, PosY, Color [, ForceNewSnap [, Left [, Top [, Right [, Bottom [, NoSnapShot [, WindowHandle]]]]]]] ) 9 | 10 | ###Parameters### 11 | @@ParamTable@@ 12 | PosX 13 | X coordinate of proximity position. 14 | PosY 15 | Y coordinate of proximity position. 16 | Color 17 | Colour value of pixel to find (in decimal or hex). -1 to use the FastFind color list. 18 | ForceNewSnap 19 | [optional] If true, a new SnapShot will be made and the search will be done on that. Default is True. 20 | Left 21 | [optional] Left coordinate of the new SnapShot area. Default is 0. 22 | Top 23 | [optional] Top coordinate of the new SnapShot area. Default is 0. 24 | Right 25 | [optional] Right coordinate of the new SnapShot area. Default is 0. 26 | Bottom 27 | [optional] Bottom coordinate of the new SnapShot area. Default is 0. 28 | NoSnapShot 29 | [optional] SnapShot number. Determines which "slot" the new SnapShot will be stored in. 30 | WindowHandle 31 | [optional] Window handle to be used. 32 | @@End@@ 33 | 34 | ###ReturnValue### 35 | @@ReturnTable@@ 36 | Success: Returns a two-element array of pixel's coordinates. (Array[0] = x, Array[1] = y). 37 | Failure: Returns 0 and sets @ERROR 38 | @@End@@ 39 | 40 | 41 | ###Remarks### 42 | This function works like PixelSearch, except that instead of returning the first pixel found, it returns the closest to a given position. Setting the Color parameter to -1 will cause the search to match on any color in the FastFind color list. 43 | 44 | A new SnapShot will be saved in the default slot unless ForceNewSnap is set to false. 45 | 46 | 47 | ###Related### 48 | FFSnapShot, FFAddColor, FFAddExcludedArea, FFGetPixel, FFNearestSpot, FFBestSpot 49 | 50 | 51 | ###Example### 52 | @@IncludeExample@@ -------------------------------------------------------------------------------- /FF help/Source/txt2htm/txtFunctions/FFNearestSpot.txt: -------------------------------------------------------------------------------- 1 | ###User Defined Function### 2 | FFNearestSpot 3 | 4 | ###Description### 5 | Searches a SnapShot for an area containing a minimum number of pixels of the given color, closest to the given point. 6 | 7 | ###Syntax### 8 | FFNearestSpot ( SizeSearch, NbPixel, PosX, PosY, Color [, ShadeVariation [, ForceNewSnap [, Left [, Top [, Right [, Bottom [, NoSnapShot [, WindowHandle]]]]]]]] ) 9 | 10 | ###Parameters### 11 | @@ParamTable@@ 12 | SizeSearch 13 | The width and height of the area to search for. 14 | NbPixel 15 | Minimum number of pixels in the area. 16 | PosX 17 | X coordinate of proximity position. 18 | PosY 19 | Y coordinate of proximity position. 20 | Color 21 | Colour value of pixel to find (in decimal or hex). -1 to use the FastFind color list. 22 | ShadeVariation 23 | [optional] A number between 0 and 255 to indicate the allowed number of shades of variation of the red, green, and blue components of the colour. Default is 0 (exact match). 24 | ForceNewSnap 25 | [optional] If true, a new SnapShot will be made and the search will be done on that. Default is True. 26 | Left 27 | [optional] Left coordinate of the new SnapShot area. Default is 0. 28 | Top 29 | [optional] Top coordinate of the new SnapShot area. Default is 0. 30 | Right 31 | [optional] Right coordinate of the new SnapShot area. Default is 0. 32 | Bottom 33 | [optional] Bottom coordinate of the new SnapShot area. Default is 0. 34 | NoSnapShot 35 | [optional] SnapShot number. Determines which "slot" the new SnapShot will be stored in. 36 | WindowHandle 37 | [optional] Window handle to be used. 38 | @@End@@ 39 | 40 | ###ReturnValue### 41 | @@ReturnTable@@ 42 | Success: Returns a three-element array of area's coordinates and number of pixels found. (Array[0] = x, Array[1] = y, Array[2] = Number of pixels found). 43 | Failure: Returns 0 and sets @ERROR 44 | @@End@@ 45 | 46 | 47 | ###Remarks### 48 | The coordinates returned specify the barycenter (center of mass) of the area found. 49 | 50 | If more than one acceptable area exists within the SnapShot, this function will return the one closest to PosX, PosY. This is useful for finding clusters of pixels of a particular color. Setting the Color parameter to -1 will cause the search to match on any color in the FastFind color list. 51 | 52 | A new SnapShot will be saved in the default slot if ForceNewSnap remains True. 53 | 54 | 55 | ###Related### 56 | FFSnapShot, FFAddColor, FFAddExcludedArea, FFGetPixel, FFNearestPixel, FFBestSpot 57 | 58 | 59 | ###Example### 60 | Suppose you want to find clusters of 3 or more black pixels, in an area no bigger than 4x4, near the center of the SnapShot (SizeSearch = 4, NbPixel = 3, Color = 0x00000000). 61 | 62 | 63 | 64 | In the above SnapShot, there are five possible locations that meet the criteria, however the coordinates of the green area will be returned, as it's the closest to the specified position. 65 | 66 | @@IncludeExample@@ -------------------------------------------------------------------------------- /FF help/Source/txt2htm/txtFunctions/FFRemoveColor.txt: -------------------------------------------------------------------------------- 1 | ###User Defined Function### 2 | FFRemoveColor 3 | 4 | ###Description### 5 | Remove a color from the list of colors if it exists in the list. 6 | 7 | ###Syntax### 8 | FFRemoveColor ( OldColor ) 9 | 10 | ###Parameters### 11 | @@ParamTable@@ 12 | OldColor 13 | Color value to remove. 14 | @@End@@ 15 | 16 | ###ReturnValue### 17 | @@ReturnTable@@ 18 | Success: Returns 1 19 | Failure: Returns 0 20 | @@End@@ 21 | 22 | 23 | ###Remarks### 24 | None. 25 | 26 | 27 | ###Related### 28 | FFAddColor, FFResetColors, FFNearestPixel, FFNearestSpot, FFBestSpot 29 | 30 | 31 | ###Example### 32 | @@IncludeExample@@ 33 | -------------------------------------------------------------------------------- /FF help/Source/txt2htm/txtFunctions/FFResetColors.txt: -------------------------------------------------------------------------------- 1 | ###User Defined Function### 2 | FFResetColors 3 | 4 | ###Description### 5 | Completely empty the list of colors. 6 | 7 | ###Syntax### 8 | FFResetColors ( ) 9 | 10 | ###Parameters### 11 | None. 12 | 13 | ###ReturnValue### 14 | None. 15 | 16 | 17 | ###Remarks### 18 | None. 19 | 20 | 21 | ###Related### 22 | FFAddColor, FFRemoveColor, FFNearestPixel, FFNearestSpot, FFBestSpot 23 | 24 | 25 | ###Example### 26 | @@IncludeExample@@ 27 | -------------------------------------------------------------------------------- /FF help/Source/txt2htm/txtFunctions/FFResetExcludedAreas.txt: -------------------------------------------------------------------------------- 1 | ###User Defined Function### 2 | FFResetExcludedAreas 3 | 4 | ###Description### 5 | Clears the list of all exclusion zones. 6 | 7 | ###Syntax### 8 | FFResetExcludedAreas ( ) 9 | 10 | ###Parameters### 11 | None. 12 | 13 | ###ReturnValue### 14 | None. 15 | 16 | 17 | ###Remarks### 18 | None. 19 | 20 | 21 | ###Related### 22 | FFAddExcludedArea, FFIsExcluded, FFNearestPixel, FFNearestSpot, FFBestSpot 23 | 24 | 25 | ###Example### 26 | @@IncludeExample@@ 27 | -------------------------------------------------------------------------------- /FF help/Source/txt2htm/txtFunctions/FFSaveBMP.txt: -------------------------------------------------------------------------------- 1 | ###User Defined Function### 2 | FFSaveBMP 3 | 4 | ###Description### 5 | Save a SnapShot to a .BMP file. 6 | 7 | ###Syntax### 8 | FFSaveBMP ( "FileNameWithNoExtension" [, ForceNewSnap [, Left [, Top [, Right [, Bottom [, NoSnapShot [, WindowHandle]]]]]]] ) 9 | 10 | ###Parameters### 11 | @@ParamTable@@ 12 | FileNameWithNoExtension 13 | Name of the file to create. 14 | ForceNewSnap 15 | [optional] If true, a new SnapShot will be made and that will be saved. Default is False. 16 | Left 17 | [optional] Left coordinate of the new SnapShot area. Default is 0. 18 | Top 19 | [optional] Top coordinate of the new SnapShot area. Default is 0. 20 | Right 21 | [optional] Right coordinate of the new SnapShot area. Default is 0. 22 | Bottom 23 | [optional] Bottom coordinate of the new SnapShot area. Default is 0. 24 | NoSnapShot 25 | [optional] SnapShot number. Determines which "slot" the new SnapShot will be stored in. 26 | WindowHandle 27 | [optional] Window handle to be used. 28 | @@End@@ 29 | 30 | ###ReturnValue### 31 | @@ReturnTable@@ 32 | Success: Returns 1 33 | Failure: Returns 0 and sets @ERROR 34 | @@End@@ 35 | 36 | 37 | ###Remarks### 38 | None. 39 | 40 | 41 | ###Related### 42 | FFSnapShot, FFSaveJPG 43 | 44 | 45 | ###Example### 46 | @@IncludeExample@@ -------------------------------------------------------------------------------- /FF help/Source/txt2htm/txtFunctions/FFSaveJPG.txt: -------------------------------------------------------------------------------- 1 | ###User Defined Function### 2 | FFSaveJPG 3 | 4 | ###Description### 5 | Save a SnapShot to a .JPG file. 6 | 7 | ###Syntax### 8 | FFSaveJPG ( "FileNameWithNoExtension" [, QualityFactor [, ForceNewSnap [, Left [, Top [, Right [, Bottom [, NoSnapShot [, WindowHandle]]]]]]]] ) 9 | 10 | ###Parameters### 11 | @@ParamTable@@ 12 | FileNameWithNoExtension 13 | Name of the file to create. 14 | QualityFactor 15 | [optional] Quality level of the JPEG, from 1-100. Default is 85. 16 | ForceNewSnap 17 | [optional] If true, a new SnapShot will be made and that will be saved. Default is True. 18 | Left 19 | [optional] Left coordinate of the new SnapShot area. Default is 0. 20 | Top 21 | [optional] Top coordinate of the new SnapShot area. Default is 0. 22 | Right 23 | [optional] Right coordinate of the new SnapShot area. Default is 0. 24 | Bottom 25 | [optional] Bottom coordinate of the new SnapShot area. Default is 0. 26 | NoSnapShot 27 | [optional] SnapShot number. Determines which "slot" the new SnapShot will be stored in. 28 | WindowHandle 29 | [optional] Window handle to be used. 30 | @@End@@ 31 | 32 | ###ReturnValue### 33 | @@ReturnTable@@ 34 | Success: Returns 1 35 | Failure: Returns 0 and sets @ERROR 36 | @@End@@ 37 | 38 | 39 | ###Remarks### 40 | A new SnapShot will be saved in the default slot unless ForceNewSnap is set to false. 41 | 42 | 43 | ###Related### 44 | FFSnapShot, FFSaveBMP 45 | 46 | 47 | ###Example### 48 | @@IncludeExample@@ -------------------------------------------------------------------------------- /FF help/Source/txt2htm/txtFunctions/FFSetDebugMode.txt: -------------------------------------------------------------------------------- 1 | ###User Defined Function### 2 | FFSetDebugMode 3 | 4 | ###Description### 5 | Sets the types of debugging to be used. 6 | 7 | ###Syntax### 8 | FFSetDebugMode ( DebugMode ) 9 | 10 | ###Parameters### 11 | @@ParamTable@@ 12 | DebugMode 13 | Mode to use for debugging. 14 | Can be a combination of the following: 15 | 0 = No debugging 16 | 1 = Information sent to the console (RequireAdmin) 17 | 2 = Debug information sent to a file (tracer.txt) 18 | 4 = Graphical display of points / areas identified 19 | 8 = Display MessageBox (blocking) 20 | 16 = Excludes internal traces from the DLL 21 | 32 = Excludes detailed internal traces from the DLL 22 | 64 = Excludes external traces (from the application) 23 | 128 = Error message (priority) 24 | @@End@@ 25 | 26 | ###ReturnValue### 27 | None. 28 | 29 | 30 | ###Remarks### 31 | Note that in case of an error, a MessageBox is displayed in the DLL if DebugMode > 0. Serious errors are displayed on all available channels (file, console and MessageBox) if DebugMode > 0. 32 | 33 | To send information to the console in Windows Vista and Windows 7, you will need the #RequireAdmin tag in your AutoIt script. 34 | 35 | 36 | ###Related### 37 | FFTrace, FFTraceError 38 | 39 | 40 | ###Example### 41 | @@IncludeExample@@ 42 | -------------------------------------------------------------------------------- /FF help/Source/txt2htm/txtFunctions/FFSetDefaultSnapShot.txt: -------------------------------------------------------------------------------- 1 | ###User Defined Function### 2 | FFSetDefaultSnapShot 3 | 4 | ###Description### 5 | Sets the default snapshot to be used when none is specified. 6 | 7 | ###Syntax### 8 | FFSetDefaultSnapShot ( NewSnapShot ) 9 | 10 | ###Parameters### 11 | @@ParamTable@@ 12 | NewSnapShot 13 | Snapshot number, from 0 to 1023. 14 | @@End@@ 15 | 16 | ###ReturnValue### 17 | None. 18 | 19 | 20 | ###Remarks### 21 | When using functions that require a snapshot and no snapshot number is specified, they will use the default snapshot. Unless changed, the default snapshot number is 0. 22 | 23 | 24 | ###Related### 25 | FFSnapShot 26 | 27 | 28 | ###Example### 29 | @@IncludeExample@@ 30 | -------------------------------------------------------------------------------- /FF help/Source/txt2htm/txtFunctions/FFSetPixel.txt: -------------------------------------------------------------------------------- 1 | ###User Defined Function### 2 | FFSetPixel 3 | 4 | ###Description### 5 | Changes the color of a pixel in a given SnapShot. 6 | 7 | ###Syntax### 8 | FFSetPixel ( x, y, Color [, NoSnapShot ] ) 9 | 10 | ###Parameters### 11 | @@ParamTable@@ 12 | x 13 | X coordinate of pixel. 14 | y 15 | Y coordinate of pixel. 16 | Color 17 | Color value to change the pixel to (in decimal or hex). 18 | NoSnapShot 19 | [optional] SnapShot number. Default is the most recent SnapShot taken. 20 | @@End@@ 21 | 22 | ###ReturnValue### 23 | @@ReturnTable@@ 24 | Success: Returns 1 25 | Failure: Returns 0 and sets @ERROR 26 | @@End@@ 27 | 28 | 29 | ###Remarks### 30 | None. 31 | 32 | 33 | ###Related### 34 | FFSnapShot, FFGetPixel, FFKeepColor, FFDrawSnapShot 35 | 36 | 37 | ###Example### 38 | @@IncludeExample@@ 39 | -------------------------------------------------------------------------------- /FF help/Source/txt2htm/txtFunctions/FFSetWnd.txt: -------------------------------------------------------------------------------- 1 | ###User Defined Function### 2 | FFSetWnd 3 | 4 | ###Description### 5 | Sets the current window to use. 6 | 7 | ###Syntax### 8 | FFSetWnd ( "WindowHandle" [, ClientOnly] ) 9 | 10 | ###Parameters### 11 | @@ParamTable@@ 12 | WindowHandle 13 | The window handle to use. If windowHandle = 0, the entire screen will be used. 14 | ClientOnly 15 | [optional] True = Only the client area of the window will be used (default). 16 | False = The entire window will be used. 17 | @@End@@ 18 | 19 | ###ReturnValue### 20 | None. 21 | 22 | 23 | ###Remarks### 24 | This will determine the area of the screen captured by snapshots. If not set, the entire screen is used by default. Once set, snapshots will capture only the specified window until it is changed. 25 | 26 | 27 | ###Related### 28 | FFSnapShot 29 | 30 | 31 | ###Example### 32 | @@IncludeExample@@ 33 | -------------------------------------------------------------------------------- /FF help/Source/txt2htm/txtFunctions/FFSnapShot.txt: -------------------------------------------------------------------------------- 1 | ###User Defined Function### 2 | FFSnapShot 3 | 4 | ###Description### 5 | Makes a copy of the screen, window or area in memory. 6 | 7 | ###Syntax### 8 | FFSnapShot ( [Left [, Top [, Right [, Bottom [, NoSnapShot [, WindowHandle]]]]]] ) 9 | 10 | ###Parameters### 11 | @@ParamTable@@ 12 | Left 13 | [optional] Left coordinate of SnapShot area. Default is 0. 14 | Top 15 | [optional] Top coordinate of SnapShot area. Default is 0. 16 | Right 17 | [optional] Right coordinate of SnapShot area. Default is 0. 18 | Bottom 19 | [optional] Bottom coordinate of SnapShot area. Default is 0. 20 | NoSnapShot 21 | [optional] SnapShot number. Determines which "slot" the SnapShot will be stored in. 22 | WindowHandle 23 | [optional] The window handle to capture, if only interested in a particular window. 24 | @@End@@ 25 | 26 | ###ReturnValue### 27 | @@ReturnTable@@ 28 | Success: Returns 1 29 | Failure: Returns 0 and sets @ERROR 30 | @@End@@ 31 | 32 | 33 | ###Remarks### 34 | NoSnapShot will default to the last slot written to by this function, or 0 if not previously set. The default SnapShot can be set separately with FFSetDefaultSnapShot. 35 | 36 | WindowHandle will default to the last value used, or the whole screen if not previously set. The default window handle can be set separately with FFSetWnd. 37 | 38 | If the area indicated is 0,0,0,0 then this will capture the entire window or screen. 39 | 40 | If no SnapShot exists, many other FastFind functions will either fail or automatically take a SnapShot with the default values. SnapShots are an essential part of using FastFind, so it's important to use them correctly! 41 | 42 | Warning: The use of this feature consumes memory. It takes about 1.8 MB of RAM to store a 800x600 area of the screen. Therefore, it is preferable to reuse the same SnapShot number each time. Nevertheless, it is possible to store up to 1024 SnapShots simultaneously. 43 | 44 | 45 | ###Related### 46 | FFSetDefaultSnapShot, FFSetWnd, FFGetPixel, FFNearestPixel, FFNearestSpot, FFBestSpot, FFSaveBMP, FFSaveJPG, FFIsDifferent, FFLocalizeChanges, FFKeepChanges, FFKeepColor, FFDrawSnapShot, FFSetPixel, FFDuplicateSnapShot 47 | 48 | 49 | ###Example### 50 | @@IncludeExample@@ -------------------------------------------------------------------------------- /FF help/Source/txt2htm/txtFunctions/FFTrace.txt: -------------------------------------------------------------------------------- 1 | ###User Defined Function### 2 | FFTrace 3 | 4 | ###Description### 5 | Inserts text into the DLL's debug channels. 6 | 7 | ###Syntax### 8 | FFTrace ( "DebugString" ) 9 | 10 | ###Parameters### 11 | @@ParamTable@@ 12 | DebugString 13 | String to insert into debug channels. 14 | @@End@@ 15 | 16 | ###ReturnValue### 17 | None. 18 | 19 | 20 | ###Remarks### 21 | The debug channels where this text appears will depend on the current debug mode. 22 | 23 | 24 | ###Related### 25 | FFSetDebugMode, FFTraceError 26 | 27 | 28 | ###Example### 29 | @@IncludeExample@@ 30 | -------------------------------------------------------------------------------- /FF help/Source/txt2htm/txtFunctions/FFTraceError.txt: -------------------------------------------------------------------------------- 1 | ###User Defined Function### 2 | FFTraceError 3 | 4 | ###Description### 5 | Inserts an error message into the DLL's debug channels. 6 | 7 | ###Syntax### 8 | FFTraceError ( "DebugString" ) 9 | 10 | ###Parameters### 11 | @@ParamTable@@ 12 | DebugString 13 | Error message to insert into debug channels. 14 | @@End@@ 15 | 16 | ###ReturnValue### 17 | None. 18 | 19 | 20 | ###Remarks### 21 | This works similar to FFTrace, however it will be treated as an error and appear in a MessageBox. The debug channels where this message appears will depend on the current debug mode. 22 | 23 | 24 | ###Related### 25 | FFSetDebugMode, FFTrace, FFGetLastError 26 | 27 | 28 | ###Example### 29 | @@IncludeExample@@ 30 | -------------------------------------------------------------------------------- /FF help/Source/txt2htm_error.log: -------------------------------------------------------------------------------- 1 | ** Warning in:FFAddExcludedArea.txt ==> Include Example file was not found; skipping it:FFAddExcludedArea.au3 2 | ** Warning in:FFColorCount.txt ==> Include Example file was not found; skipping it:FFColorCount.au3 3 | ** Warning in:FFDrawSnapShot.txt ==> Include Example file was not found; skipping it:FFDrawSnapShot.au3 4 | ** Warning in:FFDuplicateSnapShot.txt ==> Include Example file was not found; skipping it:FFDuplicateSnapShot.au3 5 | ** Warning in:FFGetLastError.txt ==> Include Example file was not found; skipping it:FFGetLastError.au3 6 | ** Warning in:FFGetLastFileName.txt ==> Include Example file was not found; skipping it:FFGetLastFileName.au3 7 | ** Warning in:FFGetPixel.txt ==> Include Example file was not found; skipping it:FFGetPixel.au3 8 | ** Warning in:FFGetVersion.txt ==> Include Example file was not found; skipping it:FFGetVersion.au3 9 | ** Warning in:FFIsDifferent.txt ==> Include Example file was not found; skipping it:FFIsDifferent.au3 10 | ** Warning in:FFIsExcluded.txt ==> Include Example file was not found; skipping it:FFIsExcluded.au3 11 | ** Warning in:FFKeepChanges.txt ==> Include Example file was not found; skipping it:FFKeepChanges.au3 12 | ** Warning in:FFKeepColor.txt ==> Include Example file was not found; skipping it:FFKeepColor.au3 13 | ** Warning in:FFLocalizeChanges.txt ==> Include Example file was not found; skipping it:FFLocalizeChanges.au3 14 | ** Warning in:FFRemoveColor.txt ==> Include Example file was not found; skipping it:FFRemoveColor.au3 15 | ** Warning in:FFResetColors.txt ==> Include Example file was not found; skipping it:FFResetColors.au3 16 | ** Warning in:FFResetExcludedAreas.txt ==> Include Example file was not found; skipping it:FFResetExcludedAreas.au3 17 | ** Warning in:FFSaveBMP.txt ==> Include Example file was not found; skipping it:FFSaveBMP.au3 18 | ** Warning in:FFSaveJPG.txt ==> Include Example file was not found; skipping it:FFSaveJPG.au3 19 | ** Warning in:FFSetDefaultSnapShot.txt ==> Include Example file was not found; skipping it:FFSetDefaultSnapShot.au3 20 | ** Warning in:FFSetPixel.txt ==> Include Example file was not found; skipping it:FFSetPixel.au3 21 | ** Warning in:FFSetWnd.txt ==> Include Example file was not found; skipping it:FFSetWnd.au3 22 | ** Warning in:FFTrace.txt ==> Include Example file was not found; skipping it:FFTrace.au3 23 | ** Warning in:FFTraceError.txt ==> Include Example file was not found; skipping it:FFTraceError.au3 24 | -------------------------------------------------------------------------------- /FF help/html/Introduction.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FastFind 5 | 6 | 7 | 8 | 9 | 10 |
FastFind
11 |

Introduction

12 |

FastFind is an advanced pixel search library for AutoIt scripts. It replaces and improves upon the functionality of the standard AutoIt pixel search functions, PixelGetColor and PixelSearch, allowing for more complex searches to be performed at much faster speeds.
13 |
14 | It consists of a .dll file that contains the pixel searching logic, and an AutoIt wrapper file, which acts as an interface between your AutoIt script and the DLL. To start using FastFind, simply copy the files into the same folder as your script, and insert #include "FastFind.au3" near the top of your script file. You will then be able to reference the FastFind functions listed in this help file.

15 |

 

16 | 17 |

Required Files:

18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 |
FastFind.au3AutoIt wrapper (include)
FastFind.dllLibrary for 32bit systems
FastFind64.dllLibrary for 64bit systems
32 | 33 |

 

34 |

How FastFind Works

35 |

One of the reasons FastFind is so much quicker than AutoIt's native pixel search functions is it's use of SnapShots. A SnapShot is basically a pixel map of a specified area on screen as it looked at the time the SnapShot was taken. This pixel information is stored in active memory, which means your script can access it much, much faster than the time it would take to make a new pixel request from the screen. Once a SnapShot is taken, search operations can be performed on that SnapShot until that memory is freed or overwritten.
36 |
37 | It is possible to retain up to 1024 different SnapShots simultaneously, but storing an 800x600 SnapShot will divert about 1.8MB of available RAM, so the size and quantity of SnapShots in use at any given time should be kept to a minimum.
38 |
39 | FastFind pixel search functions will automatically take a new SnapShot and store it in the default 'slot' when they are called, unless you specify otherwise in the function parameters. This will cause a previous SnapShot to be overwritten if it is also stored in the default 'slot'. Check the individual function help pages for more details and instructions on how to change this behavior.
40 |
41 | More advanced operations can be performed with the pixel search functions by maintaining a list of colors and exclusion zones.

42 | 43 | 44 | 45 | -------------------------------------------------------------------------------- /FF help/html/examples/FFAddColor.txt.htm: -------------------------------------------------------------------------------- 1 | 2 | #include "FastFind.au3" 3 | 4 | Local $aColorArray[2] = [0x00FFFFFF, 0x00000000] 5 | 6 | FFAddColor($aColorArray) 7 | FFAddColor(0x00FF0000) 8 | 9 | -------------------------------------------------------------------------------- /FF help/html/examples/FFBestSpot.txt.htm: -------------------------------------------------------------------------------- 1 | 2 | #include "FastFind.au3" 3 | 4 | $FFhWnd = WinGetHandle("[ACTIVE]") 5 | FFSetWnd($FFhWnd) 6 | FFSnapShot() 7 | 8 | Local $aCoords = FFBestSpot(20, 25, 150, 0, 0, 0x00FFFFFF, False) 9 | 10 | If Not @error Then 11 |     MsgBox(0, "Coords", $aCoords[0] & ", " & $aCoords[1]) 12 | Else 13 |     MsgBox(0, "Coords", "Match not found.") 14 | EndIf 15 | -------------------------------------------------------------------------------- /FF help/html/examples/FFNearestPixel.txt.htm: -------------------------------------------------------------------------------- 1 | 2 | #include "FastFind.au3" 3 | 4 | $FFhWnd = WinGetHandle("[ACTIVE]") 5 | FFSetWnd($FFhWnd) 6 | FFSnapShot() 7 | 8 | Local $aCoords = FFNearestPixel(50, 20, 0x00FFFFFF, False) 9 | 10 | If Not @error Then 11 |     MsgBox(0, "Coords", $aCoords[0] & ", " & $aCoords[1]) 12 | Else 13 |     MsgBox(0, "Coords", "Match not found.") 14 | EndIf 15 | -------------------------------------------------------------------------------- /FF help/html/examples/FFNearestSpot.txt.htm: -------------------------------------------------------------------------------- 1 | 2 | #include "FastFind.au3" 3 | 4 | $FFhWnd = WinGetHandle("[ACTIVE]") 5 | FFSetWnd($FFhWnd) 6 | FFSnapShot() 7 | 8 | Local $aCoords = FFNearestSpot(10, 25, 0, 0, 0x00FFFFFF, False) 9 | 10 | If Not @error Then 11 |     MsgBox(0, "Coords", $aCoords[0] & ", " & $aCoords[1]) 12 | Else 13 |     MsgBox(0, "Coords", "Match not found.") 14 | EndIf 15 | -------------------------------------------------------------------------------- /FF help/html/examples/FFSetDebugMode.txt.htm: -------------------------------------------------------------------------------- 1 | 2 | #include "FastFind.au3" 3 | #Include <WinAPI.au3> 4 | 5 | #RequireAdmin 6 | 7 | FFSetDebugMode(7) ; console + file + graphical 8 | -------------------------------------------------------------------------------- /FF help/html/examples/FFSnapShot.txt.htm: -------------------------------------------------------------------------------- 1 | 2 | #include "FastFind.au3" 3 | 4 | AutoItSetOption("WinTitleMatchMode", 4) 5 | 6 | $FFhWnd = WinGetHandle("[ACTIVE]") 7 | FFSetWnd($FFhWnd) 8 | 9 | FFSnapShot(0, 0, 300, 150) 10 | FFSaveBMP(@YEAR & "-" & @MON & "-" & @MDAY & "_" & @HOUR & @MIN & @SEC, false) 11 | -------------------------------------------------------------------------------- /FF help/html/functions/FFAddColor.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFAddColor 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFAddColor 12 |
13 |

Add one or more colors to the color list maintained by FastFind.

14 | 15 |

16 | FFAddColor ( NewColor )
17 |

18 |

 

19 | 20 |

Parameters

21 | 22 | 23 | 24 | 25 | 26 |
NewColorColor value or an array of color values.
27 | 28 |

 

29 | 30 |

Return Value

31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 |
Success:Returns 1
Failure:Returns 0
41 |

 

42 | 43 |

Remarks

44 | The color list can be used when calling search functions, to search for multiple colors instead of one.
45 |
46 |

 

47 | 48 |

Related

49 | FFRemoveColor, FFResetColors, FFNearestPixel, FFNearestSpot, FFBestSpot 50 |

 

51 | 52 |

Example

53 |

54 |
55 | #include "FastFind.au3"
56 |
57 | Local $aColorArray[2] = [0x00FFFFFF, 0x00000000]
58 |
59 | FFAddColor($aColorArray)
60 | FFAddColor(0x00FF0000)
61 |

62 | 66 |

 

67 | 68 | 69 | 70 | -------------------------------------------------------------------------------- /FF help/html/functions/FFAddExcludedArea.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFAddExcludedArea 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFAddExcludedArea 12 |
13 |

Adds an exclusion zone.

14 | 15 |

16 | FFAddExcludedArea ( x1, y1, x2, y2 )
17 |

18 |

 

19 | 20 |

Parameters

21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 |
x1Left coordinate of exlusion area.
y1Top coordinate of exlusion area.
x2Right coordinate of exlusion area.
y2Bottom coordinate of exlusion area.
39 | 40 |

 

41 | 42 |

Return Value

43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 |
Success:Returns 1
Failure:Returns 0
53 |

 

54 | 55 |

Remarks

56 | Exclusion zones are used to restrict the search area in the FastFind search functions. It is possible to have up to 1024 rectangles of exclusion, thereby precisely removing any search area. Once set, the exclusion zones will apply to all FastFind searches until they're reset.
57 |
58 |

 

59 | 60 |

Related

61 | FFResetExcludedAreas, FFIsExcluded, FFNearestPixel, FFNearestSpot, FFBestSpot 62 |

 

63 | 64 | 65 | 66 | -------------------------------------------------------------------------------- /FF help/html/functions/FFApplyFilterOnSnapShot.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFGetPixel 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFApplyFilterOnSnapShot 12 |
13 |

Applies an AND filter on each pixels in the SnapShot.

14 | 15 |

16 | FFApplyFilterOnSnapShot ( Red, Green, 17 | Blue [, NoSnapShot ] )
18 |

19 |

 

20 | 21 |

Parameters

22 | 23 | 24 | 25 | 28 | 29 | 30 | 31 | 34 | 35 | 36 | 37 | 40 | 41 | 42 | 43 | 44 | 45 |
RedFilter to apply on the Red Chanel. Value are in [0, 255] range : 0 26 | will completely remove the Red component on each pixel. 255 will not change the 27 | Red component.
GreenFilter to apply on the Green Chanel. Value are in [0, 255] range : 0 will 32 | completely remove the Green component on each pixel. 255 will not change the 33 | Green component. 
Blue Filter to apply on the Blue Chanel. Value are in [0, 255] range : 0 will 38 | completely remove the Blue component on each pixel. 255 will not change the Blue 39 | component. 
NoSnapShot [optional] SnapShot number. Default is the most recent SnapShot taken.
46 | 47 |

 

48 | 49 |

Return Value

50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 |
Success:Returns the color value of the pixel.
Failure:Returns -1 and sets @ERROR
60 |

 

61 | 62 |

Remarks

63 | You can use this function to lower color resolution (number of useful bits per 64 | pixel) : 65 | FFApplyFilterOnSnapShot ( 0xF0, 0xF0, 0xF0) for instance will keep only 12 bits / 66 | pixels instead of 24.
67 | With FFDuplicateSnapShot, it can also split Red, Green and Blue components on 68 | different Snapshots. 
69 |
70 |

 

71 | 72 |

Related

73 | FFSnapShot, FFDuplicateSnapShot, FFSaveBMP, FFSaveJPG 74 |

 

75 | 76 | 77 | 78 | -------------------------------------------------------------------------------- /FF help/html/functions/FFColorCount.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFColorCount 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFColorCount 12 |
13 |

Counts the number of pixels of a given color in a SnapShot.

14 | 15 |

16 | FFColorCount ( ColorToCount, [ShadeVariation [, ForceNewSnap [, Left [, Top [, Right [, Bottom [, NoSnapShot [, WindowHandle]]]]]]]] )
17 |

18 |

 

19 | 20 |

Parameters

21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 |
ColorToCountColour value of pixels to count (in decimal or hex).
ShadeVariation [optional] A number between 0 and 255 to indicate the allowed number of shades of variation of the red, green, and blue components of the colour. Default is 0 (exact match).
ForceNewSnap [optional] If true, a new SnapShot will be made and the count will be done on that. Default is True.
Left [optional] Left coordinate of the new SnapShot area. Default is 0.
Top [optional] Top coordinate of the new SnapShot area. Default is 0.
Right [optional] Right coordinate of the new SnapShot area. Default is 0.
Bottom [optional] Bottom coordinate of the new SnapShot area. Default is 0.
NoSnapShot [optional] SnapShot number. Determines which "slot" the new SnapShot will be stored in.
WindowHandle [optional] Window handle to be used.
59 | 60 |

 

61 | 62 |

Return Value

63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 |
Success:Returns the number of matching pixels
Failure:Returns False
73 |

 

74 | 75 |

Remarks

76 | None.
77 |
78 |

 

79 | 80 |

Related

81 | FFSnapShot 82 |

 

83 | 84 | 85 | 86 | -------------------------------------------------------------------------------- /FF help/html/functions/FFComputeMeanValues.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFGetPixel 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFComputeMeanValues 12 |
13 |

Gives mean Red, Green and Blue values, useful for detecting changed areas.

14 | 15 |

16 | FFComputeMeanValues ( [ NoSnapShot ] )
17 |

18 |

 

19 | 20 |

Parameters

21 | 22 | 23 | 24 | 25 | 26 |
NoSnapShot [optional] SnapShot number. Default is the most recent SnapShot taken.
27 | 28 |

 

29 | 30 |

Return Value

31 | 32 | 33 | 34 | 39 | 40 | 41 | 42 | 43 | 44 |
Success:It returns an array with: 35 |
36 |    [0]: Mean Red
37 |    [1]: Mean Green
38 |    [2]: Mean Blue
Failure::Returns -1 and sets @ERROR
45 |

 

46 | 47 |

Remarks

48 | None.
49 |
50 |

 

51 | 52 |

53 | FFSnapShot 54 |

 

55 | 56 | 57 | 58 | -------------------------------------------------------------------------------- /FF help/html/functions/FFDrawSnapShot.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFDrawSnapShot 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFDrawSnapShot 12 |
13 |

Draws the SnapShot back onto the screen.

14 | 15 |

16 | FFDrawSnapShot ( [ NoSnapShot ] )
17 |

18 |

 

19 | 20 |

Parameters

21 | 22 | 23 | 24 | 25 | 26 |
NoSnapShot [optional] SnapShot number. Default is the most recent SnapShot taken.
27 | 28 |

 

29 | 30 |

Return Value

31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 |
Success:Returns 1
Failure:Returns 0 and sets @ERROR
41 |

 

42 | 43 |

Remarks

44 | The SnapShot will be drawn on the same Window and position it was taken from, and will include modifications.
45 |
46 |

 

47 | 48 |

Related

49 | FFDrawSnapShotXY, FFSnapShot, FFSetPixel, FFKeepChanges, FFKeepColor 50 |

 

51 | 52 | 53 | 54 | -------------------------------------------------------------------------------- /FF help/html/functions/FFDrawSnapShotXY.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFDrawSnapShot 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFDrawSnapShotXY 12 |
13 |

Draws the SnapShot back onto the screen, with specific top-left screen position for 14 | drawing.

15 | 16 |

17 | FFDrawSnapShotXY ( X, Y [, NoSnapShot ])
18 |

19 |

 

20 | 21 |

Parameters

22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 |
X Left position (screen coordinates).
Y Top position (screen coordinates).
NoSnapShot [optional] SnapShot number. Default is the most recent SnapShot taken.
36 | 37 |

 

38 | 39 |

Return Value

40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 |
Success:Returns 1
Failure:Returns 0 and sets @ERROR
50 |

 

51 | 52 |

Remarks

53 | The SnapShot will be drawn at the given top-left position on the screen, and will include modifications.
54 |
55 |

 

56 | 57 |

Related

58 | FFDrawSnapShot, FFSnapShot, FFSetPixel, FFKeepChanges, FFKeepColor 59 |

 

60 | 61 | 62 | 63 | -------------------------------------------------------------------------------- /FF help/html/functions/FFDuplicateSnapShot.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFDuplicateSnapShot 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFDuplicateSnapShot 12 |
13 |

Makes a copy of a SnapShot.

14 | 15 |

16 | FFDuplicateSnapShot ( NoSnapShotSrc, NoSnapShotDst )
17 |

18 |

 

19 | 20 |

Parameters

21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 |
NoSnapShotSrcThe "slot" number of the source SnapShot.
NoSnapShotDstThe destination "slot" number where the duplicate SnapShot will be stored.
31 | 32 |

 

33 | 34 |

Return Value

35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 |
Success:Returns 1
Failure:Returns 0 and sets @ERROR
45 |

 

46 | 47 |

Remarks

48 | None.
49 |
50 |

 

51 | 52 |

Related

53 | FFSnapShot 54 |

 

55 | 56 | 57 | 58 | -------------------------------------------------------------------------------- /FF help/html/functions/FFGetLastError.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFGetLastError 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFGetLastError 12 |
13 |

Returns the last error message from the DLL's debug channels.

14 | 15 |

16 | FFGetLastError ( )
17 |

18 |

 

19 | 20 |

Parameters

21 | None.
22 | 23 |

 

24 | 25 |

Return Value

26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 |
Success:Returns the error message.
Failure:Returns an empty string and sets @ERROR
36 |

 

37 | 38 |

Remarks

39 | This function won't work if all debug options are disabled, as error strings won't be initialized.
40 |
41 |

 

42 | 43 |

Related

44 | FFSetDebugMode, FFTraceError 45 |

 

46 | 47 | 48 | 49 | -------------------------------------------------------------------------------- /FF help/html/functions/FFGetLastFileName.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFGetLastFileName 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFGetLastFileName 12 |
13 |

Returns the filename of the last BMP or JPG saved by FastFind.

14 | 15 |

16 | FFGetLastFileName ( )
17 |

18 |

 

19 | 20 |

Parameters

21 | None.
22 | 23 |

 

24 | 25 |

Return Value

26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 |
Success:Returns the file name.
Failure:Returns an empty string.
36 |

 

37 | 38 |

Remarks

39 | None.
40 |
41 |

 

42 | 43 |

Related

44 | FFSaveBMP, FFSaveJPG 45 |

 

46 | 47 | 48 | 49 | -------------------------------------------------------------------------------- /FF help/html/functions/FFGetPixel.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFGetPixel 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFGetPixel 12 |
13 |

Returns the color value of a specified pixel in a SnapShot.

14 | 15 |

16 | FFGetPixel ( x, y [, NoSnapShot ] )
17 |

18 |

 

19 | 20 |

Parameters

21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 |
xX coordinate of pixel.
yY coordinate of pixel.
NoSnapShot [optional] SnapShot number. Default is the most recent SnapShot taken.
35 | 36 |

 

37 | 38 |

Return Value

39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 |
Success:Returns the color value of the pixel.
Failure:Returns -1 and sets @ERROR
49 |

 

50 | 51 |

Remarks

52 | None.
53 |
54 |

 

55 | 56 |

Related

57 | FFSnapShot, FFNearestPixel, FFNearestSpot 58 |

 

59 | 60 | 61 | 62 | -------------------------------------------------------------------------------- /FF help/html/functions/FFGetRawData.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFGetPixel 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFGetRawData 12 |
13 |

Gives RawBytes of the SnapShot.

14 | 15 |

16 | FFGetRawData ( [ NoSnapShot ])
17 |

18 |

 

19 | 20 |

Parameters

21 | 22 | 23 | 24 | 25 | 26 |
NoSnapShot [optional] SnapShot number. Default is the most recent SnapShot taken.
27 | 28 |

 

29 | 30 |

Return Value

31 | 32 | 33 | 34 | 38 | 39 | 40 | 41 | 42 | 43 |
Success:It returns a string stride with the Raw bytes of the SnapShot in 8 35 | Hex digits (BGRA) of pixels from left to right, top to bottom ; every pixel can 36 | be accessed like this: StringMid($sStride, $pixelNo *8 +1 ,8) and you get for 37 | example 685E5B00 (blue = 68, green = 5E, red = 5B, alpha = 00).
Failure:Returns -1 and sets @ERROR
44 |

 

45 | 46 |

Remarks

47 | This function is designed for advanced users only, as an example of how to use 48 | the GetRawData DLL function. In most cases, FFGetPixel is easier to use and fast 49 | enough.
50 |
51 |

 

52 | 53 |

Related

54 | FFSnapShot, FFGetPixel 55 |

 

56 | 57 | 58 | 59 | -------------------------------------------------------------------------------- /FF help/html/functions/FFGetVersion.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFGetVersion 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFGetVersion 12 |
13 |

Returns the version of the FastFind DLL.

14 | 15 |

16 | FFGetVersion ( )
17 |

18 |

 

19 | 20 |

Parameters

21 | None.
22 | 23 |

 

24 | 25 |

Return Value

26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 |
Success:Returns the version number.
Failure:Returns '???' and sets @ERROR
36 |

 

37 | 38 |

Remarks

39 | None.
40 |
41 |

 

42 | 43 |

Related

44 | 45 |

 

46 | 47 | 48 | 49 | -------------------------------------------------------------------------------- /FF help/html/functions/FFIsDifferent.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFIsDifferent 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFIsDifferent 12 |
13 |

Compares two SnapShots and determines whether they have any differences.

14 | 15 |

16 | FFIsDifferent ( NoSnapShot1, NoSnapShot2 [, ShadeVariation] )
17 |

18 |

 

19 | 20 |

Parameters

21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 |
NoSnapShot1The "slot" number of the first SnapShot to compare.
NoSnapShot2The "slot" number of the second SnapShot to compare.
ShadeVariation [optional] A number between 0 and 255 to indicate the allowed number of shades of variation of the red, green, and blue components of the colour. Default is 0 (exact match).
35 | 36 |

 

37 | 38 |

Return Value

39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 |
Success:Returns True
Failure:Returns False
49 |

 

50 | 51 |

Remarks

52 | None.
53 |
54 |

 

55 | 56 |

Related

57 | FFSnapShot, FFLocalizeChanges 58 |

 

59 | 60 | 61 | 62 | -------------------------------------------------------------------------------- /FF help/html/functions/FFIsExcluded.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFIsExcluded 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFIsExcluded 12 |
13 |

Checks if the point passed as a parameter is within the current exclusion zones.

14 | 15 |

16 | FFIsExcluded ( x, y, hWnd )
17 |

18 |

 

19 | 20 |

Parameters

21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 |
xHorizontal coordinate of point.
yVertical coordinate of point.
hWndWindow handle.
35 | 36 |

 

37 | 38 |

Return Value

39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 |
Success:Returns 1
Failure:Returns 0
49 |

 

50 | 51 |

Remarks

52 | None.
53 |
54 |

 

55 | 56 |

Related

57 | FFAddExcludedArea, FFResetExcludedAreas 58 |

 

59 | 60 | 61 | 62 | -------------------------------------------------------------------------------- /FF help/html/functions/FFKeepChanges.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFKeepChanges 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFKeepChanges 12 |
13 |

Change a SnapShot so that it keeps only the pixels that are different from another SnapShot.

14 | 15 |

16 | FFKeepChanges ( NoSnapShot1, NoSnapShot2 [, ShadeVariation] )
17 |

18 |

 

19 | 20 |

Parameters

21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 |
NoSnapShot1The "slot" number of the SnapShot to change.
NoSnapShot2The "slot" number of the SnapShot to compare against.
ShadeVariation [optional] A number between 0 and 255 to indicate the allowed number of shades of variation of the red, green, and blue components of the colour. Default is 0 (exact match).
35 | 36 |

 

37 | 38 |

Return Value

39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 |
Success:Returns 1
Failure:Returns 0 and sets @ERROR
49 |

 

50 | 51 |

Remarks

52 | The first SnapShot will be modified when this function is called, changing pixels that are the same in both SnapShots to black. The second SnapShot is kept unchanged.
53 |
54 |

 

55 | 56 |

Related

57 | FFSnapShot, FFIsDifferent, FFLocalizeChanges, FFKeepColor, FFDrawSnapShot 58 |

 

59 | 60 | 61 | 62 | -------------------------------------------------------------------------------- /FF help/html/functions/FFKeepColor.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFKeepColor 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFKeepColor 12 |
13 |

Change a SnapShot so that it keeps only the color(s) specified.

14 | 15 |

16 | FFKeepColor ( ColorToFind [, ShadeVariation [, ForceNewSnap [, Left [, Top [, Right [, Bottom [, NoSnapShot [, WindowHandle]]]]]]]] )
17 |

18 |

 

19 | 20 |

Parameters

21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 |
ColorToFindColor value of pixels to keep (in decimal or hex). -1 to use the FastFind color list.
ShadeVariation [optional] A number between 0 and 255 to indicate the allowed number of shades of variation of the red, green, and blue components of the colour. Default is 0 (exact match).
ForceNewSnap [optional] If true, a new SnapShot will be made and the change will be done on that. Default is True.
Left [optional] Left coordinate of the new SnapShot area. Default is 0.
Top [optional] Top coordinate of the new SnapShot area. Default is 0.
Right [optional] Right coordinate of the new SnapShot area. Default is 0.
Bottom [optional] Bottom coordinate of the new SnapShot area. Default is 0.
NoSnapShot [optional] SnapShot number. Determines which "slot" the new SnapShot will be stored in.
WindowHandle [optional] Window handle to be used.
59 | 60 |

 

61 | 62 |

Return Value

63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 |
Success:Returns 1
Failure:Returns 0 and sets @ERROR
73 |

 

74 | 75 |

Remarks

76 | Pixels that don't match the specified color(s) will become black. Setting the ColorToFind parameter to -1 will cause this function to match on any color in the FastFind color list.
77 |
78 | A new SnapShot will be saved in the default slot unless ForceNewSnap is set to false.
79 |
80 |

 

81 | 82 |

Related

83 | FFSnapShot, FFColorCount, FFKeepChanges, FFDrawSnapShot 84 |

 

85 | 86 | 87 | 88 | -------------------------------------------------------------------------------- /FF help/html/functions/FFLocalizeChanges.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFLocalizeChanges 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFLocalizeChanges 12 |
13 |

Compares two SnapShots and specifies the number of differences, as well as the area in which they occur.

14 | 15 |

16 | FFLocalizeChanges ( NoSnapShot1, NoSnapShot2 [, ShadeVariation] )
17 |

18 |

 

19 | 20 |

Parameters

21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 |
NoSnapShot1The "slot" number of the first SnapShot to compare.
NoSnapShot2The "slot" number of the second SnapShot to compare.
ShadeVariation [optional] A number between 0 and 255 to indicate the allowed number of shades of variation of the red, green, and blue components of the colour. Default is 0 (exact match).
35 | 36 |

 

37 | 38 |

Return Value

39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 |
Success:Returns a five-element array specifying the area and number of differences.
Failure:Returns 0 and sets @ERROR = 1
49 |

 

50 | 51 |

Remarks

52 | If successful, the elements of the array returned are as follows:
53 | [0]: left edge of the rectangle
54 | [1]: upper edge of the rectangle
55 | [2]: right edge of the rectangle
56 | [3]: lower edge of the rectangle
57 | [4]: Number of pixels that changed
58 |
59 |

 

60 | 61 |

Related

62 | FFSnapShot, FFIsDifferent 63 |

 

64 | 65 | 66 | 67 | -------------------------------------------------------------------------------- /FF help/html/functions/FFRemoveColor.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFRemoveColor 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFRemoveColor 12 |
13 |

Remove a color from the list of colors if it exists in the list.

14 | 15 |

16 | FFRemoveColor ( OldColor )
17 |

18 |

 

19 | 20 |

Parameters

21 | 22 | 23 | 24 | 25 | 26 |
OldColorColor value to remove.
27 | 28 |

 

29 | 30 |

Return Value

31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 |
Success:Returns 1
Failure:Returns 0
41 |

 

42 | 43 |

Remarks

44 | None.
45 |
46 |

 

47 | 48 |

Related

49 | FFAddColor, FFResetColors, FFNearestPixel, FFNearestSpot, FFBestSpot 50 |

 

51 | 52 | 53 | 54 | -------------------------------------------------------------------------------- /FF help/html/functions/FFResetColors.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFResetColors 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFResetColors 12 |
13 |

Completely empty the list of colors.

14 | 15 |

16 | FFResetColors ( )
17 |

18 |

 

19 | 20 |

Parameters

21 | None.
22 | 23 |

 

24 | 25 |

Return Value

26 | None.
27 |

 

28 | 29 |

Remarks

30 | None.
31 |
32 |

 

33 | 34 |

Related

35 | FFAddColor, FFRemoveColor, FFNearestPixel, FFNearestSpot, FFBestSpot 36 |

 

37 | 38 | 39 | 40 | -------------------------------------------------------------------------------- /FF help/html/functions/FFResetExcludedAreas.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFResetExcludedAreas 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFResetExcludedAreas 12 |
13 |

Clears the list of all exclusion zones.

14 | 15 |

16 | FFResetExcludedAreas ( )
17 |

18 |

 

19 | 20 |

Parameters

21 | None.
22 | 23 |

 

24 | 25 |

Return Value

26 | None.
27 |

 

28 | 29 |

Remarks

30 | None.
31 |
32 |

 

33 | 34 |

Related

35 | FFAddExcludedArea, FFIsExcluded, FFNearestPixel, FFNearestSpot, FFBestSpot 36 |

 

37 | 38 | 39 | 40 | -------------------------------------------------------------------------------- /FF help/html/functions/FFSaveBMP.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFSaveBMP 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFSaveBMP 12 |
13 |

Save a SnapShot to a .BMP file.

14 | 15 |

16 | FFSaveBMP ( "FileNameWithNoExtension" [, ForceNewSnap [, Left [, Top [, Right [, Bottom [, NoSnapShot [, WindowHandle]]]]]]] )
17 |

18 |

 

19 | 20 |

Parameters

21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 |
FileNameWithNoExtensionName of the file to create.
ForceNewSnap [optional] If true, a new SnapShot will be made and that will be saved. Default is False.
Left [optional] Left coordinate of the new SnapShot area. Default is 0.
Top [optional] Top coordinate of the new SnapShot area. Default is 0.
Right [optional] Right coordinate of the new SnapShot area. Default is 0.
Bottom [optional] Bottom coordinate of the new SnapShot area. Default is 0.
NoSnapShot [optional] SnapShot number. Determines which "slot" the new SnapShot will be stored in.
WindowHandle [optional] Window handle to be used.
55 | 56 |

 

57 | 58 |

Return Value

59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 |
Success:Returns 1
Failure:Returns 0 and sets @ERROR
69 |

 

70 | 71 |

Remarks

72 | None.
73 |
74 |

 

75 | 76 |

Related

77 | FFSnapShot, FFSaveJPG 78 |

 

79 | 80 | 81 | 82 | -------------------------------------------------------------------------------- /FF help/html/functions/FFSaveJPG.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFSaveJPG 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFSaveJPG 12 |
13 |

Save a SnapShot to a .JPG file.

14 | 15 |

16 | FFSaveJPG ( "FileNameWithNoExtension" [, QualityFactor [, ForceNewSnap [, Left [, Top [, Right [, Bottom [, NoSnapShot [, WindowHandle]]]]]]]] )
17 |

18 |

 

19 | 20 |

Parameters

21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 |
FileNameWithNoExtensionName of the file to create.
QualityFactor [optional] Quality level of the JPEG, from 1-100. Default is 85.
ForceNewSnap [optional] If true, a new SnapShot will be made and that will be saved. Default is True.
Left [optional] Left coordinate of the new SnapShot area. Default is 0.
Top [optional] Top coordinate of the new SnapShot area. Default is 0.
Right [optional] Right coordinate of the new SnapShot area. Default is 0.
Bottom [optional] Bottom coordinate of the new SnapShot area. Default is 0.
NoSnapShot [optional] SnapShot number. Determines which "slot" the new SnapShot will be stored in.
WindowHandle [optional] Window handle to be used.
59 | 60 |

 

61 | 62 |

Return Value

63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 |
Success:Returns 1
Failure:Returns 0 and sets @ERROR
73 |

 

74 | 75 |

Remarks

76 | A new SnapShot will be saved in the default slot unless ForceNewSnap is set to false.
77 |
78 |

 

79 | 80 |

Related

81 | FFSnapShot, FFSaveBMP 82 |

 

83 | 84 | 85 | 86 | -------------------------------------------------------------------------------- /FF help/html/functions/FFSetDebugMode.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFSetDebugMode 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFSetDebugMode 12 |
13 |

Sets the types of debugging to be used.

14 | 15 |

16 | FFSetDebugMode ( DebugMode )
17 |

18 |

 

19 | 20 |

Parameters

21 | 22 | 23 | 24 | 35 | 36 |
DebugModeMode to use for debugging.
25 | Can be a combination of the following:
26 |   0 = No debugging
27 |   1 = Information sent to the console (RequireAdmin)
28 |   2 = Debug information sent to a file (tracer.txt)
29 |   4 = Graphical display of points / areas identified
30 |   8 = Display MessageBox (blocking)
31 |   16 = Excludes internal traces from the DLL
32 |   32 = Excludes detailed internal traces from the DLL
33 |   64 = Excludes external traces (from the application)
34 |   128 = Error message (priority)
37 | 38 |

 

39 | 40 |

Return Value

41 | None.
42 |

 

43 | 44 |

Remarks

45 | Note that in case of an error, a MessageBox is displayed in the DLL if DebugMode > 0. Serious errors are displayed on all available channels (file, console and MessageBox) if DebugMode > 0.
46 |
47 | To send information to the console in Windows Vista and Windows 7, you will need the #RequireAdmin tag in your AutoIt script.
48 |
49 |

 

50 | 51 |

Related

52 | FFTrace, FFTraceError 53 |

 

54 | 55 |

Example

56 |

57 |
58 | #include "FastFind.au3"
59 | #Include <WinAPI.au3>
60 |
61 | #RequireAdmin
62 |
63 | FFSetDebugMode(7) ; console + file + graphical

64 | 68 |

 

69 | 70 | 71 | 72 | -------------------------------------------------------------------------------- /FF help/html/functions/FFSetDefaultSnapShot.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFSetDefaultSnapShot 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFSetDefaultSnapShot 12 |
13 |

Sets the default snapshot to be used when none is specified.

14 | 15 |

16 | FFSetDefaultSnapShot ( NewSnapShot )
17 |

18 |

 

19 | 20 |

Parameters

21 | 22 | 23 | 24 | 25 | 26 |
NewSnapShotSnapshot number, from 0 to 1023.
27 | 28 |

 

29 | 30 |

Return Value

31 | None.
32 |

 

33 | 34 |

Remarks

35 | When using functions that require a snapshot and no snapshot number is specified, they will use the default snapshot. Unless changed, the default snapshot number is 0.
36 |
37 |

 

38 | 39 |

Related

40 | FFSnapShot 41 |

 

42 | 43 | 44 | 45 | -------------------------------------------------------------------------------- /FF help/html/functions/FFSetPixel.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFSetPixel 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFSetPixel 12 |
13 |

Changes the color of a pixel in a given SnapShot.

14 | 15 |

16 | FFSetPixel ( x, y, Color [, NoSnapShot ] )
17 |

18 |

 

19 | 20 |

Parameters

21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 |
xX coordinate of pixel.
yY coordinate of pixel.
ColorColor value to change the pixel to (in decimal or hex).
NoSnapShot [optional] SnapShot number. Default is the most recent SnapShot taken.
39 | 40 |

 

41 | 42 |

Return Value

43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 |
Success:Returns 1
Failure:Returns 0 and sets @ERROR
53 |

 

54 | 55 |

Remarks

56 | None.
57 |
58 |

 

59 | 60 |

Related

61 | FFSnapShot, FFGetPixel, FFKeepColor, FFDrawSnapShot 62 |

 

63 | 64 | 65 | 66 | -------------------------------------------------------------------------------- /FF help/html/functions/FFSetWnd.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFSetWnd 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFSetWnd 12 |
13 |

Sets the current window to use.

14 | 15 |

16 | FFSetWnd ( "WindowHandle" [, ClientOnly] )
17 |

18 |

 

19 | 20 |

Parameters

21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 30 | 31 |
WindowHandleThe window handle to use. If windowHandle = 0, the entire screen will be used.
ClientOnly [optional] True = Only the client area of the window will be used (default).
29 | False = The entire window will be used.
32 | 33 |

 

34 | 35 |

Return Value

36 | None.
37 |

 

38 | 39 |

Remarks

40 | This will determine the area of the screen captured by snapshots. If not set, the entire screen is used by default. Once set, snapshots will capture only the specified window until it is changed.
41 |
42 |

 

43 | 44 |

Related

45 | FFSnapShot 46 |

 

47 | 48 | 49 | 50 | -------------------------------------------------------------------------------- /FF help/html/functions/FFTrace.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFTrace 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFTrace 12 |
13 |

Inserts text into the DLL's debug channels.

14 | 15 |

16 | FFTrace ( "DebugString" )
17 |

18 |

 

19 | 20 |

Parameters

21 | 22 | 23 | 24 | 25 | 26 |
DebugStringString to insert into debug channels.
27 | 28 |

 

29 | 30 |

Return Value

31 | None.
32 |

 

33 | 34 |

Remarks

35 | The debug channels where this text appears will depend on the current debug mode.
36 |
37 |

 

38 | 39 |

Related

40 | FFSetDebugMode, FFTraceError 41 |

 

42 | 43 | 44 | 45 | -------------------------------------------------------------------------------- /FF help/html/functions/FFTraceError.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Function FFTraceError 5 | 6 | 7 | 8 | 9 | 10 |

Function Reference

11 | FFTraceError 12 |
13 |

Inserts an error message into the DLL's debug channels.

14 | 15 |

16 | FFTraceError ( "DebugString" )
17 |

18 |

 

19 | 20 |

Parameters

21 | 22 | 23 | 24 | 25 | 26 |
DebugStringError message to insert into debug channels.
27 | 28 |

 

29 | 30 |

Return Value

31 | None.
32 |

 

33 | 34 |

Remarks

35 | This works similar to FFTrace, however it will be treated as an error and appear in a MessageBox. The debug channels where this message appears will depend on the current debug mode.
36 |
37 |

 

38 | 39 |

Related

40 | FFSetDebugMode, FFTrace, FFGetLastError 41 |

 

42 | 43 | 44 | 45 | -------------------------------------------------------------------------------- /FF help/html/images/FindSpotExplain.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FastFrench/FastFind/693c5c1eed3ebe228d8e10eca0f4e822e5c26c00/FF help/html/images/FindSpotExplain.png -------------------------------------------------------------------------------- /FF help/html/images/blue_gradient_1024x24.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FastFrench/FastFind/693c5c1eed3ebe228d8e10eca0f4e822e5c26c00/FF help/html/images/blue_gradient_1024x24.jpg -------------------------------------------------------------------------------- /FF help/htmlhelp.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FastFrench/FastFind/693c5c1eed3ebe228d8e10eca0f4e822e5c26c00/FF help/htmlhelp.exe -------------------------------------------------------------------------------- /FFShowPixels.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FastFrench/FastFind/693c5c1eed3ebe228d8e10eca0f4e822e5c26c00/FFShowPixels.exe -------------------------------------------------------------------------------- /FastFind.sln: -------------------------------------------------------------------------------- 1 |  2 | Microsoft Visual Studio Solution File, Format Version 11.00 3 | # Visual Studio 2010 4 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "FastFindDLL", "FastFindDLL\FastFindDLL.vcxproj", "{665FCE36-CFC7-4E16-A978-72E983DE24E5}" 5 | EndProject 6 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ShowPixels", "ShowPixels\ShowPixels.vcxproj", "{641EB09C-84FE-40E9-BD73-7451C5C2C497}" 7 | EndProject 8 | Global 9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 10 | Debug|Win32 = Debug|Win32 11 | Debug|x64 = Debug|x64 12 | DofusRelease|Win32 = DofusRelease|Win32 13 | DofusRelease|x64 = DofusRelease|x64 14 | Release|Win32 = Release|Win32 15 | Release|x64 = Release|x64 16 | EndGlobalSection 17 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 18 | {665FCE36-CFC7-4E16-A978-72E983DE24E5}.Debug|Win32.ActiveCfg = Release|Win32 19 | {665FCE36-CFC7-4E16-A978-72E983DE24E5}.Debug|Win32.Build.0 = Release|Win32 20 | {665FCE36-CFC7-4E16-A978-72E983DE24E5}.Debug|x64.ActiveCfg = Debug|x64 21 | {665FCE36-CFC7-4E16-A978-72E983DE24E5}.Debug|x64.Build.0 = Debug|x64 22 | {665FCE36-CFC7-4E16-A978-72E983DE24E5}.DofusRelease|Win32.ActiveCfg = DofusRelease|Win32 23 | {665FCE36-CFC7-4E16-A978-72E983DE24E5}.DofusRelease|Win32.Build.0 = DofusRelease|Win32 24 | {665FCE36-CFC7-4E16-A978-72E983DE24E5}.DofusRelease|x64.ActiveCfg = DofusRelease|x64 25 | {665FCE36-CFC7-4E16-A978-72E983DE24E5}.DofusRelease|x64.Build.0 = DofusRelease|x64 26 | {665FCE36-CFC7-4E16-A978-72E983DE24E5}.Release|Win32.ActiveCfg = Release|Win32 27 | {665FCE36-CFC7-4E16-A978-72E983DE24E5}.Release|Win32.Build.0 = Release|Win32 28 | {665FCE36-CFC7-4E16-A978-72E983DE24E5}.Release|x64.ActiveCfg = Release|x64 29 | {665FCE36-CFC7-4E16-A978-72E983DE24E5}.Release|x64.Build.0 = Release|x64 30 | {641EB09C-84FE-40E9-BD73-7451C5C2C497}.Debug|Win32.ActiveCfg = Debug|Win32 31 | {641EB09C-84FE-40E9-BD73-7451C5C2C497}.Debug|Win32.Build.0 = Debug|Win32 32 | {641EB09C-84FE-40E9-BD73-7451C5C2C497}.Debug|x64.ActiveCfg = Debug|x64 33 | {641EB09C-84FE-40E9-BD73-7451C5C2C497}.DofusRelease|Win32.ActiveCfg = DofusRelease|Win32 34 | {641EB09C-84FE-40E9-BD73-7451C5C2C497}.DofusRelease|Win32.Build.0 = DofusRelease|Win32 35 | {641EB09C-84FE-40E9-BD73-7451C5C2C497}.DofusRelease|x64.ActiveCfg = DofusRelease|x64 36 | {641EB09C-84FE-40E9-BD73-7451C5C2C497}.DofusRelease|x64.Build.0 = DofusRelease|x64 37 | {641EB09C-84FE-40E9-BD73-7451C5C2C497}.Release|Win32.ActiveCfg = Release|Win32 38 | {641EB09C-84FE-40E9-BD73-7451C5C2C497}.Release|Win32.Build.0 = Release|Win32 39 | {641EB09C-84FE-40E9-BD73-7451C5C2C497}.Release|x64.ActiveCfg = Release|x64 40 | EndGlobalSection 41 | GlobalSection(SolutionProperties) = preSolution 42 | HideSolutionNode = FALSE 43 | EndGlobalSection 44 | EndGlobal 45 | -------------------------------------------------------------------------------- /FastFindDLL.def: -------------------------------------------------------------------------------- 1 | LIBRARY "FastFind" 2 | 3 | EXPORTS 4 | SetDebugMode 5 | DebugTrace 6 | DebugError 7 | 8 | SetHWnd 9 | GetLastErrorMsg 10 | 11 | AddExcludedArea 12 | ResetExcludedAreas 13 | IsExcluded 14 | 15 | FFTest 16 | FFVersion 17 | 18 | SnapShot 19 | 20 | ProgressiveSearch 21 | GenericColorSearch 22 | ColorCount 23 | ColorPixelSearch 24 | 25 | LocalizeChanges 26 | HasChanged 27 | 28 | FFGetPixel 29 | 30 | AddColor 31 | RemoveColor 32 | ResetColors 33 | ColorsSearch 34 | ColorsPixelSearch 35 | 36 | SaveBMP 37 | SaveJPG 38 | GetLastFileSuffix 39 | LoadFromFile 40 | GetLastFileName 41 | 42 | KeepChanges 43 | KeepColor 44 | 45 | 46 | DrawSnapShot 47 | DrawSnapShotXY 48 | FFSetPixel 49 | 50 | DuplicateSnapShot 51 | GetRawData 52 | 53 | ApplyFilterOnSnapShot 54 | ComputeMeanValues 55 | -------------------------------------------------------------------------------- /FastFindDLL/DofusSpecific.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FastFrench/FastFind/693c5c1eed3ebe228d8e10eca0f4e822e5c26c00/FastFindDLL/DofusSpecific.cpp -------------------------------------------------------------------------------- /FastFindDLL/FastFind.cpp: -------------------------------------------------------------------------------- 1 | /* 2 | FastFind 3 | Copyright (c) 2010 - 2013 FastFrench (antispam@laposte.net) 4 | 5 | This program is free software; you can redistribute it and/or 6 | modify it under the terms of the GNU General Public License 7 | as published by the Free Software Foundation; either version 2 8 | of the License, or (at your option) any later version. 9 | 10 | This program is distributed in the hope that it will be useful, 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | GNU General Public License for more details. 14 | */ 15 | #include "stdafx.h" 16 | #include 17 | #include 18 | 19 | 20 | #ifdef _MANAGED 21 | #pragma managed(push, off) 22 | #endif 23 | void GlobalCleaning(); 24 | 25 | BOOL APIENTRY DllMain( HMODULE hModule, 26 | DWORD ul_reason_for_call, 27 | LPVOID lpReserved 28 | ) 29 | { 30 | switch(ul_reason_for_call) { 31 | case DLL_PROCESS_ATTACH : { 32 | } 33 | break; 34 | case DLL_PROCESS_DETACH : { 35 | StopGDIplus(); 36 | } 37 | break; 38 | } 39 | return TRUE; 40 | } 41 | 42 | #ifdef _MANAGED 43 | #pragma managed(pop) 44 | #endif 45 | #ifndef _USRDLL 46 | int __stdcall WinMain( 47 | __in HINSTANCE hInstance, 48 | __in HINSTANCE hPrevInstance, 49 | __in LPSTR lpCmdLine, 50 | __in int nCmdShow 51 | ) 52 | { 53 | 54 | int NbPoints = 100, XRef = 125, YRef = 520; 55 | 56 | ColorSearch2(0, 0, 1023, 767, 100, NbPoints, XRef, YRef, 0x00FFFFFF, 3); 57 | 58 | return 0; 59 | } 60 | #endif -------------------------------------------------------------------------------- /FastFindDLL/FastFind.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FastFrench/FastFind/693c5c1eed3ebe228d8e10eca0f4e822e5c26c00/FastFindDLL/FastFind.h -------------------------------------------------------------------------------- /FastFindDLL/FastFind.rc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FastFrench/FastFind/693c5c1eed3ebe228d8e10eca0f4e822e5c26c00/FastFindDLL/FastFind.rc -------------------------------------------------------------------------------- /FastFindDLL/FastFindDLL.filters: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | {4FC737F1-C7A5-4376-A066-2A32D752A2FF} 6 | cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx 7 | 8 | 9 | {93995380-89BD-4b04-88EB-625FBE52EBFB} 10 | h;hpp;hxx;hm;inl;inc;xsd 11 | 12 | 13 | {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} 14 | rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav 15 | 16 | 17 | 18 | 19 | Source Files 20 | 21 | 22 | Source Files 23 | 24 | 25 | Source Files 26 | 27 | 28 | Source Files 29 | 30 | 31 | Source Files 32 | 33 | 34 | Source Files 35 | 36 | 37 | Source Files 38 | 39 | 40 | 41 | 42 | Header Files 43 | 44 | 45 | Header Files 46 | 47 | 48 | Header Files 49 | 50 | 51 | Header Files 52 | 53 | 54 | Header Files 55 | 56 | 57 | Header Files 58 | 59 | 60 | 61 | 62 | Source Files 63 | 64 | 65 | 66 | 67 | 68 | 69 | Resource Files 70 | 71 | 72 | -------------------------------------------------------------------------------- /FastFindDLL/HiResTimer.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FastFrench/FastFind/693c5c1eed3ebe228d8e10eca0f4e822e5c26c00/FastFindDLL/HiResTimer.cpp -------------------------------------------------------------------------------- /FastFindDLL/HiResTimer.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FastFrench/FastFind/693c5c1eed3ebe228d8e10eca0f4e822e5c26c00/FastFindDLL/HiResTimer.h -------------------------------------------------------------------------------- /FastFindDLL/ImageProcessing.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FastFrench/FastFind/693c5c1eed3ebe228d8e10eca0f4e822e5c26c00/FastFindDLL/ImageProcessing.cpp -------------------------------------------------------------------------------- /FastFindDLL/New in 2_0.txt: -------------------------------------------------------------------------------- 1 | Function with an additionnal parameter (ShadeVariation) : 2 | KeepChanges 3 | LocalizeChanges 4 | HasChanged 5 | 6 | New functions : 7 | DrawSnapShotXY (same as DrawSnapShot, with specific top-left position for drawing). 8 | ComputeMeanValues (Gives mean Red, Green and Blue values) 9 | ApplyFilterOnSnapShot (apply a AND filter on each pixels in the SnapShot) 10 | 11 | 12 | Version is now 2.0 -------------------------------------------------------------------------------- /FastFindDLL/PixelProcessing.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FastFrench/FastFind/693c5c1eed3ebe228d8e10eca0f4e822e5c26c00/FastFindDLL/PixelProcessing.cpp -------------------------------------------------------------------------------- /FastFindDLL/PixelProcessing.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FastFrench/FastFind/693c5c1eed3ebe228d8e10eca0f4e822e5c26c00/FastFindDLL/PixelProcessing.h -------------------------------------------------------------------------------- /FastFindDLL/SnapShots.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FastFrench/FastFind/693c5c1eed3ebe228d8e10eca0f4e822e5c26c00/FastFindDLL/SnapShots.cpp -------------------------------------------------------------------------------- /FastFindDLL/Specific.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FastFrench/FastFind/693c5c1eed3ebe228d8e10eca0f4e822e5c26c00/FastFindDLL/Specific.cpp -------------------------------------------------------------------------------- /FastFindDLL/Tracer.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FastFrench/FastFind/693c5c1eed3ebe228d8e10eca0f4e822e5c26c00/FastFindDLL/Tracer.cpp -------------------------------------------------------------------------------- /FastFindDLL/Tracer.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FastFrench/FastFind/693c5c1eed3ebe228d8e10eca0f4e822e5c26c00/FastFindDLL/Tracer.h -------------------------------------------------------------------------------- /FastFindDLL/Win9x.asm: -------------------------------------------------------------------------------- 1 | .model flat 2 | 3 | .data 4 | __imp__EncodePointer@4 dd dummy 5 | __imp__DecodePointer@4 dd dummy 6 | __imp__HeapSetInformation@16 dd dummy2 7 | 8 | EXTERNDEF __imp__EncodePointer@4 : DWORD 9 | EXTERNDEF __imp__DecodePointer@4 : DWORD 10 | EXTERNDEF __imp__HeapSetInformation@16 : DWORD 11 | 12 | .code 13 | dummy proc 14 | mov eax, [esp+4] 15 | ret 4 16 | dummy endp 17 | 18 | dummy2 proc 19 | mov eax, 1 20 | ret 10h 21 | dummy2 endp 22 | 23 | end 24 | -------------------------------------------------------------------------------- /FastFindDLL/proto.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FastFrench/FastFind/693c5c1eed3ebe228d8e10eca0f4e822e5c26c00/FastFindDLL/proto.h -------------------------------------------------------------------------------- /FastFindDLL/resource.h: -------------------------------------------------------------------------------- 1 | //{{NO_DEPENDENCIES}} 2 | // Microsoft Visual C++ generated include file. 3 | // Used by FastFind.rc 4 | 5 | // Next default values for new objects 6 | // 7 | #ifdef APSTUDIO_INVOKED 8 | #ifndef APSTUDIO_READONLY_SYMBOLS 9 | #define _APS_NEXT_RESOURCE_VALUE 101 10 | #define _APS_NEXT_COMMAND_VALUE 40001 11 | #define _APS_NEXT_CONTROL_VALUE 1001 12 | #define _APS_NEXT_SYMED_VALUE 101 13 | #endif 14 | #endif 15 | -------------------------------------------------------------------------------- /FastFindDLL/stdafx.cpp: -------------------------------------------------------------------------------- 1 | // stdafx.cpp : source file that includes just the standard includes 2 | // FastFindDLL.pch will be the pre-compiled header 3 | // stdafx.obj will contain the pre-compiled type information 4 | 5 | #include "stdafx.h" 6 | 7 | // TODO: reference any additional headers you need in STDAFX.H 8 | // and not in this file 9 | -------------------------------------------------------------------------------- /FastFindDLL/stdafx.h: -------------------------------------------------------------------------------- 1 | // stdafx.h : include file for standard system include files, 2 | // or project specific include files that are used frequently, but 3 | // are changed infrequently 4 | // 5 | #ifndef _CRT_SECURE_NO_WARNINGS 6 | #define _CRT_SECURE_NO_WARNINGS 7 | #endif 8 | 9 | #pragma once 10 | 11 | // Modify the following defines if you have to target a platform prior to the ones specified below. 12 | // Refer to MSDN for the latest info on corresponding values for different platforms. 13 | #ifndef WINVER // Allow use of features specific to Windows XP or later. 14 | #define WINVER 0x0501 // Change this to the appropriate value to target other versions of Windows. 15 | #endif 16 | 17 | #ifndef _WIN32_WINNT // Allow use of features specific to Windows XP or later. 18 | #define _WIN32_WINNT 0x0501 // Change this to the appropriate value to target other versions of Windows. 19 | #endif 20 | 21 | #ifndef _WIN32_WINDOWS // Allow use of features specific to Windows 98 or later. 22 | #define _WIN32_WINDOWS 0x0410 // Change this to the appropriate value to target Windows Me or later. 23 | #endif 24 | 25 | #ifndef _WIN32_IE // Allow use of features specific to IE 6.0 or later. 26 | #define _WIN32_IE 0x0600 // Change this to the appropriate value to target other versions of IE. 27 | #endif 28 | 29 | //#define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers 30 | // Windows Header Files: 31 | #ifdef MFCAPP 32 | #pragma once 33 | 34 | #ifndef _SECURE_ATL 35 | #define _SECURE_ATL 1 36 | #endif 37 | 38 | #ifndef VC_EXTRALEAN 39 | #define VC_EXTRALEAN // Exclude rarely-used stuff from Windows headers 40 | #endif 41 | 42 | #include "targetver.h" 43 | 44 | #define _ATL_CSTRING_EXPLICIT_CONSTRUCTORS // some CString constructors will be explicit 45 | 46 | // turns off MFC's hiding of some common and often safely ignored warning messages 47 | #define _AFX_ALL_WARNINGS 48 | 49 | #include // MFC core and standard components 50 | #include // MFC extensions 51 | 52 | 53 | #include // MFC Automation classes 54 | 55 | 56 | 57 | #ifndef _AFX_NO_OLE_SUPPORT 58 | #include // MFC support for Internet Explorer 4 Common Controls 59 | #endif 60 | #ifndef _AFX_NO_AFXCMN_SUPPORT 61 | #include // MFC support for Windows Common Controls 62 | #endif // _AFX_NO_AFXCMN_SUPPORT 63 | 64 | #include // MFC support for ribbons and control bars 65 | 66 | #else 67 | 68 | //#include // MFC core and standard components 69 | //#include // MFC extensions 70 | 71 | #include 72 | 73 | #endif 74 | 75 | #include 76 | 77 | #pragma comment(lib, "gdiplus.lib") 78 | #include 79 | #include 80 | 81 | #include 82 | 83 | #include 84 | #include 85 | #include "HiResTimer.h" 86 | #include "PixelProcessing.h" 87 | #include "Tracer.h" 88 | 89 | #ifdef MFCBOT 90 | #include "ShowPixel.h" 91 | #include "config.h" 92 | #include "joueur.h" 93 | #endif 94 | // TODO: reference additional headers your program requires here 95 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | FastFind 2 | ======== 3 | 4 | 5 | Introduction 6 | ------------ 7 | FastFind is an advanced pixel search library for AutoIt scripts. It replaces and improves upon the functionality of the standard AutoIt pixel search functions, PixelGetColor and PixelSearch, allowing for more complex searches to be performed at much faster speeds. 8 | 9 | It consists of a .dll file that contains the pixel searching logic, and an AutoIt wrapper file, which acts as an interface between your AutoIt script and the DLL. To start using FastFind, simply copy the files into the same folder as your script, and insert #include "FastFind.au3" near the top of your script file. You will then be able to reference the FastFind functions listed in this help file. 10 | 11 | 12 | 13 | Required Files 14 | -------------- 15 | 16 | FastFind.au3 AutoIt wrapper (include) 17 | FastFind.dll Library for 32bit systems 18 | FastFind64.dll Library for 64bit systems 19 | 20 | 21 | 22 | How FastFind Works 23 | ------------------ 24 | One of the reasons FastFind is so much quicker than AutoIt's native pixel search functions is it's use of SnapShots. A SnapShot is basically a pixel map of a specified area on screen as it looked at the time the SnapShot was taken. This pixel information is stored in active memory, which means your script can access it much, much faster than the time it would take to make a new pixel request from the screen. Once a SnapShot is taken, search operations can be performed on that SnapShot until that memory is freed or overwritten. 25 | 26 | It is possible to retain up to 1024 different SnapShots simultaneously, but storing an 800x600 SnapShot will divert about 1.8MB of available RAM, so the size and quantity of SnapShots in use at any given time should be kept to a minimum. 27 | 28 | FastFind pixel search functions will automatically take a new SnapShot and store it in the default 'slot' when they are called, unless you specify otherwise in the function parameters. This will cause a previous SnapShot to be overwritten if it is also stored in the default 'slot'. Check the individual function help pages for more details and instructions on how to change this behavior. 29 | 30 | More advanced operations can be performed with the pixel search functions by maintaining a list of colors and exclusion zones. 31 | Initial tree 32 | -------------------------------------------------------------------------------- /ShowPixels/DlgProxy.h: -------------------------------------------------------------------------------- 1 | 2 | // DlgProxy.h: header file 3 | // 4 | 5 | #pragma once 6 | 7 | class CShowPixelsDlg; 8 | 9 | 10 | // CShowPixelsDlgAutoProxy command target 11 | 12 | class CShowPixelsDlgAutoProxy : public CCmdTarget 13 | { 14 | DECLARE_DYNCREATE(CShowPixelsDlgAutoProxy) 15 | 16 | CShowPixelsDlgAutoProxy(); // protected constructor used by dynamic creation 17 | 18 | // Attributes 19 | public: 20 | CShowPixelsDlg* m_pDialog; 21 | 22 | // Operations 23 | public: 24 | 25 | // Overrides 26 | public: 27 | virtual void OnFinalRelease(); 28 | 29 | // Implementation 30 | protected: 31 | virtual ~CShowPixelsDlgAutoProxy(); 32 | 33 | // Generated message map functions 34 | 35 | DECLARE_MESSAGE_MAP() 36 | DECLARE_OLECREATE(CShowPixelsDlgAutoProxy) 37 | 38 | // Generated OLE dispatch map functions 39 | 40 | DECLARE_DISPATCH_MAP() 41 | DECLARE_INTERFACE_MAP() 42 | }; 43 | 44 | -------------------------------------------------------------------------------- /ShowPixels/MouseHook.cpp: -------------------------------------------------------------------------------- 1 | #include "stdafx.h" 2 | #include "MouseHook.h" 3 | #include "ShowPixelsDlg.h" 4 | /* 5 | wParam : 6 | WM_MOUSEMOVE = 0x200, 7 | WM_LBUTTONDOWN = 0x201, 8 | WM_LBUTTONUP = 0x202, 9 | WM_LBUTTONDBLCLK = 0x203, 10 | WM_RBUTTONDOWN = 0x204, 11 | WM_RBUTTONUP = 0x205, 12 | WM_RBUTTONDBLCLK = 0x206, 13 | WM_MBUTTONDOWN = 0x207, 14 | WM_MBUTTONUP = 0x208, 15 | WM_MBUTTONDBLCLK = 0x209, 16 | WM_MOUSEWHEEL = 0x20A, 17 | WM_XBUTTONDOWN = 0x20B, 18 | WM_XBUTTONUP = 0x20C, 19 | WM_XBUTTONDBLCLK = 0x20D, 20 | WM_MOUSEHWHEEL = 0x20E 21 | 22 | 23 | */ 24 | HHOOK hMousHook = NULL; 25 | CShowPixelsDlg *pClass = NULL; 26 | void RegisterHook(CShowPixelsDlg *pParent) 27 | { 28 | if (hMousHook!=NULL) return; 29 | pClass = pParent; 30 | hMousHook = SetWindowsHookEx(WH_MOUSE_LL, LowLevelMouseProc, GetModuleHandle(NULL), 0); 31 | } 32 | 33 | void UnRegisterHook() 34 | { 35 | if (hMousHook!=NULL) 36 | UnhookWindowsHookEx(hMousHook); 37 | hMousHook = NULL; 38 | } 39 | //HOOKPROC 40 | //SetWindowsHookEx( 41 | LRESULT CALLBACK LowLevelMouseProc( 42 | __in int nCode, 43 | __in WPARAM wParam, 44 | __in LPARAM lParam 45 | ) 46 | { 47 | if (nCode == HC_ACTION) 48 | { 49 | UnRegisterHook(); 50 | 51 | //static bool hasBeenEntered = false; 52 | //if(hasBeenEntered){ //Prevent the mouse event being sent to other hook procs and the window procedure. 53 | //Might not be what you want. 54 | // return 1; 55 | //} 56 | //hasBeenEntered = true; 57 | //acquire lock, call windows API functions 58 | if (wParam==WM_LBUTTONDOWN || wParam==WM_RBUTTONDOWN) 59 | { 60 | MSLLHOOKSTRUCT *pMouseStruct = (MSLLHOOKSTRUCT *)lParam; 61 | //if (wParam==WM_LBUTTONDOWN) 62 | // TRACE(L"Left Mouse Down in (%d,%d)\n",pMouseStruct->pt.x, pMouseStruct->pt.y); 63 | //else 64 | // TRACE(L"Right Mouse Down in (%d,%d)\n",pMouseStruct->pt.x, pMouseStruct->pt.y); 65 | if (pClass) 66 | pClass->CShowPixelsDlg::OnBnClickedButtonXnEnd(&pMouseStruct->pt); 67 | 68 | } 69 | 70 | //hasBeenEntered = false; 71 | } 72 | return CallNextHookEx(NULL, nCode, wParam, lParam); 73 | } 74 | -------------------------------------------------------------------------------- /ShowPixels/MouseHook.h: -------------------------------------------------------------------------------- 1 | LRESULT CALLBACK LowLevelMouseProc( 2 | __in int nCode, 3 | __in WPARAM wParam, 4 | __in LPARAM lParam 5 | ); 6 | class CShowPixelsDlg; 7 | void RegisterHook(CShowPixelsDlg *pParent); 8 | void UnRegisterHook(); 9 | 10 | -------------------------------------------------------------------------------- /ShowPixels/ShowPixels.h: -------------------------------------------------------------------------------- 1 | 2 | // ShowPixels.h : main header file for the PROJECT_NAME application 3 | // 4 | 5 | #pragma once 6 | 7 | #ifndef __AFXWIN_H__ 8 | #error "include 'stdafx.h' before including this file for PCH" 9 | #endif 10 | 11 | #include "resource.h" // main symbols 12 | 13 | 14 | // CShowPixelsApp: 15 | // See ShowPixels.cpp for the implementation of this class 16 | // 17 | 18 | class CShowPixelsApp : public CWinApp 19 | { 20 | public: 21 | CShowPixelsApp(); 22 | 23 | // Overrides 24 | public: 25 | virtual BOOL InitInstance(); 26 | virtual int ExitInstance(); 27 | 28 | // Implementation 29 | 30 | DECLARE_MESSAGE_MAP() 31 | }; 32 | 33 | extern CShowPixelsApp theApp; -------------------------------------------------------------------------------- /ShowPixels/ShowPixels.idl: -------------------------------------------------------------------------------- 1 | // ShowPixels.idl : type library source for ShowPixels.exe 2 | 3 | // This file will be processed by the MIDL compiler to produce the 4 | // type library (ShowPixels.tlb). 5 | 6 | [ uuid(B929829B-BF0B-43B0-AD2A-D33144DD8946), version(1.0) ] 7 | library ShowPixels 8 | { 9 | importlib("stdole32.tlb"); 10 | importlib("stdole2.tlb"); 11 | 12 | // Primary dispatch interface for CShowPixelsDoc 13 | 14 | [ uuid(CE078F46-E647-4EA4-829E-47B59EFAB6F4) ] 15 | dispinterface IShowPixels 16 | { 17 | properties: 18 | 19 | methods: 20 | }; 21 | 22 | // Class information for CShowPixelsDoc 23 | 24 | [ uuid(319858CF-0C76-40DC-A9D6-8E1A1C542E7F) ] 25 | coclass ShowPixels 26 | { 27 | [default] dispinterface IShowPixels; 28 | }; 29 | }; 30 | -------------------------------------------------------------------------------- /ShowPixels/ShowPixels.rc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FastFrench/FastFind/693c5c1eed3ebe228d8e10eca0f4e822e5c26c00/ShowPixels/ShowPixels.rc -------------------------------------------------------------------------------- /ShowPixels/ShowPixels.reg: -------------------------------------------------------------------------------- 1 | REGEDIT 2 | ; This .REG file may be used by your SETUP program. 3 | ; If a SETUP program is not available, the entries below will be 4 | ; registered in your InitInstance automatically with a call to 5 | ; CWinApp::RegisterShellFileTypes and COleObjectFactory::UpdateRegistryAll. 6 | 7 | 8 | HKEY_CLASSES_ROOT\ShowPixels.Application = ShowPixels Application 9 | 10 | 11 | HKEY_CLASSES_ROOT\ShowPixels.Application\CLSID = {319858CF-0C76-40DC-A9D6-8E1A1C542E7F} 12 | 13 | HKEY_CLASSES_ROOT\CLSID\{319858CF-0C76-40DC-A9D6-8E1A1C542E7F} = ShowPixels Application 14 | HKEY_CLASSES_ROOT\CLSID\{319858CF-0C76-40DC-A9D6-8E1A1C542E7F}\ProgId = ShowPixels.Application 15 | 16 | 17 | HKEY_CLASSES_ROOT\CLSID\{319858CF-0C76-40DC-A9D6-8E1A1C542E7F}\LocalServer32 = ShowPixels.EXE 18 | -------------------------------------------------------------------------------- /ShowPixels/ShowPixels.vcxproj.filters: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | {4FC737F1-C7A5-4376-A066-2A32D752A2FF} 6 | cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx 7 | 8 | 9 | {93995380-89BD-4b04-88EB-625FBE52EBFB} 10 | h;hpp;hxx;hm;inl;inc;xsd 11 | 12 | 13 | {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} 14 | rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms 15 | 16 | 17 | 18 | 19 | 20 | 21 | Resource Files 22 | 23 | 24 | Resource Files 25 | 26 | 27 | 28 | 29 | Header Files 30 | 31 | 32 | Header Files 33 | 34 | 35 | Header Files 36 | 37 | 38 | Header Files 39 | 40 | 41 | Header Files 42 | 43 | 44 | 45 | 46 | Source Files 47 | 48 | 49 | Source Files 50 | 51 | 52 | Source Files 53 | 54 | 55 | Source Files 56 | 57 | 58 | Source Files 59 | 60 | 61 | Source Files 62 | 63 | 64 | Source Files 65 | 66 | 67 | Source Files 68 | 69 | 70 | Source Files 71 | 72 | 73 | 74 | 75 | Source Files 76 | 77 | 78 | 79 | 80 | Resource Files 81 | 82 | 83 | -------------------------------------------------------------------------------- /ShowPixels/ShowPixelsDlg.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FastFrench/FastFind/693c5c1eed3ebe228d8e10eca0f4e822e5c26c00/ShowPixels/ShowPixelsDlg.cpp -------------------------------------------------------------------------------- /ShowPixels/ShowPixelsDlg.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FastFrench/FastFind/693c5c1eed3ebe228d8e10eca0f4e822e5c26c00/ShowPixels/ShowPixelsDlg.h -------------------------------------------------------------------------------- /ShowPixels/TRACER.TXT: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FastFrench/FastFind/693c5c1eed3ebe228d8e10eca0f4e822e5c26c00/ShowPixels/TRACER.TXT -------------------------------------------------------------------------------- /ShowPixels/res/ShowPixels.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FastFrench/FastFind/693c5c1eed3ebe228d8e10eca0f4e822e5c26c00/ShowPixels/res/ShowPixels.ico -------------------------------------------------------------------------------- /ShowPixels/res/ShowPixels.rc2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FastFrench/FastFind/693c5c1eed3ebe228d8e10eca0f4e822e5c26c00/ShowPixels/res/ShowPixels.rc2 -------------------------------------------------------------------------------- /ShowPixels/resource.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FastFrench/FastFind/693c5c1eed3ebe228d8e10eca0f4e822e5c26c00/ShowPixels/resource.h -------------------------------------------------------------------------------- /ShowPixels/stdafx.cpp: -------------------------------------------------------------------------------- 1 | 2 | // stdafx.cpp : source file that includes just the standard includes 3 | // ShowPixels.pch will be the pre-compiled header 4 | // stdafx.obj will contain the pre-compiled type information 5 | #include "stdafx.h" 6 | 7 | 8 | -------------------------------------------------------------------------------- /ShowPixels/targetver.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | // Including SDKDDKVer.h defines the highest available Windows platform. 4 | 5 | // If you wish to build your application for a previous Windows platform, include WinSDKVer.h and 6 | // set the _WIN32_WINNT macro to the platform you wish to support before including SDKDDKVer.h. 7 | 8 | #include 9 | --------------------------------------------------------------------------------