All Activity

This stream auto-updates   

  1. Past hour
  2. I used it like so: $recv = _WSA_TCPRecv($__TCPClient_Sockets[$i], 65536, 0, 10) as to the HTTPS-everywhere plugin i'm not completely sure what is exactly happening ,didn't do any special modding may be it has to do with how i'm sending the text back to the browser where that plugin is active ,without it being active every thing seems normal will need to test it again to find out more ..
  3. Hi, I want to query a firebird database. Everything works fine, but i need to optimize my query so the results will be ok. Each row of my table holds a customer with collumns like lastname, firstname, phone1, phone2, fax and mobile My script has a phonenumber and i want to find alle customers with that phonenumber (yes, the number can be used by more than one customer). Right now i use something like: $sQUERY = 'Select * from ' & $sTableName & " WHERE PHONE1 LIKE '%" & $number & "%'" As long as the number is stored correctly it works fine, but sometimes there are spaces or comments in the stored number or a number is written in different ways like 089-123456 or like 089/123456 or like 089123456. How can i construct a query to only compare the numeric part (that means strip letters and whitespaces) of the phone1 column (and also the other phone columns)? Only using wildcards like % and _ (that is waht i do now) is probably not enough. I need something a bit more complicated :-) On the web i found examples using substring with something like %[0-9]% but i am not sure if this syntax is supported by the firebird db and even if it is, i did not manage to get it working. Can anyone help me here? Thanks!
  4. I took a look at the code in the TCPClient-UDF... Func __TCPClient_Recv() For $i = 1 To $__TCPClient_Sockets[0] Dim $sData If Not $__TCPClient_Sockets[$i] Then ContinueLoop $recv = TCPRecv($__TCPClient_Sockets[$i], 1000000); <--- If @error Then __TCPClient_KillConnection($i) ContinueLoop EndIf If $recv Then $sData = $recv Do $recv = TCPRecv($__TCPClient_Sockets[$i], 1000000); <--- If @error Then ConsoleWrite('log 2') __TCPClient_KillConnection($i) ContinueLoop (2) EndIf $sData &= $recv Until $recv = "" If $_TCPClient_AutoTrim Then $sData = StringStripWS($sData, 1 + 2) EndIf If $_TCPClient_DebugMode Then __TCPClient_Log("Client " & _TCPClient_SocketToIP($__TCPClient_Sockets[$i]) & " sent " & StringLeft($sData, 255)) Call($_TCPClient_OnReceiveCallback, $__TCPClient_Sockets[$i], _TCPClient_SocketToIP($__TCPClient_Sockets[$i]), $sData, $__TCPClient_Pars[$i]) EndIf Next EndFunc ;==>__TCPClient_Recv One million bytes seems to be a little much for a buffer size, in my opinion. Maybe if you were to change it to something more reasonable, it might make a difference. Perhaps 100000 or lower?
  5. Today
  6. Tried to move your 1469 lines of code into a codebox but that fails for some reson, so attached it You really need to spent a little more time to explain your issues as wading through that many lines would make it pretty impossible. Jos source.au3
  7. Use the ID (handle) of your GUI. With all the testing I've done, I have never had this problem or error. Mind if I ask what kind of data is being received? I would need some way to reproduce it also. What version of Autoit are you using? And, 32 or 64 Bit? Not sure if I understand what you want to do here. The browser initiates the connection to the remote site. Once connected, the data is passed back and forth encrypted in such a way that only the browser and the remote site can decipher -- unless you are using it some other way.
  8. Not really my area of expertise. Jos
  9. You are welcome Have a look to this link: https://msdn.microsoft.com/en-us/library/aa752084(v=vs.85).aspx
  10. I replicated the issue, could this be a question for developers? @Jos Seeing as no one has replied.
  11. I have many instances of this running and when a pop-up appears there is many at the same time so the little script closes them all. What would be the ideal scenario? The things you would like the script to do?
  12. Thanks, works a treat. Where can I find a list of all the properties of the DOM object that I can access. I did see a link here a few years ago but it's out of date now
  13. My code _WD_NewTab: _WDStartup() $sSession = _WDCreateSession($sDesiredCapabilities) _WD_NewTab($sSession,"") Error in Console: If $iErr = $_WD_ERROR_Success Then If ^ ERROR
  14. I can select 1 file at a time to upload but not able to select multiple files at once using the bulk upload feature
  15. use $oIE.visible = True to make the browser visible. #include <ie.au3> Opt("WinTitleMatchMode", 2) ;1=start, 2=subStr, 3=exact, 4=advanced, -1 to -4=Nocase $oIE = _IECreate("https://www.google.co.uk/",0,0) $oSearchBox = _IEGetObjById($oIE, "lst-ib") $oSearchBox.innertext = "AutoIT" $oForm = _IEFormGetObjByName($oIE,"f") _IEFormSubmit($oForm) $oIE.visible = True ; <-- this will show the browser ; WinSetState("Google","",@SW_SHOW)
  16. did you ever try something like this: Global Enum _ $_WD_ERROR_Success = 0, _ ; No error $_WD_ERROR_GeneralError, _ ; General error $_WD_ERROR_SocketError, _ ; No socket $_WD_ERROR_InvalidDataType, _ ; Invalid data type (IP, URL, Port ...) $_WD_ERROR_InvalidValue, _ ; Invalid value in function-call $_WD_ERROR_SendRecv, _ ; Send / Recv Error $_WD_ERROR_Timeout, _ ; Connection / Send / Recv timeout $_WD_ERROR___UNUSED, _ ; $_WD_ERROR_NoMatch, _ ; No match for _WDAction-find/search _WDGetElement... $_WD_ERROR_RetValue, _ ; Error echo from Repl e.g. _WDAction("fullscreen","true") <> "true" $_WD_ERROR_Exception, _ ; Exception from web driver $_WD_ERROR_InvalidExpression, _ ; Invalid expression in XPath query or RegEx $_WD_ERROR_COUTNER ; Global Const $aWD_ERROR_DESC[$_WD_ERROR_COUTNER] = [ _ "Success", _ "General Error", _ "Socket Error", _ "Invalid data type", _ "Invalid value", _ "Timeout", _ "No match", _ "Error return value", _ "Error TCPSend / TCPRecv", _ "Webdriver Exception", _ "Error TCPSend / TCPRecv", _ "Invalid Expression" _ ] ;~ $sMsg = $sWhere & " ==> " & $sOut & @CRLF $sMsg = $sWhere & " ==> " & $aWD_ERROR_DESC[$i_WD_ERROR] & @CRLF
  17. Maybe executing so many at once causes a deadlock somewhere, yes
  18. Sure but as you know the devil is often in the details. OTOH somethingelse is maybe the source of OP's issue, AV or something else exterior to AutoIt stuff.
  19. Hi I'm trying to: 1) Open a hidden browser session 2) Do some stuff in the background 3) Make the hidden window visible This is my code: Opt("WinTitleMatchMode", 2) ;1=start, 2=subStr, 3=exact, 4=advanced, -1 to -4=Nocase $oIE = _IECreate("https://www.google.co.uk/",0,0) $oSearchBox = _IEGetObjById($oIE, "lst-ib") $oSearchBox.innertext = "AutoIT" $oForm = _IEFormGetObjByName($oIE,"f") _IEFormSubmit($oForm) WinSetState("Google","",@SW_SHOW) It dosen't work The last line does make the window visible but it is an empty greyed out box that disappears as soon as I click on it. I have a sort of workaround that hides the browser window as soon as I have created it which works fine: $oIE = _IECreate("https://www.google.co.uk/") WinSetState("Google","",@SW_HIDE) . . . WinSetState("Google","",@SW_SHOW) But this looks a bit pants as the newly created window flashes on then off of the screen. Am I using the wrong method to make the browser window visible? Thanks
  20. Thanks for these functions ripdad whats for the $hGUI parameter in _WSAAsyncGetHostByName() didn't get to test it out yet, can it be defaulted to $hGUI = AutoItWinGetTitle() and it should work like that ? with what i have tested using: https://github.com/jesobreira/TCPClient-UDF all works with improved speed all over except _WSA_TCPRecv gives me the WSAEFAULT error --> https://social.msdn.microsoft.com/Forums/windowsdesktop/en-US/0fe72216-f1ad-4b15-aea1-3d75604cebdc/wsarecv-return-10014-wsaefault?forum=wsk didn't yet get to try and figure a way to fix this .. One general question : concerning this HTTPS-everywhere plugin from HTTPS://www.eff.org/https-everywhere/development anyone by chance knows how to deal with the incoming data that appears to be encrypted coming from a browser's Socket that happens to be using this plugin ? Thanks again
  21. The "compiled script" is the interpreter binary packed with the tokenized script, so agree it could take a little longer in case there are many included files to pickup, but that is only at startup, but other than that, the processes are more or less comparable. I just tested this way to compare the memory footprint for AutoIt3 and the compiled script and they were more or less the same as expected: For $x = 1 to 10 run('"C:\Program Files (x86)\AutoIt3\AutoIt3.exe" "atestshell.au3"',@ScriptDir) Next For $x = 1 to 10 run("atestshell.exe",@ScriptDir) Next Jos
  22. Thanks to all, using the link iamtheky's provided and following the example of using many (3) string variables instead of one long string, it's now working as expected. Why it changed to begin with and why it now works, I don't know.....just glad it's solved.
  23. There are significant differences: the stand-alone interpretor has a large footprint by itself, hence N times its actual footprint, has to fetch N times all the includes the source requires (I agree there seem to be none in the OP example but there will be some in any practical-use source), etc.
  24. I don't think there is any pro or con to it to be honest as to me they are the same. Jos
  25. I still wonder what is the rationale to run any number of source scripts thru AutoIt3.exe instead or running the as many instances of the compiled .EXE. Is there any?
  1. Load more activity