kevingy Posted January 25, 2010 Share Posted January 25, 2010 Unless it's undocumented, I don't see a AutoItX method that will allow me to make a call to run an AutoIt3 script from within my application. When I started looking into AutoItX, I expected to see two methods: AU3_RunScript(LPCWSTR szScript, bool bBlock, long nTimeout) and AU3_RunScriptFile(LPCWSTR szPath, bool bBlock, long nTimeout) to allow my application to run pre-written (from files) or dynamically-generated (in memory) AutoIt3 scripts. Without these two methods, isn't AutoItX nothing more than a high-level WIN32 API wrapper? Can't all languages listed in the AutoItX Introduction make calls into WIN32 API without AutoItX? Granted, the AutoItX API is clean and straightforward, but coding to it requires me to recompile my application when the scripts need to change rather than just updating the script. Am I missing something? I hope I am! I'd really like to use AutoIt3/AutoItX in my application. Kevin Link to comment Share on other sites More sharing options...
AdmiralAlkex Posted January 25, 2010 Share Posted January 25, 2010 (edited) Sorry to burst your bubble, but if you want to run AutoIt scripts, you have to use AutoIt. AutoItX doesn't have the interpreter. If you really want to run scripts, then you could distribute AutoIt3.exe with your app and use it to run your scripts in au3 or a3x form. Edit: Clarity Edited January 25, 2010 by AdmiralAlkex .Some of my scripts: ShiftER, Codec-Control, Resolution switcher for HTC ShiftSome of my UDFs: SDL UDF, SetDefaultDllDirectories, Converting GDI+ Bitmap/Image to SDL Surface Link to comment Share on other sites More sharing options...
kevingy Posted January 25, 2010 Author Share Posted January 25, 2010 Sorry to burst your bubble, but if you want to run AutoIt scripts, you have to use AutoIt. AutoItX doesn't have the interpreter.I've already determined that AutoItX doesn't include the interpreter. The intention of my post was to ask, "Shouldn't it?" I suggest adding the interpreter to a version of AutoItX, or perhaps creating a separate product for just this purpose - perhaps AutoItE: AutoIt Embedded. Is the souce available? I'll write it and contribute it.If you really want to run scripts, then you could distribute AutoIt3.exe with your app and use it to run your scripts in au3 or a3x form.I really want to run scripts, but I'd prefer not to distribute AutoIt3.exe. I'd prefer to run scripts in my own process space rather than having to essentially shell out to another external application. At the end of the day, if that's not an option, I'll have to do one of two things I'd prefer not to do: either shell out to AutoIt.exe or use something other than AutoIt. The trick will be determining which I prefer not to do less. Link to comment Share on other sites More sharing options...
AdmiralAlkex Posted January 25, 2010 Share Posted January 25, 2010 I've already determined that AutoItX doesn't include the interpreter. The intention of my post was to ask, "Shouldn't it?" I suggest adding the interpreter to a version of AutoItX, or perhaps creating a separate product for just this purpose - perhaps AutoItE: AutoIt Embedded. Is the souce available? I'll write it and contribute it.Sorry then, maybe I missunderstood. On the downloads page you will see "Previous versions archive". In there you will find autoit-v3.1.0-src.exe, which is the only code release, but it's 5 years old and I don't know if AutoItX is there or even existed at all at that time.You could make a "feature request" by going to the BugTracker link at the top of the forum and see what the developers say. .Some of my scripts: ShiftER, Codec-Control, Resolution switcher for HTC ShiftSome of my UDFs: SDL UDF, SetDefaultDllDirectories, Converting GDI+ Bitmap/Image to SDL Surface Link to comment Share on other sites More sharing options...
Richard Robertson Posted January 25, 2010 Share Posted January 25, 2010 I'm sure the devs have already dismissed this idea. It's not an uncommon question. Link to comment Share on other sites More sharing options...
kevingy Posted January 26, 2010 Author Share Posted January 26, 2010 I'm sure the devs have already dismissed this idea. It's not an uncommon question.I did a brief search for previous requests for this. Do you know why they have dismissed it? It seems like a logical request - to be able to embed the AutoIt scripting engine into an application. Link to comment Share on other sites More sharing options...
Richard Robertson Posted January 26, 2010 Share Posted January 26, 2010 It would require the entire interpreter to be included in the dll, and that is not really what AutoItX was designed to be. AutoItX is a lightweight way to access certain functions without using AutoIt. Also keep in mind that AutoIt is not thread ready. Any multithreaded application that called this "embedded" version would likely run into issues. 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