Dmp Posted January 28, 2022 Share Posted January 28, 2022 Hello SMEs... The cssSelector string for each icon (usually 33 icons) that the automation needs to click on contains two numeric values that change each time the web page is loaded. See cssSelector output image below code. My guess is that the end-of-line numeric value differentiates each generated icon; I use an array for these values and pass each element to the _WD_FindElement function as a variable. However, I still need to account for the numeric value in the middle of the locator text: "div.leaflet-marker-icon.marker-icon.vehicle-fr-available-10-min-icon..." I really don't want to loop through a nested array to the one I already have in place; therefore, I was wondering if there is a method for a regular expression that would cover the 1 to 2 digit values used in this position of the cssSelector string, or is this a really bad method to use to click on the given icons and I should consider another solution? The web page is not public, but I can say that it's a representation of a floor plan and the icons are vehicles in a few different states of occupancy, location and communication w/ the network. When each icon is clicked, a status windows pops up. Local $iMax1 ; Local $sData1 = "9,10,16,17" ; Local $sData1 = "24,21,22,23,7,8,9,10,1" Local $sData1 = "10,11,12,13,14,15,16,17,18,19,20,21,22,24,25,26,1,2,3,4,5,6,7,8,9,27,28,29,30,31,32,33" ; Local $sData1 = "2,10,20,40" Local $aDiv1 = StringSplit($sData1, ",") If IsArray($aDiv1) Then _ArrayDisplay($aDiv1, "Numeric Array for Variable") $iMax1 = UBound($aDiv1); UBound gets the array size For $i = 1 to $iMax1 -1 Local $iElmnt = $aDiv1[$i] Local $aElementFkInU = _WD_FindElement($sSession, $_WD_LOCATOR_ByCSSSelector, "div.ng-scope:nth-child(3) div.ng-scope div.leaflet-container.leaflet-retina.leaflet-fade-anim:nth-child(1) div.leaflet-map-pane div.leaflet-objects-pane div.leaflet-marker-pane > div.leaflet-marker-icon.marker-icon.vehicle-fr-inUse-2-min-icon.leaflet-zoom-animated.leaflet-clickable:nth-child(" & $iElmnt & ")", _ Default, True, BitOR($_WD_OPTION_Visible, $_WD_OPTION_Enabled)) _ArrayDisplay($aElementFkInU,"Vehicle-fr-inUse to Click") _WD_ElementSelectAction($sSession, $aElementFkInU, 'click') Sleep(3000) Local $aElementFkA = _WD_FindElement($sSession, $_WD_LOCATOR_ByCSSSelector, "div.ng-scope:nth-child(3) div.ng-scope div.leaflet-container.leaflet-retina.leaflet-fade-anim:nth-child(1) div.leaflet-map-pane div.leaflet-objects-pane div.leaflet-marker-pane > div.leaflet-marker-icon.marker-icon.vehicle-fr-available-10-min-icon.leaflet-zoom-animated.leaflet-clickable:nth-child(" & $iElmnt & ")", _ Default, True, BitOR($_WD_OPTION_Visible, $_WD_OPTION_Enabled)) _ArrayDisplay($aElementFkA,"Vehicle-fr-available to Click") _WD_ElementSelectAction($sSession, $aElementFkA, 'click') Sleep(3000) Local $aElementFkNoCom = _WD_FindElement($sSession, $_WD_LOCATOR_ByCSSSelector, "div.ng-scope:nth-child(3) div.ng-scope div.leaflet-container.leaflet-retina.leaflet-fade-anim:nth-child(1) div.leaflet-map-pane div.leaflet-objects-pane div.leaflet-marker-pane > div.leaflet-marker-icon.marker-icon.vehicle-fr-noComm-40-min-icon.leaflet-zoom-animated.leaflet-clickable:nth-child(" & $iElmnt & ")", _ Default, True, BitOR($_WD_OPTION_Visible, $_WD_OPTION_Enabled)) _ArrayDisplay($aElementFkNoCom,"Vehicle-fr-noComm- to Click") _WD_ElementSelectAction($sSession, $aElementFkNoCom, 'click') Sleep(3000) Call("HiddenLegend") Next EndIf Link to comment Share on other sites More sharing options...
SOLVE-SMART Posted January 28, 2022 Share Posted January 28, 2022 (edited) Hi @Dmp, can you share the DOM of the webpage or at least the particular part of it? Maybe a screenshot of the WebDeveloperTools of your chosen browser? I mean a view like this: Spoiler I would go with XPath as the selector approach and I am quite sure this could be more precise for your needs. Which specific element(s) you want to get? Best regards Sven ________________Stay innovative! Edited January 28, 2022 by SOLVE-SMART Stay innovative! Spoiler 🌍 Au3Forums 🎲 AutoIt (en) Cheat Sheet 📊 AutoIt limits/defaults 💎 Code Katas: [...] (comming soon) 🎭 Collection of GitHub users with AutoIt projects 🐞 False-Positives 🔮 Me on GitHub 💬 Opinion about new forum sub category 📑 UDF wiki list ✂ VSCode-AutoItSnippets 📑 WebDriver FAQs 👨🏫 WebDriver Tutorial (coming soon) Link to comment Share on other sites More sharing options...
Dmp Posted January 28, 2022 Author Share Posted January 28, 2022 Hello Sven, I'm using ChroPath; the reason for selecting to use cssSelector, rather than XPath, is because the cssSelector string has some definition of the status of the icon, such as "...inUse, or Available, or noComm, etc.; I'd like to make these distinctions in the order that the icons are clicked. In other words, I want to click on all the InUse icons first, then the Available ones, then the NoComm icons. The Xpath does not contain this bit of information, the Xpath is the same for all the vehicle icons w/ the exception of the end-of-line numeric values. DOM.txt Link to comment Share on other sites More sharing options...
SOLVE-SMART Posted January 28, 2022 Share Posted January 28, 2022 (edited) Hi @Dmp, as far as I can see the icons are all DIV elements with specific classes. I guess it's pretty easy to get your icons in your expected order, by: //div[contains(@class, '-inUse-')] //div[contains(@class, '-available-')] //div[contains(@class, '-noComm-')] Please enter these XPath expressions into ChroPath (as "Rel XPath") and tell me/us whether it match with your expectations or not 😁 . Best regards Sven ________________Stay innovative! Edited January 28, 2022 by SOLVE-SMART Stay innovative! Spoiler 🌍 Au3Forums 🎲 AutoIt (en) Cheat Sheet 📊 AutoIt limits/defaults 💎 Code Katas: [...] (comming soon) 🎭 Collection of GitHub users with AutoIt projects 🐞 False-Positives 🔮 Me on GitHub 💬 Opinion about new forum sub category 📑 UDF wiki list ✂ VSCode-AutoItSnippets 📑 WebDriver FAQs 👨🏫 WebDriver Tutorial (coming soon) Link to comment Share on other sites More sharing options...
Dmp Posted January 28, 2022 Author Share Posted January 28, 2022 Sven, This did capture the inUse icons, plus one other, but it captured all of the inUse icons at one time because there are no values to make them unique, therefore clicking each one at a time is not possible. Link to comment Share on other sites More sharing options...
Dmp Posted January 28, 2022 Author Share Posted January 28, 2022 Can I add the end-of-line unique numeric values to the Xpaths that you have proposed? Link to comment Share on other sites More sharing options...
SOLVE-SMART Posted January 28, 2022 Share Posted January 28, 2022 Hi again, you will receive a list (array) of identifiers of your found elements. Func _findElements($sSelector) Return _WD_FindElement($sSession, $_WD_LOCATOR_ByXPath, $sSelector, Default, True) EndFunc Global $aListOfInUseElements = _findElements("//div[contains(@class, '-inUse-')]") Then you loop through them with AutoIt and do your click actions by the WebDriver _WD_ElementAction function. 11 minutes ago, Dmp said: Can I add the end-of-line unique numeric values to the Xpaths that you have proposed? Yes you could, but you shoudn't. It is often a good approach to be more precise with the selector to get only you expected data from the DOM. Why? Because then you don't have to handle this later in AutoIt. You have 5 elements as match but you just need 4, right? Which one is the bad one? Best regards Sven ________________Stay innovative! Stay innovative! Spoiler 🌍 Au3Forums 🎲 AutoIt (en) Cheat Sheet 📊 AutoIt limits/defaults 💎 Code Katas: [...] (comming soon) 🎭 Collection of GitHub users with AutoIt projects 🐞 False-Positives 🔮 Me on GitHub 💬 Opinion about new forum sub category 📑 UDF wiki list ✂ VSCode-AutoItSnippets 📑 WebDriver FAQs 👨🏫 WebDriver Tutorial (coming soon) Link to comment Share on other sites More sharing options...
Dmp Posted January 28, 2022 Author Share Posted January 28, 2022 Sven, Never mind my very dumb comment, after logging off the forum, I realized that the Xpath that you suggested gives me the array that I was hoping for when I decided to use an array for the output of _WD_FindElement. End of day/end of week and really burned out. I will remove my first array and use the _WD_FindElement array and let you know how I fare. Link to comment Share on other sites More sharing options...
SOLVE-SMART Posted January 28, 2022 Share Posted January 28, 2022 Hi @Dmp, [...] easy 😀 , don't worry to much. 5 minutes ago, Dmp said: I will remove my first array and use the _WD_FindElement array and let you know how I fare. Yes please let me know when you're need additional hints about XPath or element retrieving in general 😉 . Best regards Sven ________________Stay innovative! Stay innovative! Spoiler 🌍 Au3Forums 🎲 AutoIt (en) Cheat Sheet 📊 AutoIt limits/defaults 💎 Code Katas: [...] (comming soon) 🎭 Collection of GitHub users with AutoIt projects 🐞 False-Positives 🔮 Me on GitHub 💬 Opinion about new forum sub category 📑 UDF wiki list ✂ VSCode-AutoItSnippets 📑 WebDriver FAQs 👨🏫 WebDriver Tutorial (coming soon) Link to comment Share on other sites More sharing options...
Dmp Posted January 31, 2022 Author Share Posted January 31, 2022 Hello Sven, Unfortunately, I'm not having much luck w/ the Chropath "contains" statement. I'm sure that I'm doing something wrong. expandcollapse popup; Refresh Map page $sRfElement = _WD_FindElement($sSession, $_WD_LOCATOR_ByXPath, "//button[normalize-space()='Refresh']") _WD_ElementAction($sSession, $sRefElement, 'click'); click Refresh button ; Create array of In-Use Forklift icon locators via _WD_FindElement($sSession, $_WD_LOCATOR_ByXPath Local $aElementFkInU = _WD_FindElement($sSession, $_WD_LOCATOR_ByXPath, "//div[contains(@class, '-inUse-')]", Default, True, BitOR($_WD_OPTION_Visible, $_WD_OPTION_Enabled)) If IsArray ($aElementFkInU) Then _ArrayDisplay($aElementFkInU,"Vehicle-fr-inUse to Click") MsgBox($MB_SYSTEMMODAL, "", "Found Forklifts in-use with Operators.", 8) $iMax1 = UBound($aElementFkInU); UBound gets the array size For $i = 1 To $iMax1 -1 Local $sElmnt3 = $aElementFkInU[$i] MsgBox($MB_SYSTEMMODAL, "", "each element per icon: " & $sElmnt3, 10) _WD_ElementAction($sSession, $sElmnt3, 'click') Sleep(3000) Call("HiddenLegend") Next Else MsgBox($MB_SYSTEMMODAL, "", "No In Use Forlifts found.", 8) ; $sElmnt = "" EndIf ; Refresh Map page $sRfElement = _WD_FindElement($sSession, $_WD_LOCATOR_ByXPath, "//button[normalize-space()='Refresh']") _WD_ElementAction($sSession, $sRefElement, 'click'); click Refresh button ; Create array of Available Forklift icon locators via _WD_FindElement($sSession, $_WD_LOCATOR_ByXPath Local $aElementFkAvl = _WD_FindElement($sSession, $_WD_LOCATOR_ByXPath, "//div[contains(@class, '-available-')]", Default, True, BitOR($_WD_OPTION_Visible, $_WD_OPTION_Enabled)) If IsArray ($aElementFkAvl) Then _ArrayDisplay($aElementFkAvl,"Vehicle-fr-inUse to Click") $iMax1 = UBound($aElementFkAvl); UBound gets the array size MsgBox($MB_SYSTEMMODAL, "", "Found Forklifts Available to use.", 8) For $i = 1 To $iMax1 -1 Local $sElmnt4 = $aElementFkAvl[$i] MsgBox($MB_SYSTEMMODAL, "", "each element per icon: " & $sElmnt4, 10) _WD_ElementAction($sSession, $sElmnt4, 'click') Sleep(3000) Call("HiddenLegend") Next Else MsgBox($MB_SYSTEMMODAL, "", "No Alvailable Forlifts found.", 8) EndIf Link to comment Share on other sites More sharing options...
Dmp Posted January 31, 2022 Author Share Posted January 31, 2022 "C:\Program Files (x86)\AutoIt3\SciTE\..\AutoIt3.exe" "C:\Program Files (x86)\AutoIt3\SciTE\AutoIt3Wrapper\AutoIt3Wrapper.au3" /run /prod /ErrorStdOut /in "C:\Users\dpardo\Documents\Autoit\tst-timer\Forklift-icon-with-timer\VPro-tst-mix-updatedxx-dev-x-latest-x-x-12-9-Var4-updated-tst-5ver-SingleArrayNotFound.au3" /UserParams +>13:45:01 Starting AutoIt3Wrapper v.15.920.938.0 SciTE v.3.6.0.0 Keyboard:00000409 OS:WIN_10/ CPU:X64 OS:X64 Environment(Language:0409) +> SciTEDir => C:\Program Files (x86)\AutoIt3\SciTE UserDir => C:\Program Files (x86)\AutoIt3\SciTE\AutoIt3Wrapper >Running AU3Check (3.3.14.1) from:C:\Program Files (x86)\AutoIt3 input:C:\Users\dpardo\Documents\Autoit\tst-timer\Forklift-icon-with-timer\VPro-tst-mix-updatedxx-dev-x-latest-x-x-12-9-Var4-updated-tst-5ver-SingleArrayNotFound.au3 +>13:45:02 AU3Check ended.rc:0 >Running:(3.3.14.1):C:\Program Files (x86)\AutoIt3\autoit3_x64.exe "C:\Users\dpardo\Documents\Autoit\tst-timer\Forklift-icon-with-timer\VPro-tst-mix-updatedxx-dev-x-latest-x-x-12-9-Var4-updated-tst-5ver-SingleArrayNotFound.au3" --> Press Ctrl+Alt+Break to Restart or Ctrl+Break to Stop _WD_Startup: "C:\Program Files (x86)\AutoIt3\WebDriver-0.5.0.1\chromedriver.exe" --verbose --log-path="C:\Users\dpardo\Documents\Autoit\tst-timer\Forklift-icon-with-timer\chrome.log" Frames=0 TopWindow=True __WD_Post ==> Element interaction issue: {"value":{"error":"element click intercepted","message":"element click intercepted: Element \u003Cbutton class=\"btn btn-primary ng-binding\" ng-click=\"refreshAllData()\">...\u003C/button> is not clickable at point (1807, 90). Other element would receive the click: \u003Cdiv ng-show=\"isSpinner\" class=\"containerSpinner\" loading-spinner=\"\">...\u003C/div>\n (Session info: chrome=97.0.4692.99)","stacktrace":"Backtrace:\n\tOrdinal0 [0x00E96903+2517251]\n\tOrdinal0 [0x00E2F8E1+2095329]\n\tOrdinal0 [0x00D32848+1058888]\n\tOrdinal0 [0x00D63509+1258761]\n\tOrdinal0 [0x00D61868+1251432]\n\tOrdinal0 [0x00D5F65D+1242717]\n\tOrdinal0 [0x00D5E4A8+1238184]\n\tOrdinal0 [0x00D54037+1196087]\n\tOrdinal0 [0x00D764D3+1336531]\n\tOrdinal0 [0x00D53A36+1194550]\n\tOrdinal0 [0x00D765BA+1336762]\n\tOrdinal0 [0x00D85BBF+1399743]\n\tOrdinal0 [0x00D7639B+1336219]\n\tOrdinal0 [0x00D527A7+1189799]\n\tOrdinal0 [0x00D53609+1193481]\n\tGetHandleVerifier [0x01025904+1577972]\n\tGetHandleVerifier [0x010D0B97+2279047]\n\tGetHandleVerifier [0x00F26D09+534521]\n\tGetHandleVerifier [0x00F25DB9+530601]\n\tOrdinal0 [0x00E34FF9+2117625]\n\tOrdinal0 [0x00E398A8+2136232]\n\tOrdinal0 [0x00E399E2+2136546]\n\tOrdinal0 [0x00E43541+2176321]\n\tBaseThreadInitThunk [0x7721FA29+25]\n\tRtlGetAppContainerNamedObjectPath [0x773D7A9E+286]\n\tRtlGetAppContainerNamedObjectPath [0x773D7A6E+238]\n"}} _WD_ElementAction ==> Element interaction issue: {"value":{"error":"element click intercepted","message":"element click intercepted: Element \u003Cbutton class=\"btn btn-primary ng-binding\" ng-click=\"refreshAllData()\">...\u003C/button> is not clickable at point (1807, 90). Other element would receive the click: \u003Cdiv ng-show=\"isSpinner\" class=\"containerSpinner\" loading-spinner=\"\">...\u003C/div>\n (Session info: chrome=97.0.4692.99)","stacktrace":"Backtrace:\n\tOrdinal0 [0x00E96903+2517251]\n\tOrdinal0 [0x00E2F8E1+2095329]\n\tOrdinal0 [0x00D32848+1058888]\n\tOrdinal0 [0x00D63509+1258761]\n\tOrdinal0 [0x00D61868+1251432]\n\tOrdinal0 [0x00D5F65D+1242717]\n\tOrdinal0 [0x00D5E4A8+1238184]\n\tOrdinal0 [0x00D54037+1196087]\n\tOrdinal0 [0x00D764D3+1336531]\n\tOrdinal0 [0x00D53A36+1194550]\n\tOrdinal0 [0x00D765BA+1336762]\n\tOrdinal0 [0x00D85BBF+1399743]\n\tOrdinal0 [0x00D7639B+1336219]\n\tOrdinal0 [0x00D527A7+1189799]\n\tOrdinal0 [0x00D53609+1193481]\n\tGetHandleVerifier [0x01025904+1577972]\n\tGetHandleVerifier [0x010D0B97+2279047]\n\tGetHandleVerifier [0x00F26D09+534521]\n\tGetHandleVerifier [0x00F25DB9+530601]\n\tOrdinal0 [0x00E34FF9+2117625]\n\tOrdinal0 [0x00E398A8+2136232]\n\tOrdinal0 [0x00E399E2+2136546]\n\tOrdinal0 [0x00E43541+2176321]\n\tBaseThreadInitThunk [0x7721FA29+25]\n\tRtlGetAppContainerNamedObjectPath [0x773D7A9E+286]\n\tRtlGetAppContainerNamedObjectPath [0x773D7A6E+238]\n"}} Frames=0 __WD_Post ==> No match: {"value":{"error":"no such element","message":"no such element: Unable to locate element: {\"method\":\"xpath\",\"selector\":\"//iframe[@id='iframeResult']\"}\n (Session info: chrome=97.0.4692.99)","stacktrace":"Backtrace:\n\tOrdinal0 [0x00E96903+2517251]\n\tOrdinal0 [0x00E2F8E1+2095329]\n\tOrdinal0 [0x00D32848+1058888]\n\tOrdinal0 [0x00D5D448+1233992]\n\tOrdinal0 [0x00D5D63B+1234491]\n\tOrdinal0 [0x00D87812+1406994]\n\tOrdinal0 [0x00D7650A+1336586]\n\tOrdinal0 [0x00D85BBF+1399743]\n\tOrdinal0 [0x00D7639B+1336219]\n\tOrdinal0 [0x00D527A7+1189799]\n\tOrdinal0 [0x00D53609+1193481]\n\tGetHandleVerifier [0x01025904+1577972]\n\tGetHandleVerifier [0x010D0B97+2279047]\n\tGetHandleVerifier [0x00F26D09+534521]\n\tGetHandleVerifier [0x00F25DB9+530601]\n\tOrdinal0 [0x00E34FF9+2117625]\n\tOrdinal0 [0x00E398A8+2136232]\n\tOrdinal0 [0x00E399E2+2136546]\n\tOrdinal0 [0x00E43541+2176321]\n\tBaseThreadInitThunk [0x7721FA29+25]\n\tRtlGetAppContainerNamedObjectPath [0x773D7A9E+286]\n\tRtlGetAppContainerNamedObjectPath [0x773D7A6E+238]\n"}} _WD_FindElement ==> No match: HTTP status = 404 __WD_Post ==> No match: {"value":{"error":"no such element","message":"no such element: Element_id length is invalid\n (Session info: chrome=97.0.4692.99)","stacktrace":"Backtrace:\n\tOrdinal0 [0x00E96903+2517251]\n\tOrdinal0 [0x00E2F8E1+2095329]\n\tOrdinal0 [0x00D32848+1058888]\n\tOrdinal0 [0x00D5CBD1+1231825]\n\tOrdinal0 [0x00D5EE9F+1240735]\n\tOrdinal0 [0x00D86C68+1404008]\n\tOrdinal0 [0x00D764D3+1336531]\n\tOrdinal0 [0x00D85BBF+1399743]\n\tOrdinal0 [0x00D7639B+1336219]\n\tOrdinal0 [0x00D527A7+1189799]\n\tOrdinal0 [0x00D53609+1193481]\n\tGetHandleVerifier [0x01025904+1577972]\n\tGetHandleVerifier [0x010D0B97+2279047]\n\tGetHandleVerifier [0x00F26D09+534521]\n\tGetHandleVerifier [0x00F25DB9+530601]\n\tOrdinal0 [0x00E34FF9+2117625]\n\tOrdinal0 [0x00E398A8+2136232]\n\tOrdinal0 [0x00E399E2+2136546]\n\tOrdinal0 [0x00E43541+2176321]\n\tBaseThreadInitThunk [0x7721FA29+25]\n\tRtlGetAppContainerNamedObjectPath [0x773D7A9E+286]\n\tRtlGetAppContainerNamedObjectPath [0x773D7A6E+238]\n"}} _WD_Window ==> No match: HTTP status = 404 _WD_FrameEnter ==> Webdriver Exception _WD_FindElement ==> No match: HTTP status = 200 _WD_FindElement ==> No match: HTTP status = 200 +>13:46:42 AutoIt3.exe ended.rc:0 +>13:46:42 AutoIt3Wrapper Finished. >Exit code: 0 Time: 101.6 Link to comment Share on other sites More sharing options...
SOLVE-SMART Posted January 31, 2022 Share Posted January 31, 2022 (edited) Hi @Dmp, out of the log (console output) you posted your script fails even before it try to get your elements like -inUse- or later -available-. Quote element click intercepted [...] is not clickable at point [...] Other element would receive the click [...] loading-spinner So I guess you have to wait a bit longer, because of the loading indicator (spinner) or better create a function to waitFor specific element or state of the site, then do the next step. 3 hours ago, Dmp said: I'm not having much luck w/ the Chropath "contains" statement. I don't believe ChroPath behaves incorrect, you selector have to be okay on the specific state (progress of you application). I thought you could find your elements like you posted here by screenshot? It's pretty hard to help without the application. Please try to provide as much screenshots and maybe the DOM again as a zip archive to give us a better chance 😉 . Best regards Sven ________________Stay innovative! Edited January 31, 2022 by SOLVE-SMART Stay innovative! Spoiler 🌍 Au3Forums 🎲 AutoIt (en) Cheat Sheet 📊 AutoIt limits/defaults 💎 Code Katas: [...] (comming soon) 🎭 Collection of GitHub users with AutoIt projects 🐞 False-Positives 🔮 Me on GitHub 💬 Opinion about new forum sub category 📑 UDF wiki list ✂ VSCode-AutoItSnippets 📑 WebDriver FAQs 👨🏫 WebDriver Tutorial (coming soon) Link to comment Share on other sites More sharing options...
Dmp Posted January 31, 2022 Author Share Posted January 31, 2022 If I try _WD_LoadWait, could the I use the $sElement optional parameter for the array element from "$aElementFkUnAvl = _WD_FindElement($sSession, $_WD_LOCATOR_ByXPath...," or is there a better UDF to use? Link to comment Share on other sites More sharing options...
SOLVE-SMART Posted January 31, 2022 Share Posted January 31, 2022 Hi @Dmp, 45 minutes ago, Dmp said: [...] or is there a better UDF to use [...] There are other ways, but I am pretty sure that they are not less complex or would do the job more robust than WebDriver approach. Please provide more information. Screenshots and DOM snapshots would be fine. Please also mark (in the Screenshots) what do you want to click or which texts do you want to achieve etc. Maybe you could grant me/us access to the application in a way => then it would be straight forward I guess. Best regards Sven ________________Stay innovative! Stay innovative! Spoiler 🌍 Au3Forums 🎲 AutoIt (en) Cheat Sheet 📊 AutoIt limits/defaults 💎 Code Katas: [...] (comming soon) 🎭 Collection of GitHub users with AutoIt projects 🐞 False-Positives 🔮 Me on GitHub 💬 Opinion about new forum sub category 📑 UDF wiki list ✂ VSCode-AutoItSnippets 📑 WebDriver FAQs 👨🏫 WebDriver Tutorial (coming soon) Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now