Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 09/20/2014 in all areas

  1. Kernel Objects Information Sample output of Object Handles probing _ I've assembled a number of UDF's which use "undocumented" features of the O/S over the years. And this here would be the latest, and possibly the last (I hope?). The purpose of this UDF is to query kernel objects in the system. It's actually a pretty big UDF that ties together a lot of functionality, and hopefully makes it more accessible. With the UDF you can: Query a Kernel Object for 'hidden' information using its handle: Object Type and stats (_ObjectGetTypeInfoUD), Attributes and Access (_ObjectGetBasicInfoUD), Kernel Object Name (_ObjectGetNameUD), etc Query certain Kernel Event Objects for current states:Event, IoCompletion and Mutex ("Mutant") signal states (and more), Semaphore counts, Timer's remaining time, etc Get a list of opened File handles and filenames (there's already a few UDF's dedicated to that, though) Collect all the current handles held by the O/S and its processes, using specific filters, and get information on what the object is and its current state Kernel Objects Inspector script _ What's an Object you say? Whats a Kernel? Whats an NT? Gosh, maybe you shouldn't be here - go read Youtube. As Windows programmers, we make use of these Kernel Objects all the time... Object Types List Some of the most common System Objects: Token, Process, Thread, Event, Mutant (Mutex), Semaphore, Timer, File (includes NamedPipe and Mailslot), Key (Registry Key) Anytime you work with these objects, you are generating new objects at the kernel level. Luckily, the O/S allows above 16 million handles per process (see Pushing the Limits of Windows: Handles by Mark Russinovich), so this isn't a concern. However, if an individual process has in excess of 16K handles, there will be some trunacted values returned from the NT API call as it only returns 16-bit values for handles. See >this post where I try to describe this in better detail. However, this is no longer a problem with the latest update, which restores the upper bits of handles through a simple wraparound detection technique. There's more to say, but perhaps its best to show what functions are available. From the NTKernelObjectsInfo UDF Header: Querying time issues: Note that any call to query handles (_NTObjGetHandlesUD, _NTObjGetHandlesInfoEx) relies on a call to NtQuerySystemInformation, which gathers information on EVERY handle held by the system and it's processes. This can take a few seconds! Be patient. (Also, _NTObjBuildTypesIndexMap calls it indirectly) IMPORTANT: Be a little careful with looking for 'File' objects on Vista and Win7.. on XP there's already some safeguards which unfortunately prevent detecting certain objects. Newer versions of the O/S don't seem to have problems with threaded probing of File objects, but there may be some cases.. The Console output is still a bit noisy, but its good for analyzing where there's problems in reading handles, or analyzing "File" handles which can cause major problems, especially in the case of NamedPipes. Some example UDFs are included: NTSystemObjectsList: displays a list of System Object Types NTKernelObjectsCollectExample: A collection query at its simplest (see below for this example) NTKernelObjectsSelfExamine: creates a number of different Objects before listing everything NTKernelObjectsInspect: Inspect Kernel Objects with Filtering options from a GUI This GUI needs work! Notice that with the ArrayDisplay function, there is a 'Run User Func' option which will display any extra info retrieved for the object (see ExInfo column). NTKernelObjectsSpam: Creates a crapload of Kernel Objects. This is mostly useless, but its here to demonstrate how NTKernelObjectsInspect now is able to report correct handle values beyond 65,536 NTKernelObjectsCollectExample In this example I query only 2 processes for handles, and use exclusion criteria to remove "File" and "EtwRegistration" from the resultant list. ; =========================================================================================================== ; <NTKernelObjectsCollectExample.au3> ; ; Pretty barebones example of NTKernelObjectsInfo, showing the ease with which objects can be collected ; Uses multipe query types, multiple processes, and multiple Object Types with exclusion rules ; ; Author: Ascend4nt ; =========================================================================================================== #include "NTKernelObjectsInfo.au3" #include <Array.au3> ; -= FLAGS to Tweak Object Querying =- ; Force Win2000/XP Attribute skipping (must appear AFTER #include): ;$g_NTKO_bNamedPipeProtect = True ; Alternatively set own: ;$g_NTKO_sFileAttribSkipList = "0x0012019F|" ; Additionally, can force BadMask Skipping to OFF (not recommended): ;$g_NTKO_bSkipBadMasks = False ; Other queries available, although less often used: ; $NTOBJ_QUERYBY_PID (example: @AuotItPID), $NTOBJ_QUERYBY_OBJTYPE (ex: 28), and $NTOBJ_QUERYBY_HANDLE (actual object handle) $aRet = _NTObjGetHandlesInfoEx($NTOBJ_QUERYBY_PROCESSNAME, "firefox.exe|autoit3.exe", _ $NTOBJ_QUERYBY_OBJTYPENAME + $NTOBJ_QUERY_EXCLUDE, "File|EtwRegistration") ConsoleWrite("Errors: " & @error & ", @extended = " & @extended & @CRLF) _ArrayDisplay($aRet, "_NTObjGetHandlesInfoEx") Thanks for testing this out! Change History: NTKernelObjects.zip ~prev Downloads: 55
    5 points
  2. Hello Community, here's the latest update on... SMF - Search my Files Current Version: v17 (2024-Oct-20) SMF - Search my Files features A good looking GUI, Search files by location, Search files and / or folders, Poll [-]File names and Locations in Long and Short (8.3) format, [-]File Extensions, [-]File Times (modified, created, accessed), [-]File size, [-]File Attributes, [-]File Extended Attributes, Filter by [-]Extension, [-]Attribute, [-]File size, [-]File time, Free Name filtering by usage of RegEx, GUI designed to fit to 800x600 desktops with Tab-Design Nice looking Icon Minimize to Tray (also while searching) Export Result to CSV-file Export Result to XML-file Save & Load search runs Build Tree for local Computer on StartUp, add NetworkDrives optional A separate Report-GUI [-]Pre-Select output columns [-]SQLite driven [-]Dynamically generated statements, fully user adjustable [-]Dynamically sub filtering of results on the fly [-]Results can be executed directly, starting with the default associated program (ShellExcecute) [-]Select Results by drag, copy selected URIs to clipboard [-]Copy, move, delete or Erase results or subset of results md5 driven Duplicate file finder [-]High-Performance [-]added trimmed md5 short calculation (false md5, but sufficient for dup-search and a great speed improvement!) [-]Search 30.000 pics for dups in 1min 30secs Added many other ideas (some not activated / implemented yet) Limitations / Bugs / ToDos Lots and lots of unnecessary Global Variables Ugly code PLUS violations of any coding principal known to man... But hey, thats why I release the source, so that YOU help me to further improve SMF... SMF works fine at least on the 32bit XP SP3 and 64bit Win7/Win8/Win10 machines and I've tested it on. If you find bugs please let me know. Thanks to my sweet girlfriend for reviewing, giving new ideas and having so much patience with me :-*. Thanks to Jon, Larry, Jos, Valik, Jpm, Melba23 and Trancexx and for creating AutoIt and maintaining the forum. And finally thanks to all these great guys from the forum, providing excellent UDFs, snippets of code I use in SMF or help and feedback: Achilles, Ascend4nt, Ed_Maximized, Elgabionline, Erik Pilsits (Wraithdu), Eukalyptus, Gafrost, Holger Kotsch, Jarvis J. Stubblefield (JSThePatriot), Jos, Lahire Biette, Lazycat, Lod3n, Prog@ndy, Ptrex, Rasim, RazorM, RobSaunders, Sean Hart, Siao, Simucal, Smashly, SmOke_N, Teh_hahn, Valik, Ward, WideBoyDixon, Yann Perrin, Yashied & Zedna. Please let me know if you found some piece of code in the source for which I forgot to mention a credit. The executable and the source can be downloaded from my site: https://funk.eu Enjoy, let me know what you think of SMF and with Best Regards
    1 point
  3. trancexx

    TYPELIB Viewer

    So, what's this? It's a tool-script you would use when you want to know details about specific type libraries. There are some tools available on the net for the job. None written in AutoIt (take this conditionally and search for posts made by doudou). That made me wonder how hard it would be to write one from the scratch. Turned to be very demanding. TypeLib format is not officially or publicly available, at least not to my knowledge. Doing the research I found what's called The Unofficial TypeLib Data Format Specification. Sort of a must read when it comes to understanding the organization of typelib format. Script I'm posting here is written solely upon that document. I must also say that I had to do few modifications of some fields because of found inconsistencies in order to get correct readings. Also I'm doing few deliberate shortcuts mostly because of incomplete description within theircorp's document. What's covered is MSFT type of TypeLib. This obviously means there are more types. Actually one more, called SLTG TypeLib, but this one is very rare (probably less than 1/100 of all TypeLibs). GUI will certainly look familiar if you have run some of the scripts I posted recently. This time it's a wrapper for edit control. Main function is called _TLB_TypelibMSFT(). Everything else inside script serves it. What to learn from it? DllStruct manipulation maybe. But who wants that? Script: TLBViewer.au3 Try AutoItX3.dll or wscript.exe or winhttp.dll or shell32.dll or thousand more to see what this really is. Object(s) some more.
    1 point
  4. Hello All - This is my first post. By way of introduction I am a research engineer at the University of Texas - Center for Transportation Research. I work with Masters and PhD students conducting research and though they are whizzes at creating computer programs - I want to learn more about this myself. This will enable me to converse with them on more of an equal footing plus I want to learn something new. I am old school, first did key punch cards and ran programs on IBM mainframes in school. I've also done Basic and Fortran coding - a long time ago. I've also done some SQL coding for use in a Sybase database - probably 15 years ago.....which I still use by the way. I asked the UT Civil Engineering IT department for their recommendation of a programming tool I could use to create various types of programs (like the one I will describe below) and was told to download AutoIT. I've read through a number of the different Forum posts and viewed the pre-written code examples but haven't yet seen an example of the type of program I want to write first (or maybe don't recognize an example when I see it). I am currently conducting research for the Texas Department of Transportation and have access to several thousand scanned PDF files - I want to extract information contained in each file and import the data into an Excel spreadsheet to create a database. These are scanned files so the fields in each form are not directly accessible. Thus, though I can see a number I want to import such as a truck axle load 10,330 this is not actually 'number' per say that I can read using any type of Excel Macro. I've examined these files and though Acrobat has a feature to export files to Excel this is disabled in the files I've been provided. It would be helpful if someone could point me to an example script that I could study to understand the AutoIt functions and start working to create AutoIT code for the purpose described. I would appreciate any help you can give. Thanks very much, Mike
    1 point
  5. funkey, where did that come from. I mean, how do you know that? Is there some documentation by the dll dev available? If so, would you mind linking it. Otherwise, I see no reason to think your code is more correct than the other. Maybe the dll allocates memory space for the strings. That's also valid option.
    1 point
  6. Here a proof of concept version. ;coded by UEZ build 2014-09-10 -> proof of concept version! #include <GUIConstantsEx.au3> #include <WinAPIConstants.au3> #include <GDIPlus.au3> #include <Misc.au3> #include <WindowsConstants.au3> AutoItSetOption("MouseCoordMode", 2) _GDIPlus_Startup() Global Const $iW = 678, $iH = 368 Global Const $hGUI = GUICreate("Test", $iW + 100, $iH) GUISetBkColor(0xFFFFFF) Global Const $iPic_WorldMap = GUICtrlCreatePic("", 0, 0, $iW, $iH) GUICtrlSetState(-1, $GUI_DISABLE) Global Const $iPic_Pin = GUICtrlCreatePic("", $iW + 20, 20, 26, 66), $hPic_Pin = GUICtrlGetHandle($iPic_Pin) Global Const $iBtn_Start = GUICtrlCreateButton("Start", $iW + 20, $iH - 80, 60, 60) GUISetState() Global $hBitmap_World = _GDIPlus_BitmapCreateFromMemory(_World_Map(), True) _WinAPI_DeleteObject(GUICtrlSendMsg($iPic_WorldMap, 0x0172, $IMAGE_BITMAP, $hBitmap_World)) ; $STM_SETIMAGE = 0x0172 Global $hBitmap_Pin = _GDIPlus_BitmapCreateFromMemory(_Pin(), True) _WinAPI_DeleteObject(GUICtrlSendMsg($iPic_Pin, 0x0172, $IMAGE_BITMAP, $hBitmap_Pin)) Global $aPaths[7] = [_GDIPlus_PathCreate(), _GDIPlus_PathCreate(), _GDIPlus_PathCreate(), _GDIPlus_PathCreate(), _GDIPlus_PathCreate(), _GDIPlus_PathCreate(), _GDIPlus_PathCreate()] Convert(_Africa(), $aPaths[0]) Convert(_Antarctica(), $aPaths[1]) Convert(_Asia(), $aPaths[2]) Convert(_Australia(), $aPaths[3]) Convert(_Europe(), $aPaths[4]) Convert(_NorthAmerica(), $aPaths[5]) Convert(_SouthAmerica(), $aPaths[6]) Global $aContinents[7] = ["Africa", "Antarctica", "Asia", "Australia", "Europe", "North America", "South America"] Global $hDLL_user32 = DllOpen("user32.dll"), $aCursor, $aPos, $iContinent, $iX_old, $iY_old, $iX, $iY Do Switch GUIGetMsg() Case $GUI_EVENT_Close ExitLoop Case $iBtn_Start $iContinent = Random(0, 6, 1) MsgBox(0, "Start", "Find " & $aContinents[$iContinent] & " by moving the pin to the guessed continent.") Do $aCursor = GUIGetCursorInfo($hGUI) If $aCursor[2] And $aCursor[4] = $iPic_Pin Then While $aCursor[2] $aCursor = GUIGetCursorInfo($hGUI) $iX = MouseGetPos(0) - 15 $iY = MouseGetPos(1) - 13 If $iX <> $iX_old Or $iY <> $iY_old Then ControlMove($hGUI, "", $iPic_Pin, $iX, $iY) _WinAPI_RedrawWindow($hGUI, 0, 0, BitOR($RDW_INVALIDATE, $RDW_UPDATENOW, $RDW_ALLCHILDREN)) $iX_old = $iX $iY_old = $iY EndIf Sleep(50) WEnd ExitLoop EndIf Until False $aPos = ControlGetPos($hGUI, "", $iPic_Pin) If _GDIPlus_PathIsVisiblePoint($aPaths[$iContinent], $aPos[0] + 1, $aPos[1] + 63) Then MsgBox(0, "Great", "Well done.", 30, $hGUI) Else MsgBox(0, "Hmmm", "You should do some exercises in geography!", 30, $hGUI) EndIf ControlMove($hGUI, "", $iPic_Pin, $iW + 20, 20) _WinAPI_DeleteObject(GUICtrlSendMsg($iPic_Pin, 0x0172, $IMAGE_BITMAP, 0)) _WinAPI_RedrawWindow($hGUI, 0, 0, BitOR($RDW_INVALIDATE, $RDW_UPDATENOW, $RDW_ALLCHILDREN)) _WinAPI_DeleteObject(GUICtrlSendMsg($iPic_Pin, 0x0172, $IMAGE_BITMAP, $hBitmap_Pin)) EndSwitch Until False _GDIPlus_PathDispose($aPaths[0]) _GDIPlus_PathDispose($aPaths[1]) _GDIPlus_PathDispose($aPaths[2]) _GDIPlus_PathDispose($aPaths[3]) _GDIPlus_PathDispose($aPaths[4]) _GDIPlus_PathDispose($aPaths[5]) _GDIPlus_PathDispose($aPaths[6]) _WinAPI_DeleteObject($hBitmap_World) _WinAPI_DeleteObject($hBitmap_Pin) _GDIPlus_Shutdown() DllClose($hDLL_user32) GUIDelete() Exit Func Convert($aArrayCoord, ByRef $hPath) Local $aCoords[UBound($aArrayCoord)][2], $i, $aTmp $aCoords[0][0] = UBound($aArrayCoord) - 1 For $i = 1 To UBound($aArrayCoord) - 1 $aTmp = StringSplit($aArrayCoord[$i], ",", 2) _GDIPlus_PathAddRectangle($hPath, $aTmp[0], $aTmp[1], $aTmp[2] - $aTmp[0], $aTmp[3] - $aTmp[1]) Next EndFunc ;Code below was generated by Perforator v1.25 build 2014-09-09 beta Func _Africa() #Region pixel coordinates Local $sPixelRect $sPixelRect &= "678,368;260,107,310,166;281,97,300,107;285,96,287,97;295,96,300,97;300,97,301,98;266,101,281,107;268,98,269,101;279,98,281,101;269,99,270,101;276,100,279,101;278,99,279,100;300,99,301,102;267,100,268,101;270,100,273,101;263,104,266,107;264,103,266,104;300,104,302,107;300,103,301,104;261,105,263,107;302,105,306,107;305,166,359,203;310,111,344,166;319,106,325,111;320,105,323,106;260,106,261,107;306,106,309,107;325,108,331,111;325,107,327,108;246,127,260,154;255,115,260,127;259,108,260,115;318,108,319,109;310,109,312,111;331,109,336,111;338,109,343,111;312,110,315,111;318,110,319,111;336,110,338,111;344,110,346,114;343,110,344,111;346,113,349,116;346,111,348,113;257,114,259,115;258,113,259,114;345,114,346,115;344,130,354,166;344,118,347,130;344,115,345,118;251,118,255,127;253,116,255,118;345,116,346,118;347,116,349,117;252,117,253,118;249,121,251,127;250,120,251,121;347,123,350,130;347,120,348,123;348,121,349,123;247,125,249,127;248,123,249,125;350,125,351,130;351,127,352,130;245,128,246,154;243,132,245,133;244,129,245,132;352,129,353,130;354,143,360,166;354,132,355,143;244,133,245,135;355,138,357,143;355,137,356,138;357,139,358,143;232,141,234,144;358,141,359,143;231,142,232,144;234,142,235,143;244,143,245,153;232,144,233,145;243,145,244,148;359,166,371,178;360,149,366,166;360,146,362,149;360,145,361,146;362,147,364,149;364,148,365,149;243,150,244,152;366,155,369,166;366,152,368,155;366,151,367,152;380,154,384,160;382,153,384,154;251,154,260,163;248,154,251,157;247,154,248,156;369,160,381,166;375,155,380,160;369,156,375,160;384,156,385,158;250,157,251,161;249,157,250,158;381,160,383,162;381,162,382,164;255,163,260,167;253,163,255,165;252,163,253,164;254,165,255,166;260,166,277,169;277,166,281,167;289,166,305,170;287,166,289,167;371,166,377,173;377,166,379,169;379,166,380,167;258,167,260,169;256,167,258,168;277,167,279,168;259,169,267,170;273,169,274,170;377,169,378,171;262,170,263,171;290,170,292,171;298,170,305,186;295,170,298,171;297,171,298,172;295,172,297,173;" $sPixelRect &= "371,173,374,175;374,173,376,174;371,175,373,176;293,176,295,179;371,176,372,177;292,177,293,179;295,177,296,178;297,178,298,185;359,178,366,183;366,178,368,181;368,178,369,179;293,179,294,180;366,181,367,182;296,182,297,183;359,183,364,185;364,183,365,184;359,185,362,188;362,185,363,186;302,186,305,192;300,186,302,188;299,186,300,187;301,188,302,189;359,188,361,189;359,189,360,193;393,191,396,193;394,190,395,191;303,192,305,195;396,192,397,193;394,193,396,194;304,195,305,197;306,203,362,216;359,196,360,203;360,201,361,203;362,205,363,206;367,208,370,210;368,207,369,208;302,216,355,221;303,211,306,216;305,208,306,211;376,213,381,219;378,210,381,213;379,208,380,210;362,209,363,214;366,209,367,210;380,209,381,210;304,210,305,211;367,210,369,211;381,211,382,216;377,212,378,213;369,219,378,227;374,215,376,219;375,214,376,215;302,215,303,216;355,216,360,218;360,216,361,217;370,216,374,219;369,217,370,219;355,218,359,219;355,219,357,220;368,219,369,223;378,219,380,222;314,221,339,251;307,221,314,233;304,221,307,225;303,221,304,223;339,221,350,236;350,221,353,223;353,221,354,222;378,222,379,225;350,223,352,224;350,224,351,225;395,225,398,227;396,224,397,225;306,225,307,229;305,225,306,227;366,230,375,236;367,228,377,230;368,226,369,228;394,226,395,227;369,227,377,228;395,227,397,228;350,231,352,233;350,229,351,231;375,230,377,231;375,231,376,235;309,233,314,243;308,233,309,239;350,233,351,235;339,236,345,244;345,236,349,237;368,236,374,238;367,236,368,237;374,236,375,237;345,237,347,238;370,238,371,239;311,243,314,246;310,243,311,244;339,244,342,248;342,244,344,245;342,245,343,246;313,246,314,250;312,246,313,247;339,248,341,249;339,249,340,250;316,251,331,258;315,251,316,257;331,251,336,254;336,251,338,252;336,252,337,253;331,254,334,256;334,254,335,255;331,256,333,257;317,258,321,259;328,258,329,259" #EndRegion pixel coordinates Local $aPixelRect = StringSplit($sPixelRect, ";", 2) Return $aPixelRect EndFunc ;==>_Africa Func _Antarctica() #Region pixel coordinates Local $sPixelRect $sPixelRect &= "678,368;212,324,215,325;212,325,213,327;214,325,216,327;213,326,214,327;194,327,197,329;191,329,193,330;197,330,202,331;200,329,201,330;197,331,198,333;196,331,197,332;198,332,200,333;199,331,200,332;190,332,192,335;189,333,190,336;347,339,388,368;363,335,370,339;365,334,367,335;190,335,191,336;191,336,193,338;192,335,193,336;420,337,483,368;451,335,460,337;483,338,498,359;483,335,490,338;479,336,483,337;482,335,483,336;361,337,363,339;362,336,363,337;370,336,371,339;422,336,445,337;450,336,451,337;468,336,470,337;471,336,478,337;490,336,495,338;184,337,186,340;190,337,191,339;371,337,377,339;495,337,496,338;183,338,184,340;186,338,187,340;359,338,361,339;377,338,384,339;401,340,420,368;409,338,420,340;498,341,510,354;498,338,502,341;389,339,390,342;388,339,389,340;406,339,409,340;502,339,503,341;154,349,203,368;190,341,197,347;189,340,195,341;321,343,347,368;335,340,337,343;345,340,347,343;503,340,506,341;183,341,187,345;189,341,190,346;187,342,189,343;188,341,189,342;329,342,335,343;334,341,335,342;337,341,339,343;342,342,345,343;344,341,345,342;388,341,389,342;388,344,401,368;397,341,401,344;510,342,518,351;510,341,516,342;182,342,183,345;197,343,200,349;197,342,199,343;339,342,341,343;389,343,397,344;396,342,397,343;187,343,188,345;270,346,321,368;282,343,284,346;518,344,522,350;518,343,519,344;188,344,189,345;200,345,202,349;200,344,201,345;275,344,278,346;281,344,282,346;284,344,285,346;291,344,318,346;318,345,321,346;320,344,321,345;522,345,526,349;522,344,524,345;180,346,183,349;180,345,182,346;278,345,279,346;288,345,291,346;202,346,203,349;526,346,527,348;146,347,150,350;178,347,180,349;183,347,184,349;192,347,197,349;191,347,192,348;258,350,270,368;264,348,270,350;269,347,270,348;144,348,146,350;150,348,151,350;156,348,178,349;184,348,185,349;203,349,205,353;203,348,204,349;106,354,154,368;117,349,121,354;263,349,264,350;121,350,128,354;145,350,149,351;151,351,154,354;152,350,154,351;518,350,521,351;134,351,136,354;251,353,258,368;256,351,258,353;" $sPixelRect &= "510,351,513,352;102,352,112,354;128,352,130,354;136,352,151,354;253,352,256,353;510,352,511,353;92,354,106,357;93,353,96,354;99,353,102,354;112,353,115,354;130,353,134,354;203,353,204,355;90,354,92,356;245,356,251,368;248,355,251,356;250,354,251,355;498,354,506,355;89,355,90,356;498,355,502,356;203,356,217,368;498,356,500,357;501,356,505,359;505,356,506,358;95,357,106,362;217,358,224,368;217,357,221,358;238,358,245,368;240,357,245,358;498,357,499,358;89,360,95,361;91,358,95,360;88,358,90,360;90,358,91,359;83,359,86,361;82,359,83,360;224,359,238,368;483,359,491,361;494,359,498,360;84,361,87,362;86,360,87,361;91,361,95,362;483,361,486,362;102,362,106,366;483,362,484,363;100,363,102,365;101,365,102,366;483,365,496,368;496,365,497,367;104,366,106,367" #EndRegion pixel coordinates Local $aPixelRect = StringSplit($sPixelRect, ";", 2) Return $aPixelRect EndFunc ;==>_Antarctica Func _Asia() #Region pixel coordinates Local $sPixelRect $sPixelRect &= "678,368;404,8,411,11;406,7,408,8;403,9,404,10;411,9,416,12;416,10,417,12;419,10,421,13;409,11,411,12;417,12,419,14;418,11,419,12;384,33,507,119;412,15,440,33;423,11,425,15;421,11,423,13;425,12,428,15;419,13,420,14;428,13,430,15;421,14,423,15;430,14,441,15;440,20,458,33;440,16,443,18;440,15,442,16;488,15,491,19;491,16,496,19;492,15,494,16;370,16,375,19;375,16,376,18;402,19,412,33;407,16,412,19;487,16,488,18;496,16,501,18;363,17,370,20;376,17,377,18;498,18,502,19;501,17,502,18;359,20,364,24;361,18,363,20;441,18,442,20;440,18,441,19;360,19,361,20;442,19,447,20;452,19,454,20;364,20,367,21;397,22,402,33;400,20,402,22;458,21,472,33;459,20,470,21;364,21,365,22;383,22,390,27;384,21,389,22;399,21,400,22;487,22,502,33;488,21,497,22;357,23,359,26;358,22,359,23;472,24,477,33;472,22,473,24;382,23,383,25;387,27,395,33;390,24,392,27;390,23,391,24;393,23,397,27;392,23,393,25;473,23,475,24;477,25,487,33;480,23,482,25;502,24,513,33;502,23,505,24;359,24,363,27;478,24,480,25;482,24,487,25;507,33,540,48;513,25,522,33;518,24,520,25;358,30,369,133;361,27,365,28;363,25,364,27;329,28,336,37;328,27,334,28;331,26,332,27;364,26,365,27;392,26,393,27;522,27,539,33;522,26,525,27;530,26,535,27;540,27,554,42;539,26,548,27;336,28,341,33;335,27,338,28;369,29,384,75;375,27,381,29;385,27,387,28;396,27,397,29;395,27,396,28;327,28,329,30;363,28,366,30;371,28,375,29;381,28,385,29;539,28,540,33;554,30,567,45;554,28,558,30;341,29,344,34;337,38,358,63;351,30,355,38;351,29,354,30;360,29,363,30;366,29,369,30;384,29,387,33;558,29,561,30;344,30,347,33;350,30,351,31;395,30,396,31;355,32,358,38;356,31,358,32;567,32,571,35;567,31,569,32;328,32,329,34;346,34,351,38;347,32,348,34;396,32,397,33;572,32,576,36;339,33,341,34;344,33,346,34;348,33,351,34;571,33,572,36;576,34,579,38;576,33,578,34;332,37,337,56;336,34,337,37;337,35,338,38;341,35,343,37;567,35,568,37;570,35,571,36;579,35,580,37;343,36,346,38;573,36,576,37;580,36,581,37;330,37,332,40;338,37,340,38;342,37,343,38;567,39,572,42;567,38,569,39;572,40,574,42;" $sPixelRect &= "542,42,548,44;540,42,542,43;550,46,556,56;551,42,554,46;550,42,551,44;567,42,569,43;571,42,572,43;329,44,332,54;330,43,332,44;548,43,549,44;327,45,329,46;328,44,329,45;545,44,548,45;556,45,559,47;554,45,556,46;559,45,561,46;564,45,565,47;562,45,564,46;565,45,566,46;328,47,329,51;507,59,529,85;507,48,519,56;519,48,523,49;526,48,530,49;535,48,540,49;519,49,521,50;556,51,560,62;556,49,557,51;519,50,520,54;548,52,550,53;549,50,550,52;557,50,558,51;560,56,563,65;560,53,562,56;560,52,561,53;549,53,550,54;330,54,332,55;336,56,337,59;335,56,336,57;507,56,518,59;552,56,556,58;551,56,552,57;518,57,520,59;563,57,564,58;520,58,523,59;524,58,528,59;554,58,556,60;553,58,554,59;529,66,535,82;529,61,531,66;529,60,530,61;531,62,536,64;532,60,534,62;531,60,532,61;555,60,556,61;534,61,535,62;559,62,560,65;558,62,559,63;345,63,358,67;342,63,345,65;563,63,564,65;531,64,533,66;535,64,538,66;534,64,535,65;344,65,345,66;533,65,534,66;537,66,541,68;538,65,539,66;560,65,562,66;536,66,537,67;351,73,358,81;353,67,358,73;349,67,353,68;535,67,536,80;540,68,542,74;541,67,542,68;352,68,353,69;539,68,540,72;538,68,539,70;542,68,543,71;536,70,537,72;352,72,353,73;541,74,545,75;542,72,543,74;543,73,544,74;536,74,537,77;350,75,351,80;369,75,372,77;372,75,373,76;377,77,384,84;379,75,384,77;377,75,379,76;544,75,545,80;543,75,544,77;542,75,543,76;545,75,546,76;369,77,371,78;349,78,350,79;375,78,377,83;545,80,551,85;545,78,547,80;547,79,548,80;374,80,375,81;355,81,358,83;353,81,355,82;369,95,376,150;369,85,373,95;369,81,370,85;551,81,553,84;529,82,533,84;533,82,534,83;544,82,545,85;553,82,554,84;357,83,358,84;370,83,371,85;376,83,377,84;371,84,372,85;379,84,384,86;378,84,379,85;550,85,552,86;551,84,552,85;334,87,353,98;341,85,348,87;513,85,526,91;507,85,513,89;526,85,528,86;546,85,548,87;545,85,546,86;334,86,335,87;337,86,338,87;339,86,341,87;348,86,350,87;349,98,358,118;353,88,358,98;355,87,358,88;357,86,358,87;373,88,375,93;373,86,374,88;382,88,384,92;383,86,384,88;382,86,383,87;526,87,528,90;" $sPixelRect &= "526,86,527,87;547,87,550,90;330,89,334,92;330,88,333,89;381,88,382,91;380,88,381,89;549,90,553,102;550,88,552,90;507,89,510,91;510,89,511,90;329,90,330,91;548,90,549,92;507,91,509,92;513,91,517,92;521,91,526,95;519,91,521,92;331,92,334,95;383,92,384,95;514,92,515,93;525,95,532,97;526,92,527,95;553,92,554,93;373,93,374,95;507,102,516,129;507,94,510,102;507,93,508,94;520,93,521,94;527,93,529,95;374,94,375,95;510,95,517,98;513,94,515,95;529,94,530,95;332,95,334,97;376,97,384,112;376,95,377,97;517,95,518,97;523,95,525,96;546,97,549,102;547,96,549,97;548,95,549,96;553,97,555,99;553,95,554,97;377,96,379,97;383,96,384,97;527,97,532,102;526,97,527,100;532,97,533,101;336,98,338,99;343,98,346,102;342,98,343,99;510,98,514,102;514,98,516,99;540,99,546,103;544,98,546,99;346,99,347,102;533,99,534,101;553,99,554,101;342,100,343,102;537,101,540,104;539,100,540,101;343,102,345,103;528,102,530,103;536,102,537,107;546,102,548,105;347,108,349,113;348,103,349,108;541,103,544,106;545,103,546,104;516,108,521,124;516,104,517,108;537,105,540,108;537,104,539,105;540,104,541,105;535,105,536,106;517,106,518,108;541,106,543,107;518,107,519,108;538,108,541,109;540,107,541,108;346,109,347,111;538,109,540,110;521,110,522,111;376,112,377,113;380,112,384,115;378,112,380,113;521,112,523,117;348,113,349,117;376,120,384,147;376,115,377,120;381,115,384,117;377,117,378,120;383,117,384,119;382,117,383,118;521,117,522,120;352,118,358,123;350,118,352,120;378,118,379,120;379,119,382,120;427,119,453,138;397,119,411,124;385,119,397,120;417,119,427,128;412,119,417,124;411,119,412,123;472,119,495,143;453,119,472,130;495,119,507,132;351,120,352,121;387,120,390,121;394,120,397,122;392,120,394,121;384,121,385,124;384,126,397,137;390,122,393,126;391,121,393,122;393,122,394,123;395,122,397,123;355,123,358,127;354,123,355,125;353,123,354,124;388,124,390,126;389,123,390,124;522,125,527,127;524,123,526,125;393,124,394,126;415,124,417,127;414,124,415,125;516,124,519,126;519,124,520,125;523,124,524,125;384,125,388,126;" $sPixelRect &= "394,125,396,126;516,126,518,128;357,127,358,130;356,127,357,128;397,128,399,133;397,127,398,128;523,127,526,130;522,127,523,129;399,129,401,131;399,128,400,129;420,128,426,133;419,128,420,132;418,128,419,129;426,128,427,132;516,128,517,129;507,129,514,130;453,130,458,132;458,130,462,131;466,130,472,134;465,130,466,132;507,130,509,131;524,130,525,131;399,131,400,132;453,132,457,135;495,132,497,134;497,132,498,133;501,135,505,138;502,132,504,134;504,132,505,133;363,133,369,140;360,133,363,136;359,133,360,135;397,133,398,135;422,133,425,134;426,134,427,137;469,134,472,136;467,134,469,135;495,134,496,136;503,134,504,135;453,135,455,136;505,135,506,136;362,136,363,138;361,136,362,137;471,136,472,140;470,136,471,138;500,136,501,138;384,137,393,141;393,137,395,139;395,137,396,138;490,143,502,154;495,138,497,143;495,137,496,138;434,138,444,156;429,138,434,145;427,138,429,141;444,138,449,142;449,138,451,140;451,138,452,139;502,138,503,140;501,138,502,139;503,138,504,139;525,140,530,147;526,138,529,140;393,139,394,140;525,139,526,140;366,140,369,148;365,140,366,142;364,140,365,141;497,140,498,143;384,141,389,143;389,141,392,142;428,141,429,143;498,141,500,143;444,142,447,144;447,142,448,143;500,142,501,143;530,142,531,143;384,143,386,145;386,143,387,144;473,143,476,145;472,143,473,144;476,143,477,144;481,143,490,151;479,143,481,148;478,143,479,144;524,143,525,145;444,144,445,145;384,145,385,146;431,145,434,149;430,145,431,147;502,147,504,156;502,145,503,147;376,147,380,149;380,147,382,148;527,150,530,153;527,147,531,149;526,147,527,148;368,148,369,152;367,148,368,150;480,148,481,150;531,148,534,151;376,149,377,150;432,149,434,152;444,149,445,151;528,149,531,150;534,149,535,153;369,150,373,152;373,150,375,151;530,150,531,151;481,155,484,162;482,151,485,155;481,151,482,152;488,151,490,153;487,151,488,152;504,151,505,154;433,152,434,154;532,152,534,154;534,155,540,156;535,152,538,154;529,155,533,156;530,153,532,155;529,153,530,154;536,154,539,155;538,153,539,154;495,154,499,160;" $sPixelRect &= "492,154,495,157;491,154,492,156;499,154,502,157;532,154,533,155;484,155,485,157;525,155,527,158;436,156,441,161;435,156,436,159;441,156,443,159;443,156,444,157;523,157,525,160;524,156,525,157;530,156,533,157;535,156,537,158;493,157,494,158;499,157,500,158;532,157,534,160;536,160,541,165;538,157,539,160;443,160,447,164;444,158,445,160;484,160,486,164;484,158,485,160;521,159,523,162;522,158,523,159;525,158,526,159;531,158,532,159;534,158,535,159;536,158,537,159;539,158,540,160;441,159,442,160;445,159,446,160;537,159,538,160;495,160,497,161;523,160,524,161;532,161,536,164;532,160,533,161;437,161,440,162;444,164,449,165;447,161,448,164;556,162,559,165;556,161,558,162;482,162,484,163;486,164,489,170;486,162,487,164;555,162,556,164;531,163,532,164;541,163,542,166;485,164,486,166;535,164,536,166;444,165,448,167;487,170,494,172;489,166,491,170;489,165,490,166;514,169,523,183;519,166,524,169;520,165,523,166;536,165,539,168;540,165,541,166;539,166,540,168;427,168,431,170;428,167,430,168;476,168,481,170;476,167,478,168;491,167,492,170;515,168,519,169;518,167,519,168;523,169,525,171;524,167,525,169;492,168,493,170;525,168,526,169;480,170,484,174;481,169,482,170;427,170,430,171;478,170,480,172;477,170,478,171;482,174,487,177;484,171,485,174;507,176,514,188;511,173,514,176;513,171,514,173;523,171,524,172;479,172,480,173;490,172,494,176;488,172,490,174;485,173,486,174;492,176,496,178;494,173,495,176;481,174,482,175;489,174,490,175;509,174,511,176;523,176,525,179;523,174,524,176;543,175,546,181;544,174,546,175;486,177,491,183;487,175,488,177;495,175,496,176;546,175,547,176;488,176,490,177;491,176,492,177;505,176,507,184;537,176,539,179;483,177,486,179;525,177,526,178;529,177,534,180;534,178,537,181;535,177,537,178;491,178,495,179;504,178,505,180;526,182,532,188;527,179,529,182;528,178,529,179;485,179,486,181;484,179,485,180;489,183,496,189;491,179,493,183;523,179,524,180;537,179,538,180;542,179,543,180;493,180,494,181;526,181,527,182;544,181,545,182;493,182,495,183;532,182,535,184;" $sPixelRect &= "488,183,489,187;487,183,488,185;515,183,520,189;514,183,515,188;520,183,522,185;506,184,507,186;532,184,533,185;492,189,499,192;496,186,498,189;496,185,497,186;520,185,521,187;525,186,526,190;531,188,534,191;532,186,533,188;544,186,547,189;498,187,499,189;524,187,525,188;547,187,549,189;549,187,550,188;512,188,514,189;526,189,529,193;526,188,528,189;530,188,531,190;491,189,492,191;490,189,491,190;517,189,518,190;525,191,526,193;532,191,533,192;494,192,497,194;493,192,494,193;497,192,498,193;526,193,528,194;498,194,504,198;497,195,498,197;504,195,505,198;506,195,512,199;505,196,506,199;512,197,516,200;512,196,513,197;501,198,504,199;516,198,518,200;527,199,533,201;528,198,530,199;508,199,512,200;520,199,525,201;537,199,542,201;515,200,517,201;519,200,520,201;535,200,537,203;542,200,543,201;521,201,523,202;525,201,527,203;528,201,530,202;534,201,535,204;537,201,540,202;527,202,529,204;537,202,538,203;526,203,527,204;533,203,534,204;535,203,536,204" #EndRegion pixel coordinates Local $aPixelRect = StringSplit($sPixelRect, ";", 2) Return $aPixelRect EndFunc ;==>_Asia Func _Australia() #Region pixel coordinates Local $sPixelRect $sPixelRect &= "678,368;605,162,607,165;634,163,637,165;634,162,636,163;604,163,605,165;607,163,608,164;633,163,634,164;605,165,606,166;635,165,636,166;639,177,642,179;639,176,641,177;638,177,639,178;624,180,627,182;625,179,626,180;640,179,641,180;554,183,557,189;553,181,555,183;627,181,628,182;551,182,553,184;555,182,556,183;625,182,627,183;552,184,554,185;553,183,554,184;561,186,573,192;563,184,568,186;565,183,566,184;557,184,558,190;562,185,563,186;568,185,570,186;558,187,561,190;560,186,561,187;591,186,593,188;553,187,554,188;566,192,583,198;573,188,577,192;573,187,575,188;593,187,594,189;594,189,596,191;594,188,595,189;555,189,557,190;577,189,579,192;559,190,561,191;579,190,580,192;596,190,597,191;580,191,582,192;593,191,595,193;563,192,566,193;591,192,593,194;565,193,566,195;581,198,585,200;583,194,585,196;583,193,584,194;588,193,591,195;593,193,594,194;598,193,599,196;597,193,598,194;587,194,588,195;591,194,592,195;599,194,600,197;589,195,591,196;583,196,584,198;600,196,603,197;564,198,577,199;565,197,566,198;584,197,585,198;602,199,604,200;603,197,604,199;602,197,603,198;579,198,581,199;606,198,607,200;605,198,606,199;566,199,567,200;570,199,576,201;569,199,570,200;583,200,587,203;585,199,586,200;607,199,608,203;582,200,583,201;603,200,605,201;609,200,610,203;572,201,575,202;586,203,590,205;587,201,588,203;610,201,611,205;648,202,651,204;648,201,650,202;588,202,589,203;608,202,609,204;647,202,648,203;584,203,586,204;589,205,592,206;590,204,591,205;611,204,612,206;649,204,650,205;529,220,578,253;549,208,558,220;552,207,558,208;554,206,555,207;570,211,576,220;571,207,575,211;572,206,574,207;558,208,560,211;545,212,549,220;547,209,549,212;570,210,571,211;664,211,667,213;665,210,666,211;536,213,543,220;538,212,542,213;540,211,541,212;546,211,547,212;558,211,559,212;576,213,578,220;576,212,577,213;663,212,664,213;664,213,666,214;543,214,545,220;558,216,560,220;558,214,559,216;621,214,622,217;623,214,625,215;534,216,536,220;535,215,536,216;578,215,579,221;622,216,624,220;" $sPixelRect &= "622,215,623,216;568,218,570,220;569,216,570,218;624,216,625,218;532,217,534,220;560,217,562,220;645,217,648,219;529,219,532,220;530,218,531,219;562,218,563,220;644,218,645,219;563,219,565,220;567,219,568,220;642,219,644,222;645,219,647,220;641,220,642,221;644,220,645,222;516,227,529,255;527,223,529,227;528,221,529,223;578,232,585,251;578,225,581,232;578,223,579,225;612,223,613,226;521,225,527,227;526,224,527,225;579,224,580,225;613,225,615,228;613,224,614,225;655,225,657,228;519,226,521,227;581,228,583,232;581,226,582,228;654,226,655,228;657,226,658,227;614,228,617,229;615,227,616,228;509,232,516,258;512,229,516,232;514,228,516,229;655,228,656,229;616,229,618,231;615,229,616,230;510,230,512,232;583,230,584,232;617,231,619,232;618,230,619,231;508,234,509,236;585,236,588,246;585,234,586,236;586,235,587,236;588,238,589,239;508,239,509,250;585,246,587,248;585,248,586,249;578,251,582,255;582,251,584,252;582,252,583,253;507,255,509,259;508,253,509,255;529,253,533,254;552,253,570,267;545,253,550,257;543,253,545,255;542,253,543,254;550,257,552,260;550,253,552,256;570,253,577,259;577,253,578,258;516,255,524,257;524,255,526,256;544,255,545,256;578,255,581,256;506,256,507,259;551,256,552,257;578,256,579,257;516,257,519,258;545,257,549,258;509,258,512,260;512,258,514,259;545,258,547,259;549,258,550,261;508,259,509,260;570,259,575,261;575,259,576,260;619,260,621,270;619,259,620,260;551,260,552,262;618,260,619,262;570,261,573,263;573,261,574,262;570,263,572,264;551,264,552,266;570,264,571,266;621,266,624,269;621,265,622,266;616,267,619,272;618,266,619,267;624,266,625,268;554,267,559,268;561,267,563,269;560,267,561,268;563,267,564,268;615,268,616,274;614,269,615,271;621,269,622,270;619,270,620,271;555,273,559,279;556,272,557,273;608,273,611,276;609,272,610,273;613,273,615,275;614,272,615,273;616,272,618,273;559,273,562,276;616,273,617,274;562,274,563,275;605,275,608,278;606,274,608,275;611,274,612,275;559,276,561,277;602,277,605,280;604,276,605,277;608,276,610,277;559,277,560,278;" $sPixelRect &= "597,279,602,281;599,278,602,279;605,278,606,280;556,279,557,280;593,281,599,284;595,280,597,281;602,280,604,281;599,281,601,282;590,283,593,286;591,282,593,283;599,282,600,283;593,284,596,286;596,284,598,285" #EndRegion pixel coordinates Local $aPixelRect = StringSplit($sPixelRect, ";", 2) Return $aPixelRect EndFunc ;==>_Australia Func _Europe() #Region pixel coordinates Local $sPixelRect $sPixelRect &= "678,368;305,11,313,14;310,10,311,11;298,12,305,13;299,11,300,12;302,11,303,12;313,11,317,13;317,11,318,12;301,13,305,15;299,13,301,14;305,14,308,16;308,14,309,15;312,14,315,16;311,14,312,15;302,15,305,16;315,15,316,16;304,16,307,17;316,25,328,34;319,24,322,25;325,24,326,25;328,25,330,27;310,27,316,38;314,26,316,27;330,26,331,27;299,38,311,49;306,31,310,38;308,28,310,31;307,29,308,31;321,34,330,46;328,30,329,34;303,34,306,38;304,33,306,34;305,32,306,33;251,34,260,37;257,33,259,34;316,34,318,36;318,34,319,35;320,34,321,35;247,36,251,38;248,35,251,36;260,35,261,37;301,36,303,38;302,35,303,36;316,36,317,37;318,40,321,45;319,38,321,40;320,36,321,38;251,37,258,39;258,37,259,38;300,37,301,38;247,38,248,39;249,38,251,39;311,38,314,40;314,38,315,39;330,40,332,43;330,38,331,40;251,39,254,40;294,40,299,49;297,39,299,40;311,40,312,41;332,40,333,42;291,42,294,48;292,41,294,42;317,41,318,44;330,43,331,44;311,46,314,48;311,45,313,46;319,45,321,46;319,48,329,50;322,46,324,48;321,46,322,47;324,47,329,48;293,48,294,50;292,48,293,49;311,48,313,49;294,49,298,50;302,49,309,54;301,49,302,51;309,49,311,51;273,51,277,57;274,50,276,51;294,50,296,51;308,58,334,81;318,52,329,58;318,51,321,52;319,50,320,51;323,50,329,52;291,60,308,78;296,53,299,60;297,52,300,53;298,51,299,52;309,51,310,53;272,52,273,55;277,52,278,53;299,53,300,54;317,53,318,54;329,54,332,58;329,53,330,54;295,54,296,55;301,54,307,56;307,54,308,55;274,60,281,66;276,57,280,60;277,55,278,57;299,55,301,57;332,55,335,58;265,57,271,62;267,56,271,57;278,56,279,57;301,56,303,57;315,57,318,58;317,56,318,57;334,62,341,75;334,58,337,62;335,56,336,58;271,57,272,58;275,57,276,58;299,57,300,60;310,57,314,58;264,58,265,65;280,58,281,60;300,58,306,60;293,59,296,60;306,59,308,60;337,60,338,61;273,61,274,64;281,61,284,63;283,66,291,83;289,62,291,66;290,61,291,62;263,62,264,64;265,62,269,64;269,62,270,63;272,63,273,64;281,63,283,64;286,64,289,66;288,63,289,64;341,66,347,76;341,63,342,66;265,64,266,65;281,64,282,66;342,64,343,66;271,66,278,67;" $sPixelRect &= "273,65,274,66;282,65,283,66;284,65,286,66;343,65,345,66;347,67,351,74;347,66,348,67;272,67,273,68;277,69,283,88;281,68,283,69;351,68,353,73;273,70,277,73;353,70,354,72;272,71,273,72;275,73,277,74;351,73,352,74;347,74,349,75;334,75,337,77;337,75,339,76;340,75,341,76;342,76,345,79;341,76,342,78;334,77,336,78;345,77,346,79;291,78,303,80;306,78,308,80;305,78,306,79;334,78,335,80;346,78,347,79;343,79,345,80;291,80,295,83;295,80,296,82;300,80,304,84;299,80,300,83;298,80,299,81;263,82,277,96;264,81,270,82;276,81,277,82;302,84,308,87;304,81,305,84;317,81,326,90;312,81,317,84;311,81,312,83;310,81,311,82;326,81,333,88;333,81,334,83;305,82,306,84;262,83,263,84;283,83,286,86;296,87,298,92;296,84,299,86;297,83,298,84;306,83,307,84;301,84,302,85;316,84,317,89;315,84,316,85;307,87,313,89;308,85,309,87;283,86,285,87;297,86,298,87;309,86,311,87;333,86,334,88;261,91,263,93;262,87,263,91;303,87,304,88;305,87,307,88;334,87,335,88;277,88,280,93;280,88,282,89;295,88,296,91;298,88,299,91;313,88,315,90;326,88,327,89;329,88,333,89;280,89,281,90;284,90,288,91;285,89,286,90;287,89,288,90;310,89,312,93;309,89,310,91;312,89,313,90;330,89,331,90;319,90,323,93;318,90,319,92;317,90,318,91;329,90,330,91;282,91,286,92;312,91,313,92;321,93,325,97;323,91,324,93;282,92,283,93;309,92,310,94;324,92,325,93;262,93,263,96;277,93,279,94;304,94,309,96;306,93,307,94;310,93,311,94;277,94,278,95;320,94,321,95;263,96,264,97;267,96,274,98;265,96,267,97;274,96,276,97;306,96,309,97;322,97,324,98;268,98,269,99;306,98,308,101;305,99,306,101;308,99,309,100;326,99,329,102;325,99,326,101;329,100,331,102;306,101,307,102" #EndRegion pixel coordinates Local $aPixelRect = StringSplit($sPixelRect, ";", 2) Return $aPixelRect EndFunc ;==>_Europe Func _NorthAmerica() #Region pixel coordinates Local $sPixelRect $sPixelRect &= "678,368;203,3,205,5;235,4,256,18;248,3,251,4;189,4,199,8;199,4,203,6;256,5,259,11;256,4,258,5;179,5,189,7;203,5,204,6;207,6,226,35;211,5,215,6;226,6,235,30;229,5,235,6;259,6,266,9;259,5,260,6;164,7,169,10;167,6,168,7;174,8,180,14;177,6,179,8;175,6,177,7;199,6,201,7;266,6,268,8;169,7,170,9;175,7,176,8;179,7,184,8;185,7,189,10;203,8,207,18;204,7,207,8;162,8,164,11;180,9,185,12;184,8,185,9;189,8,197,9;192,10,203,15;200,9,203,10;202,8,203,9;161,9,162,10;173,9,174,10;189,9,193,10;259,9,260,10;164,10,167,11;170,11,174,12;171,10,172,11;185,10,187,11;189,11,192,14;256,12,259,14;256,11,258,12;164,13,174,14;165,12,166,13;170,12,171,13;172,12,174,13;180,12,183,13;156,15,163,18;158,14,161,15;166,14,178,15;190,14,192,15;256,14,258,15;163,16,171,19;165,15,167,16;169,15,172,16;174,15,176,16;193,15,195,16;200,15,203,16;256,15,257,16;171,16,173,18;202,16,203,17;108,18,117,23;111,17,113,18;140,19,145,21;144,18,145,19;147,19,153,21;150,18,152,19;162,18,163,19;205,18,207,23;204,18,205,20;235,18,248,24;248,18,253,20;253,18,255,19;105,20,108,23;106,19,108,20;57,33,123,71;115,23,121,29;117,20,120,23;117,19,119,20;153,19,154,20;157,19,161,21;162,20,168,26;165,19,166,20;121,23,130,28;124,20,126,23;129,20,131,23;136,20,138,22;138,21,141,24;139,20,140,21;146,20,147,22;155,21,157,33;156,20,157,21;248,20,251,21;103,21,105,25;120,21,124,23;127,22,129,23;128,21,129,22;141,21,143,23;143,21,144,22;147,21,152,22;157,21,159,26;159,21,160,22;159,23,162,26;160,22,162,23;161,21,162,22;168,22,175,27;168,21,169,22;173,21,174,22;102,22,103,24;101,22,102,23;137,22,138,23;153,22,155,26;248,23,251,26;248,22,250,23;105,23,107,24;109,24,115,25;110,23,111,24;112,23,115,24;141,27,147,35;142,24,147,26;144,23,146,24;152,23,153,25;206,23,207,24;41,26,57,46;49,24,58,26;174,27,181,34;175,24,177,27;235,24,245,29;247,24,248,25;251,24,252,25;42,25,49,26;58,25,66,33;86,26,95,33;92,25,93,26;130,25,132,27;140,25,142,27;177,25,180,27;245,26,248,28;246,25,247,26;31,28,41,45;39,26,41,28;57,26,58,33;66,26,71,33;95,27,104,33;" $sPixelRect &= "97,26,101,27;109,26,115,28;108,26,109,27;136,26,138,29;142,26,146,27;160,26,165,27;180,26,181,27;37,27,39,28;71,28,86,33;71,27,75,28;82,27,86,28;130,27,131,28;134,27,136,29;135,31,141,39;138,27,139,31;157,28,160,30;157,27,159,28;171,27,174,31;170,27,171,29;248,27,249,28;104,28,108,33;108,30,115,33;113,28,115,30;111,28,113,29;124,28,129,29;147,28,149,34;149,28,150,29;151,30,155,34;153,29,155,30;154,28,155,29;201,35,214,42;204,29,207,35;206,28,207,29;245,28,246,29;30,29,31,31;108,29,109,30;115,29,119,30;123,30,129,44;121,29,125,30;135,29,137,30;139,29,141,31;181,30,183,36;181,29,182,30;235,29,241,30;118,30,123,33;129,32,135,41;129,30,133,32;137,30,138,31;157,30,159,31;202,31,204,35;203,30,204,31;226,30,231,32;231,30,233,31;115,31,116,33;117,31,118,33;133,31,134,32;149,31,151,34;157,31,158,32;172,31,174,32;183,32,185,35;183,31,184,32;201,32,202,35;226,32,230,33;22,33,31,36;167,34,178,39;168,33,174,34;226,33,228,34;20,34,22,37;146,36,152,39;147,34,148,36;179,34,181,35;19,35,20,36;141,35,143,38;145,35,146,36;148,35,151,36;160,35,167,37;183,35,184,36;214,35,218,37;218,35,221,36;22,36,26,37;24,38,31,46;27,36,31,38;143,36,144,38;159,36,160,38;23,37,24,38;26,37,27,38;145,37,146,39;152,37,153,40;160,37,163,38;166,37,167,38;178,37,179,38;214,37,216,39;216,37,217,38;200,38,201,39;16,40,24,49;18,39,24,40;135,39,136,40;146,39,147,40;151,39,152,40;168,39,173,41;167,39,168,40;175,39,178,40;214,39,215,41;13,42,16,48;14,41,16,42;15,40,16,41;173,40,175,42;129,41,133,42;151,47,166,67;156,41,162,47;170,41,173,42;129,42,131,43;154,43,156,47;155,42,156,43;162,43,166,47;162,42,164,43;172,42,174,43;205,42,212,45;203,42,205,44;202,42,203,43;212,42,213,44;123,44,126,46;126,44,127,45;166,44,167,47;31,45,36,46;153,45,154,47;207,45,210,46;11,46,13,49;24,46,28,47;30,46,33,47;50,46,57,49;45,46,50,47;123,46,124,48;166,54,177,58;170,48,176,54;173,46,176,48;10,47,11,48;24,47,26,48;48,47,50,48;172,47,173,48;13,48,15,49;143,57,151,81;150,48,151,57;11,51,16,52;13,49,14,51;18,49,19,53;15,49,18,51;" $sPixelRect &= "19,49,22,50;53,57,57,65;54,49,57,57;51,49,54,50;123,53,130,72;123,50,125,53;123,49,124,50;166,50,170,54;166,49,167,50;168,49,170,50;14,50,15,51;19,51,23,52;22,50,23,51;53,50,54,51;50,51,52,53;176,51,177,52;8,52,12,54;12,52,14,53;19,52,20,53;52,52,53,53;125,52,128,53;6,53,8,55;147,55,150,57;149,53,150,55;4,54,6,56;8,54,9,55;51,54,53,57;129,72,143,77;130,56,136,72;130,54,132,56;6,55,7,56;50,55,51,56;132,55,135,56;136,57,138,59;136,56,137,57;145,56,147,57;166,59,182,63;177,56,178,59;140,63,143,72;141,60,143,63;142,58,143,60;166,58,176,59;178,58,181,59;52,59,53,60;136,59,137,61;182,60,183,61;52,63,53,64;136,64,140,72;136,63,137,64;166,63,176,66;176,67,179,74;178,63,179,67;176,63,178,65;179,63,180,64;55,65,57,67;54,65,55,66;179,65,180,67;51,66,54,69;50,66,51,68;166,66,174,67;177,66,178,67;53,69,56,71;54,67,55,69;56,67,57,69;154,71,161,77;151,67,157,70;157,67,162,68;167,67,170,68;158,68,159,71;157,68,158,69;179,69,183,73;179,68,181,69;52,69,53,70;161,69,163,72;159,69,161,71;173,70,176,73;174,69,176,70;151,70,155,71;156,70,158,71;44,83,113,104;50,75,115,83;51,72,55,75;52,71,54,72;56,71,113,75;113,71,119,72;151,72,154,80;151,71,153,72;172,71,173,73;183,71,184,72;113,72,115,73;124,72,129,76;161,72,162,73;55,73,56,75;115,74,119,78;116,73,117,74;179,73,180,74;114,74,115,75;113,86,131,99;119,79,123,86;119,75,123,77;121,74,122,75;123,74,124,75;160,77,166,79;161,75,162,77;125,76,127,77;162,76,168,77;48,78,50,83;49,77,50,78;121,77,125,79;131,82,141,88;130,77,143,80;154,77,159,78;166,77,167,78;115,78,117,79;120,78,121,79;154,78,156,79;158,78,160,81;115,79,116,81;123,79,124,80;125,81,131,84;127,79,130,81;156,80,158,82;157,79,158,80;160,79,163,80;46,81,48,83;47,80,48,81;117,81,119,86;118,80,119,81;130,80,134,81;136,80,143,82;151,80,152,81;123,82,125,85;123,81,124,82;131,81,132,82;135,81,136,82;143,81,147,85;147,81,149,82;45,82,46,83;141,82,143,87;113,83,114,84;116,83,117,86;127,84,131,86;113,85,114,86;115,85,116,86;125,85,127,86;143,85,146,86;42,87,44,102;43,86,44,87;143,86,144,87;" $sPixelRect &= "41,88,42,94;131,88,137,91;137,88,138,90;131,91,135,92;40,92,41,93;131,92,133,94;132,94,133,95;41,95,42,98;113,99,126,104;126,99,129,101;129,99,130,100;126,101,128,102;43,102,44,103;126,102,127,103;53,104,90,114;48,104,50,115;47,104,48,113;46,104,47,106;50,104,53,109;90,104,117,111;117,104,122,106;122,104,123,105;117,106,121,107;117,107,119,108;117,108,118,109;46,109,47,111;50,109,51,110;52,109,53,110;95,111,100,114;90,111,95,113;100,111,103,112;107,111,117,113;105,111,107,112;49,115,52,120;50,112,51,115;100,112,101,113;112,113,117,120;63,114,80,136;57,114,63,122;55,114,57,118;54,114,55,116;80,114,87,116;87,114,88,115;98,114,99,115;48,116,49,119;80,116,83,120;83,116,85,117;51,120,54,124;52,117,53,120;56,118,57,119;119,118,121,120;53,119,54,120;117,119,118,120;122,119,123,121;121,119,122,120;80,120,82,123;113,120,117,122;118,122,121,124;119,120,120,122;123,120,124,121;120,121,122,122;60,122,63,126;59,122,60,124;58,122,59,123;114,122,116,123;80,123,81,126;52,124,55,126;119,124,121,125;125,124,126,128;54,126,56,128;53,126,54,127;62,126,63,130;61,126,62,127;109,127,115,130;107,128,109,130;115,128,118,131;106,129,107,131;118,130,121,135;118,129,120,130;107,130,108,131;114,130,115,131;126,130,127,132;125,130,126,131;127,130,128,131;93,133,99,138;95,131,100,133;117,131,118,133;116,131,117,132;121,132,125,135;121,131,123,132;62,132,63,135;75,136,82,144;80,132,81,136;94,132,95,133;99,133,101,134;100,132,101,133;125,133,126,135;99,134,100,136;126,134,127,135;87,138,96,147;91,136,93,138;92,135,93,136;123,135,124,136;128,135,135,139;67,136,75,140;65,136,67,138;64,136,65,137;135,136,137,139;82,138,87,144;82,137,83,138;89,137,91,138;117,137,119,140;125,137,127,139;137,137,138,138;140,137,142,140;66,138,67,139;96,138,98,141;116,138,117,139;119,138,121,140;124,138,125,139;126,139,128,140;127,138,128,139;139,138,140,139;142,138,143,139;130,139,133,140;149,140,155,142;149,139,151,140;152,139,154,140;71,140,75,142;69,140,71,141;148,140,149,141;96,141,97,143;73,142,75,143;" $sPixelRect &= "150,142,151,143;152,144,154,153;153,142,154,144;99,144,105,154;101,143,103,144;78,144,81,145;85,144,87,145;91,147,99,150;96,144,99,147;105,144,106,153;154,144,155,146;151,145,152,146;106,146,107,147;89,147,91,149;88,147,89,148;150,151,152,155;151,148,152,151;154,148,155,149;156,149,159,151;157,148,158,149;94,150,96,151;97,150,99,152;155,150,156,151;156,151,158,152;98,152,99,153;149,152,150,159;148,153,149,154;152,153,153,154;100,154,105,158;150,156,152,158;150,155,151,156;103,158,107,160;105,156,106,158;148,156,149,158;102,158,103,159;113,158,115,161;150,158,151,159;106,160,112,162;107,159,109,160;110,159,113,160;116,160,118,163;115,159,117,160;104,160,106,161;112,160,113,161;115,160,116,161;110,162,111,164;108,162,110,163;111,162,112,163;115,162,116,164" #EndRegion pixel coordinates Local $aPixelRect = StringSplit($sPixelRect, ";", 2) Return $aPixelRect EndFunc ;==>_NorthAmerica Func _SouthAmerica() #Region pixel coordinates Local $sPixelRect $sPixelRect &= "678,368;127,153,130,157;128,152,131,153;117,165,158,207;131,155,138,165;133,153,135,155;121,157,129,165;124,154,127,157;131,154,133,155;135,154,137,155;122,156,124,157;123,155,124,156;130,155,131,157;138,157,150,165;138,156,142,157;145,156,146,157;148,156,149,157;129,159,131,165;130,158,131,159;150,159,152,165;150,158,151,159;115,162,121,164;116,159,117,162;119,160,121,162;120,159,121,160;117,160,118,162;152,161,155,165;152,160,153,161;118,161,119,162;155,162,156,165;116,164,121,165;156,164,157,165;116,165,117,167;135,207,181,245;158,169,170,207;158,166,161,169;163,166,165,169;161,167,163,169;165,167,168,169;168,168,169,169;111,179,117,195;115,174,117,179;116,170,117,174;170,173,173,180;170,170,171,173;171,171,172,173;113,176,115,179;114,175,115,176;173,176,174,178;112,177,113,179;170,184,185,207;173,180,177,183;174,179,175,180;109,182,111,185;110,180,111,182;170,180,172,181;171,182,173,184;172,181,173,182;178,182,183,184;180,181,181,182;170,183,171,184;173,183,176,184;177,183,178,184;183,183,184,184;110,185,111,186;185,189,198,223;186,186,196,189;187,185,189,186;109,189,111,194;110,187,111,189;185,187,186,189;196,187,197,189;198,191,203,204;198,189,199,191;108,190,109,191;199,190,200,191;203,193,206,200;203,191,204,193;204,192,205,193;110,194,111,195;113,195,117,199;112,195,113,197;206,196,207,197;115,199,117,204;114,199,115,201;203,200,205,201;203,201,204,203;116,204,117,205;198,204,201,208;201,204,202,206;123,207,135,216;120,207,123,212;119,207,120,209;118,207,119,208;181,207,185,235;198,208,200,209;198,209,199,210;122,212,123,215;121,212,122,213;198,214,199,217;129,216,135,219;127,216,129,218;125,216,127,217;132,219,135,222;130,219,132,220;134,222,135,226;133,222,134,223;185,223,195,231;195,223,197,226;195,226,196,229;185,231,192,233;192,231,194,232;185,233,187,234;134,234,135,236;185,234,186,235;181,235,183,236;181,236,182,237;181,241,182,242;137,245,165,268;136,245,137,254;135,245,136,249;165,245,176,255;176,245,179,250;179,245,180,246;176,250,178,251;" $sPixelRect &= "176,251,177,253;167,255,173,259;165,255,167,258;173,255,175,256;173,256,174,258;165,261,168,267;165,259,167,261;169,259,171,260;168,262,169,265;136,263,137,266;165,267,166,268;145,268,156,292;139,268,145,274;137,269,139,271;138,268,139,269;156,268,164,269;156,269,160,273;160,270,161,272;138,271,139,273;158,273,160,274;141,277,145,278;141,274,145,276;140,274,141,275;156,276,158,281;156,275,157,276;142,276,145,277;158,276,159,277;143,278,145,287;142,278,143,280;156,281,157,282;141,284,143,286;147,292,158,294;156,286,158,292;156,285,157,286;144,287,145,289;158,287,159,291;146,292,147,293;150,294,157,298;148,294,150,296;147,294,148,295;149,296,150,297;157,296,158,298;154,298,156,300;151,298,154,299;156,298,157,299;157,299,161,303;158,298,159,299;161,301,164,305;161,300,163,301;156,301,157,302;164,302,166,305;158,303,161,304;166,303,168,305" #EndRegion pixel coordinates Local $aPixelRect = StringSplit($sPixelRect, ";", 2) Return $aPixelRect EndFunc ;==>_SouthAmerica ;Code below was generated by: 'File to Base64 String' Code Generator v1.18 Build 2014-08-02 Func _World_Map($bSaveBinary = False, $sSavePath = @ScriptDir) Local $World_Map $World_Map &= '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' $World_Map &= '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' $World_Map &= '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' $World_Map &= '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' $World_Map &= 'xLpSoAyLN01Fj+m86Prrkj6/B2I9rCh9XILyU02h535RstGXIqWUxvsHTYyNesrUqx5889Xit0MOfsfxkdgpAg2PULufunbqcDpOMKf6GoDgChWL+J38kGAKF2ORY2oVJExudvWZajIlWkMf6o5UdkCIP3zhurUZZxrmv+2aBCnYnVar1VEyZrX6NmVXt18P4U4zZULTsN234QTmVJ2ga78dzKmKPs/mfi9FcJ2f9woPBaa8Hy9qS/2gkOrKk+LCPrCj10UdV9R+FZh/6ylnR2PvAUBl921cse8LRn3PqVlKxqxWVcRQbM8LQ8qZvLYwd6r9rbJ2jtm5Qopm/qphmIZzmpcz5/OBIhOKTzNDgamAyfkj3O0QubVFf1HdfnKZh6HncWFfKfrCne5wCCjHV39NS3uKxw9R8/yA+HvUwCU1R9fwfQFRgDn5idNv+JgycDCYnMjs6WJ+uLdkrnNcUPXn7fhGY0rP1afQozBMmf12HX559ju5QNWemDiEoUih4OL0dHxhEznti9HVI2ixWEztKpUXZpd6FxzhmV/EraeVMqBVDjiLr64ZTNXVEHzCG3IJU795CGpAj9/ZM5wgUqaqHx55ctqTo4O9kd16gWkvd6V++BP3OV+FKyBZa82jjA5Kns05vvt5zVKaocB0Kfaz2NJCsi+QxpIFRBNN34EmYDyWOgK7d6LoHSATQpBWn7GsegZThafnMa5sdOZ/GGTc438VUW1yZhtNnPhzn3BUNYBOjXLlUtlqJKqcK6fxNU4XzfyWmF+U4O+UletcRB3aG6AFRaapoxuxxRPbiSGd2qLF0aIuOxB8D88WC1WiN7PBCkplWm3GRF73DKaaSc/jw5+tytujg80/I8UhZgR3iZjCf7BghZ7U/TS/QKFMD/whCEMfpOYHxenQXlROQ3uxzaOpr05qTculLSsc0nPUGU2aUNQGJZ6KJS9C70ahOHPaHXNrrNEtZdWGE54A5f4oWxUZ7mSNSX80pXo+4QnAbrUsOlrdC/olMZ/gx5SypY3McGLKBjiHsnSUWjyxPUFQMR2yrBgvUukIqoWQbqVoiPWmrBFU71JZkdf3TZ3/uHiX2lDGOIv3R6esjGJg10znNAhY990mTCPglL0y/emSaROX7gW8pBZI1J4YaR/kz38+MbyY2jB+42hh81lqUgjqV1+tJAscaHbuOf0CIbWaL9rjG6LZrEi7pf5t524Lbsgim3Ki+h1KDb2mP0RO10Spwc1TPmMj6Xk6nP+cEHrnlT0n+IjnL2akLgpTgVUpObyYivHZ2cLRMzaiFmNT4/pic9FBpG+uijIX7dml9BTfk053lfdK/8AtfT+m3ugj9KH8R7tVRFTXSEl5wobktub8Hq7p8/vBaDDlLsHJggh+BR/xgR9CVinFMuJn4KbpkGLK08lXn7VdurIppZyb5FS6U290Ed3uItH6AyMWFyBpP5C6GLeHsWnlvo9TTJPYjeqCae3WZ/0xr57y+/tV7ljxlZbGKCNG9syQ1mBy/B3P7msFAR9iT+/UMF2WXMsnTocA08g7+ldvyPH0LM7pIavjsx0W/dJiFXPbs/8e+l6aDffGfJR66u11LS4drVdSm6NWdqckROWntIFC5p0gKQntv3lWt6ry92d3zs7yG7krwQybJE/l+GKd7rkaTkzhgvV8ldAY50BTs5fmL+D5Hcg8LfrVQ4GxX0pA62vrg8fxjakSaZUZVTroR/yYnvq0U9UqSgOAUjDvPvUIDoPam8tZCQAz686zUUoB5smDCOM0O/W8DKdZwRpT0uoPC6bRy6NiU1PnbizQjOp8673Nyo/SXhXLilk00Ld087O+YlpxfU17jkT5wOcQdJQA5UKV16xJGXXfBCHKb1U/HHtP4qOzrX5L77gRIDPOyS/YM/rTk9e4TK4U2vTXFVMbsp/AMHpTWxaiWWS+cG5q6qIEIRqWqtbLVpxDfYWp0tZHV6l8NbuUGCCmRvnsuSNvrT5CYvk9jx55zbV9rKHS' $World_Map &= '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' $World_Map &= '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' $World_Map &= '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' $World_Map &= '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' $World_Map &= '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' $World_Map &= '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' $World_Map &= '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' $World_Map &= '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' $World_Map &= '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' $World_Map &= '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' $World_Map &= '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' $World_Map &= 'akYLIl7a5YImrWkbQ1D0UqXZyIw3yCpmTy/gxWTjJ5PGBCscpmx62tUUudg1iLz8bscWwgCUiUpuY9A10fjJHJ6P9hwXKhiTwmlXU+qeCo/EcwXPGK+qDkw2fqqUPPiJmJ/T7z1tujXGLeTwnw/22FEkyYAW/iT7yJoGEDF9oYRzm93mn4cZ1PcmY0BJlwzNml4EWSlbqa/2/tU0A2LzNkuzpl7Z1Th9Ycbo+aW1R9Z0IMXp9RhkQEt+xjqPUBeXk3Gznxk17LB2yVnTy+x+6npMMvrnbvfjj+RfzXQhkOmOPzMAAAAASUVORK5CYII=' Local $bString = Binary(_WinAPI_Base64Decode($World_Map)) If $bSaveBinary Then Local $hFile = FileOpen($sSavePath & "\_WorldMap.png", 18) FileWrite($hFile, $bString) FileClose($hFile) EndIf Return $bString EndFunc ;==>_World_Map Func _Pin($bSaveBinary = False, $sSavePath = @ScriptDir) Local $Pin $Pin &= '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' $Pin &= '+GPf9/8zcRAzo1qtIo7jJ9O0czUIgth13cmCtNaoVCrCdd3n8vm8ZearYRhuP4NuF9TtdlGr1aaiKHqaiCqe532Uz+d3lK23BVpZWUGn0zkwPz9/uNfrXS8UCiuu604WRESoVqswxjxVKpX8wWDw5k6r6bZAWmtUq1U5NTV1NpPJdJVS7xWLxfWSMDFQkiRoNBqF2dnZ04PB4F++73+Sy+UmDxoMBuh2u4fL5fJCv99/OwzDvhz/dPPlQcYYCCG+EQSBQ0R/CsOQd2vNQ0FEpNK0czebzX6Uz+d37TYgLeX9fh/tdhvdbhc3btwI5+bmTsVx/EGxWKy7rgut9dj3cNsVCQDtdhuLi4u4evUqLl++fLhUKpWTJPljFEW7Duv/AwH/Oz+O4zzl+35fKfWXSYT1A6AkSVCr1VQURd+y1v7D9/1PPc+bPKjT6aDVagXlcvlUHMdvRFGUTISwEcTMqNfrGAwGR2ZmZiJr7VtBEOyot95KHACw1qJarSKXyz2dzWY/V0p9POpER63v6O3JrkCDwQD1et2ZnZ19OgiCP589e3btYU18NpvdHajX62FtbS08cODAY8aYV4rFIk8i7WwUCQwLHTMfKhaLhpmvT5SwEZQkCYrF4pNKqb9ls9n6VwYiIjk7O3vaGHOlWCza3aabsSClVH52dnYfgGtBEEwcAqTB4HnewvT09GdEVN1NZG0J0lofdl33Dd/3zaSS6P0imRlCiD2e570TBMHEctv94hCRCMPwwyNHjlRd1911BhgngtPXl1+F8o3yX0BSPDBaPm9cAAAAAElFTkSuQmCC' Local $bString = Binary(_WinAPI_Base64Decode($Pin)) If $bSaveBinary Then Local $hFile = FileOpen($sSavePath & "\pin_26x66.png", 18) FileWrite($hFile, $bString) FileClose($hFile) EndIf Return $bString EndFunc ;==>_Pin Func _WinAPI_Base64Decode($sB64String) Local $aCrypt = DllCall("Crypt32.dll", "bool", "CryptStringToBinaryA", "str", $sB64String, "dword", 0, "dword", 1, "ptr", 0, "dword*", 0, "ptr", 0, "ptr", 0) If @error Or Not $aCrypt[0] Then Return SetError(1, 0, "") Local $bBuffer = DllStructCreate("byte[" & $aCrypt[5] & "]") $aCrypt = DllCall("Crypt32.dll", "bool", "CryptStringToBinaryA", "str", $sB64String, "dword", 0, "dword", 1, "struct*", $bBuffer, "dword*", $aCrypt[5], "ptr", 0, "ptr", 0) If @error Or Not $aCrypt[0] Then Return SetError(2, 0, "") Return DllStructGetData($bBuffer, 1) EndFunc ;==>_WinAPI_Base64Decode Br, UEZ
    1 point
  7. UEZ

    DPI Resolution problem

    You can set the control size depending on the DPI. I use this GDI+ function to get the DPI size: Func _GDIPlus_GraphicsGetDPIRatio($iDPIDef = 96) Local $hGfx = _GDIPlus_GraphicsCreateFromHWND(0) If @error Then Return SetError(1, @extended, 0) Local $aResult = DllCall($ghGDIPDll, "int", "GdipGetDpiX", "handle", $hGfx, "float*", 0) If @error Then Return SetError(2, @extended, 0) Local $iDPI = $aResult[2] _GDIPlus_GraphicsDispose($hGfx) Local $aResults[2] = [$iDPIDef / $iDPI, $iDPI / $iDPIDef] Return $aResults EndFunc ;==>_GDIPlus_GraphicsGetDPIRatio According the information you can set the size of your control or the font size. Br, UEZ
    1 point
  8. Try this example: #include <IE.au3> $oIE = _IE_Example ("form") $oForm = _IEFormGetCollection ($oIE, 0) $oElements = _IEFormElementGetCollection ($oForm) For $oElement In $oElements MsgBox(0, "Form Element Type", "Type: " & $oElement.type) Next
    1 point
×
×
  • Create New...