Jump to content

TheDcoder

Active Members
  • Posts

    7,103
  • Joined

  • Days Won

    88

Everything posted by TheDcoder

  1. WinHTTP already comes with a neat CHM file in AutoIt style
  2. @water Very nice tool! I was going to create something like this many years ago but never got around to finishing it (I wasn't very good at that time), it was going to be a complete UDF manager which could maintain a registry of UDFs and integrate them into AutoIt as much as possible. Also looking forward to your documentation generator, I think my Map UDF will be a very good candidate for testing as it has a good amount of functions along with documentation
  3. As far as I know there isn't any standard, it's basically bits from the old browsers with the version numbers changed. Wikipedia has good information about it: https://en.m.wikipedia.org/wiki/User_agent I just extract the whole string from a retail Chrome build and use it in my automation
  4. I would like to request adding the `binary` options to the vendor-specific options (similar to `w3c`), it can be used to set the path of the binary executable in Chrome Driver like so: _WD_CapabilitiesAdd('binary', 'C:\Software\Chromium\bin\chrome.exe')
  5. Great work, I was doing this myself when I was working on an automation project for work, I didn't get very far and basically only did what I needed with no documentation aside from the code itself. Kudos for doing all the dirty work and making it a neat little package, I am sure a lot of people would find it very useful, maybe @LarsJ and @junkew could drop a mention of your UDF in their respective topics By the way, you should consider applying a proper license to your code. By default copyright applies to anything you make, especially if it is a major part of something, I'd recommend something like the MIT license which requires credit but aside from that the end-user can do whatever they want.
  6. Thanks for the clarification @Melba23 and @mLipok. @Melba23 SciTE4AutoIt3 is still part of AutoIt, albiet as a "Lite" version. The programs share the same core thus my doubt
  7. Isn't XP still supported by AutoIt officially?
  8. Are you looking for paid support? If yes then I am interested.
  9. @TheSaint It's meaningless, like all monsters Useful for testing all kinds of edge cases though. Some developers even use something called "fuzz testing" where they supply totally random input to a program to see if it crashes
  10. Did you choose to install the kernel driver during installation? Did you use the Kill option which specifically mentions the kernel driver? It is not the usual kill option, it is a separate entry in the context menu, perhaps it only comes up after being enabled in the settings, I am not sure.
  11. @JockoDundee It's favoring the "more logical" approach of inversion before exponentiation > ./eci /tmp/controversy.txt { "op": "Raise", "args": [ { "op": "Invert", "args": [ 3.0 ] }, 2.0 ] } Here is the precedence used by the parser (starting from lowest to highest): /* Operators */ %precedence '?' %precedence ':' %left AND "And" OR "Or" %left LT '<' GT '>' LTE "<=" GTE ">=" EQU '=' NEQ "<>" SEQU "==" %left '&' %left '+' '-' %left '*' '/' %left '^' %left NOT "Not" %precedence INVERSION %precedence '.' /* WORKAROUND: Bison can't handle "sandwhich" operators which surround the 2nd part of a binary expression */ %precedence '[' %precedence '(' %precedence GROUPING
  12. I already found a bug with function calls, I have pushed a small update to fix that, please download the new version from the updated link. Here is the monster expression which was used to find the bug: > cat example_scripts/expression.au3 MsgBox($MB_INFO, "Math!", -(($foo + 2) / 3) * 4)[666].fortyTwo) > ./eci example_scripts/expression.au3 { "op": "Access", "args": [ { "op": "Access", "args": [ { "op": "Call", "args": [ { "ident": "MsgBox" }, [ { "op": "No Operation", "args": [ { "ident": "$MB_INFO" } ] }, [ { "op": "No Operation", "args": [ "\"Math!\"" ] }, [ { "op": "Multiply", "args": [ { "op": "Invert", "args": [ { "op": "Divide", "args": [ { "op": "Add", "args": [ { "ident": "$foo" }, 2.0 ] }, 3.0 ] } ] }, 4.0 ] }, null ] ] ] ] }, 666.0 ] }, { "ident": "fortyTwo" } ] }
  13. Source: https://forum.dtw.tools/d/29-easycodeit-expression-parser-download-available You can post your test results here, but I encourage you to post it in the dedicated forum topic if possible, thank you!
  14. Try "Process Hacker", it's similar to PE but it's more modern and open-source. It has a kill option which uses a kernel driver, it is the ultimate kill-switch, even capable of killing AVs
  15. Don't trust the AV, in my experience exceptions are wonky and are a hit-or-miss most of the time, I have had many of my files quarantined even after adding an exception. It has been many years since I have used an AV so don't know if things have improved. Try turning it off entirely, and maybe uninstall it to be 100% sure. If the issue doesn't occur, you have your answer.
  16. @jchd Wow, that's even worse. I read some stuff about SEE earlier today and their licensing terms don't allow redistributing the source or even the binaries for any purpose other than for use in a program. And to put salt on the wound, they have been hosting it on same server too At this point I am thinking it was a deliberate decision and they hoped who ever used that API would pay the fee... perhaps after using it as an unofficial free trial.
  17. @jchd So if I am understanding correctly, they exposed two APIs which practically do the same thing but locked one behind a paywall?
  18. Interesting, I assume there's a good reason behind it? Or did they just not want to hassle with an extra layer of maintenance?
  19. For a bit more complex storage I would use JSON There are a few JSON UDFs, you can use them to create JSON objects and manually read/write them to your files. If the storage is more like a database I would consider SQLite, which is supported by the official UDF in AutoIt
  20. It's best not to make your own password manager, it is incredibly hard and time consuming to patch all the holes... not counting the effort you'd need to go through to make it usable, especially outside Windows computers, like your phone. Just use KeePass, it's a secure and open-source password manager with all of the features you'd need, there are clients for Android and the main program itself is cross-platform. If you want to store files in a secure way, try VeraCrypt (TrueCrypt's defacto successor).
  21. Just loop through it and keep track of the lower number you have encountered till now. I don't think there is a more efficient way to do it without the array being sorted.
  22. Sorry for the off-topic subject, but I recall a very similar desktop "game" which looks nearly identical to the JS game, infact both of them aren't really games, it's just a bunch of fish moving It was many many years ago and I felt nostalgic, so thought I'd share. If anyone knows what it's called then they can share it with me.
  23. Don't think so, probably no one bothered to implement it due to low demand. This is one of the features that will be included in ECI
  24. Kind of surprised that no one has mentioned using a JSON UDF yet. That's the proper way to do it unless you are really sure that you won't need to do anything else with the response.
  25. It's an error to combine both $FO_UTF8* and $FO_BINARY, use only one of them. Since C++ is basically C with a lot of extra bells and whistles, it would be an array of `char` (char[]). The `char` type represents a single byte and with an array of them we can represent any binary value. Sorry about the C# stuff, I have no idea as I have never used it. OOP languages tend to implement it as a buffer or stream class/object/thing. JS for example has ArrayBuffer.
×
×
  • Create New...