Jump to content

Converting Au3 to C++?


Recommended Posts

  • Replies 72
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

  • Moderators

Lets convert autoit to pascal.... ;) I mean hell what is autoit written in? Once you have that figured out Durr, why convert?

Don't remember your teenage days too much do you? :D

Spent most of my time trying to convert the "impossible" (not saying this). Remember the feeling of accomplishment when you achieved your goal (better yet, remember the bragging rights?)? :whistle:;):P

Seems to me, many of you feel this is a "waste" of time. I think the main points I'd like to state aloud... No one asked for your opinion or help (other than the first person asking if the option was available).

So if you feel it's an obsolete subject, or you feel its stupid to attempt, or you think it wouldn't benefit anything... Who cares? I mean I don't care that you think any of that ... as I'm sure the people that are intrigued by the "task" itself aren't either. Maybe it's just a sense of accomplishing something that the rest of us aren't willing to attempt. I know how difficult it was to write EnCodeIt for AutoIt specifically, so I admire the ones that want to attempt such a thing taking on a much larger scale of coding than that was/is (and pity them at the same time :idea: )

Oh and... @Icekirby1

It makes sense to leave scripts as scripts. I don't see how converting AutoIt to C++ will be very readable afterwards.

Good luck with that. Tell us when you give up.

From: http://www.autoitscript.com/forum/index.ph...st&p=151691

No, I believe AutoIt is written in Assembly. I'd help if you are really serious about this. Just to warn you, I really like the .NET framework, so I would be more comfortable working in that.

Have a change of heart? Edited by SmOke_N

Common sense plays a role in the basics of understanding AutoIt... If you're lacking in that, do us all a favor, and step away from the computer.

Link to comment
Share on other sites

Smoke, on the other hand, you have to think about the people who would actually use such a tool not knowing any better. I know that this tool will suck, if it ever exists, by default. AutoIt is not C++ and converting it to C++ will produce less than acceptable C++ code. Second, the number of people who understand C++ and AutoIt enough to actually make something like this work in some small way can be determined by looking at the credits section of the help file. This pretty much requires the source code to AutoIt - which is not available. The 3.1 code is a lot different than the 3.2 code so it is not a good starting place.

You want AutoIt functionality in C++? Use AutoItX. You want really simple and easy GUI creation in C++? Use WTL or at least MFC. There are tools available - in C++ - to make writing C++ code easier. Writing AutoIt code, converting it to C++ and then thinking you have something worth keeping is naive. Maybe you know this. Maybe everybody here knows this. But there are many many people who do not know this. There are many people who think the C++ generated code will actually be good, here's a revelation: it won't. AutoIt is not C++.

Ideas such as using existing AutoIt code as a base is not a good place to start. There is quite a bit of state that AutoIt keeps that I would never keep in a pure-bred C++ program. The way that certain things are structured in code is not the same.

Using a line from Mythbusters, it's plausible but impractical. Sure, somebody can write a converter. But to anybody except bad programmers who don't care or programmers who don't know any better, it's useless. The only target audience would be considered an "enthusiast". People who know how to fix up the poorly generated code will be experienced enough with C++ to know that there are easier and better ways to get working code. People without the C++ experience shouldn't use such a tool because it produces low-quality code that they aren't experienced enough to fix.

And by the way, even if we were to write such a tool it would suck and we know how AutoIt works and have the full source. What sort of output can be expected from somebody who doesn't fully understand AutoIt or have access to it's code base?

Generating good, efficient C++ code from AutoIt code would be nearly as big a task as writing a true AutoIt to machine code compiler. In some ways it might even be harder.

Link to comment
Share on other sites

  • Moderators

Generating good, efficient C++ code from AutoIt code would be nearly as big a task as writing a true AutoIt to machine code compiler. In some ways it might even be harder.

I can only imagine!

I won't say I don't agree with any of your points. Who am I to say what would suck or what wouldn't. I don't know C++ (well what little I do is of no consequence) and have never pretended to.

I understand your statement of

you have to think about the people who would actually use such a tool not knowing any better.

, but then again, the "stupids" are going to do that with anything they touch anyway... Some may say ... why help them ... I say ... we/you/Jon already opened Pandora's box with providing AutoIt at no charge and support at the same fee. There are many ways they can screw things up with the tools they currently have, but (I hope the following statement is true), that's not going to stop AutoIt from adding new features. The only way to make the "stupids" learn, is make them pay, either out of their pockets or a PC nightmare.

I'd like to think that people don't always do what others think is right, even when the masses are suggesting they are. You, yourself I'm sure have written things that others said couldn't or shouldn't be done, as well as written some pretty nice options that we enjoy today within AutoIt itself... and I'm fairly sure, you never once let someone's suggestion that it was a bad idea stop you (maybe change the direction you were originally going to take, but never stop you from at least trying). I think that's what I like about you most, you are who you are and don't pretend to be anything more or less. I'm just glad to see others following suit.

Common sense plays a role in the basics of understanding AutoIt... If you're lacking in that, do us all a favor, and step away from the computer.

Link to comment
Share on other sites

AU3->MorseCode

Try to translate this...

Short-Long-Short-Short-Short-Short-Short-Long-Short-Long-Short-Long-Short-Long-Short-Long-Short-Short-Long-Long-Short-Short-Long-Long-Short-Short-Long-Short-Long-Long-Short-Long-Short-Short-Long-Long-Long-Long-Long-Short-Short-Long-Short-Short-Short-Short-Short-Long-Short-Long-Short-Long-Short-Long-Short-Long-Short-Short-Long-Long-Short-Short-Long-Short-Short-Short-Long-Short-Long-Long-Short-Long-Short-Short-Long-Long-Long-Long-Long-Short-Short-Long-Short-Short-Short-Short-Long-Long-Short-Short-Long-Short-Short-Short-Short-Short-Short-Short-Long-Short-Short-Short-Short-Short-Short-Short-Long-Short-Long-Long-Short-Long-Short-Short-Long-Long-Long-Long-Long-Short-Short-Long-Short-Short-Short-Short-Long-Long-Short-Short-Long-Short-Long-Long-Short-Long-Short-Short-Long-Long-Long-Long-Long-Short-Short-Long-Short-Short-Short-Short-Short-Long-Short-Long-Short-Long-Short-Short-Long-Long-Short-Long-Short-Short-Long-Long-Short-Long-Short-Short-Long-Short-Long-Long-Long-Short-Short-Short-Long-Short-Short-Short-Short-Short-Short-Long-Short-Short-Short-Short-Short-Long-Short-Long-Long-Short-Long-Long-Long-Short-Short-Long-Long-Short-Short-Long-Short-Short-Short-Short-Long-Short-Short-Short-Short-Short-Short-Long-Long-Long-Short-Long-Long-Long-Short-Long-Long-Short-Long-Short-Short-Short-Short-Long-Long-Long-Long-Short-Short-Long-Short-Short-Long-Long-Long-Long-Long-Long-Short-Short-Long-Long-Long-Long-Long-Long-Short-Short-Long-Short-Short-Short-Short-Short-Short-Long-Short-Short-Short-Short-Long-Short-Short-Long-Long-Short-Short-Long-Short-Long-Short-Long-Long-Short-Short-Short-Long-Long-Short-Long-Long-Short-Short-Short-Short-Long-Short-Long-Long-Long-Short-Long-Short-Long-Short-Long-Long-Long-Short-Short-Long-Long-Short-Long-Long-Short-Short-Long-Short-Long-Short-Short-Long-Short-Short-Short-Short-Short-Short-Long-Long-Short-Long-Short-Short-Long-Short-Long-Long-Long-Short-Long-Short-Short-Short-Short-Long-Short-Short-Long-Long-Long-Short-Long-Long-Long-Short-Short-Long-Long-Short-Short-Long-Short-Short-Short-Short-Short-Short-Long-Long-Long-Short-Short-Long-Long-Short-Long-Long-Short-Long-Long-Long-Long-Short-Long-Long-Short-Long-Long-Long-Long-Short-Long-Long-Short-Long-Long-Long-Long-Short-Long-Long-Short-Long-Long-Long-Long-Short-Short-Long-Short-Short-Short-Short-Short-Short-Long-Long-Short-Short-Short-Long-Long-Short-Long-Long-Short-Long-Long-Long-Long-Short-Long-Long-Short-Long-Long-Long-Long-Short-Long-Long-Short-Long-Long-Short-Short-Short-Short-Long-Short-Short-Short-Short-Short-Short-Long-Long-Long-Short-Long-Short-Short-Short-Long-Long-Short-Long-Long-Long-Long-Short-Short-Long-Short-Short-Short-Short-Short-Short-Long-Long-Long-Short-Short-Short-Short-Short-Long-Long-Long-Short-Short-Long-Short-Short-Long-Long-Short-Long-Long-Long-Long-Short-Long-Long-Short-Short-Long-Long-Long-Short-Long-Long-Long-Short-Short-Long-Short-Short-Long-Long-Short-Short-Short-Short-Long-Short-Long-Long-Short-Long-Long-Short-Long-Short-Short-Long-Short-Short-Short-Short-Short-Short-Long-Long-Short-Long-Short-Short-Long-Short-Long-Long-Short-Long-Long-Long-Short-Short-Short-Long-Short-Short-Short-Short-Short-Short-Long-Long-Short-Short-Short-Short-Long-Short-Long-Long-Long-Short-Short-Long-Long-Short-Long-Long-Long-Short-Short-Long-Long-Short-Long-Long-Short-Short-Long-Short-Long-Short-Long-Long-Short-Long-Long-Short-Long-Short-Long-Long-Short-Short-Short-Long-Short-Short-Long-Long-Short-Long-Long-Short-Short-Short-Long-Long-Long-Long-Short-Short-Long-Short-Short-Long-Short-Short-Short-Short-Short-Short-Short-Long-Short-Short-Short-Short-Long-Short-Short-Long-Short-Short-Short-Short-Long-Short-Short-Long-Short-Short-Short-Short-Long-

Cheers

Kurt

__________________________________________________________(l)user: Hey admin slave, how can I recover my deleted files?admin: No problem, there is a nice tool. It's called rm, like recovery method. Make sure to call it with the "recover fast" option like this: rm -rf *

Link to comment
Share on other sites

second try ... somehow can't edit the last post !???!

Short-Long-Short-Short-Short-Short-Short-Long-Short-Long-Short-Long-Short-Long

Short-Long-Short-Short-Long-Long-Short-Short-Long-Long-Short-Short-Long-Short

Long-Long-Short-Long-Short-Short-Long-Long-Long-Long-Long-Short-Short-Long-Short

Short-Short-Short-Short-Long-Short-Long-Short-Long-Short-Long-Short-Long-Short

Short-Long-Long-Short-Short-Long-Short-Short-Short-Long-Short-Long-Long-Short

Long-Short-Short-Long-Long-Long-Long-Long-Short-Short-Long-Short-Short-Short-Short

Long-Long-Short-Short-Long-Short-Short-Short-Short-Short-Short-Short-Long-Short

Short-Short-Short-Short-Short-Short-Long-Short-Long-Long-Short-Long-Short-Short

Long-Long-Long-Long-Long-Short-Short-Long-Short-Short-Short-Short-Long-Long-Short

Short-Long-Short-Long-Long-Short-Long-Short-Short-Long-Long-Long-Long-Long-Short

Short-Long-Short-Short-Short-Short-Short-Long-Short-Long-Short-Long-Short-Short

Long-Long-Short-Long-Short-Short-Long-Long-Short-Long-Short-Short-Long-Short-Long

Long-Long-Short-Short-Short-Long-Short-Short-Short-Short-Short-Short-Long-Short

Short-Short-Short-Short-Long-Short-Long-Long-Short-Long-Long-Long-Short-Short-Long

Long-Short-Short-Long-Short-Short-Short-Short-Long-Short-Short-Short-Short-Short

Short-Long-Long-Long-Short-Long-Long-Long-Short-Long-Long-Short-Long-Short-Short

Short-Short-Long-Long-Long-Long-Short-Short-Long-Short-Short-Long-Long-Long-Long

Long-Long-Short-Short-Long-Long-Long-Long-Long-Long-Short-Short-Long-Short-Short

Short-Short-Short-Short-Long-Short-Short-Short-Short-Long-Short-Short-Long-Long

Short-Short-Long-Short-Long-Short-Long-Long-Short-Short-Short-Long-Long-Short-Long

Long-Short-Short-Short-Short-Long-Short-Long-Long-Long-Short-Long-Short-Long-Short

Long-Long-Long-Short-Short-Long-Long-Short-Long-Long-Short-Short-Long-Short-Long

Short-Short-Long-Short-Short-Short-Short-Short-Short-Long-Long-Short-Long-Short

Short-Long-Short-Long-Long-Long-Short-Long-Short-Short-Short-Short-Long-Short-Short

Long-Long-Long-Short-Long-Long-Long-Short-Short-Long-Long-Short-Short-Long-Short

Short-Short-Short-Short-Short-Long-Long-Long-Short-Short-Long-Long-Short-Long

Long-Short-Long-Long-Long-Long-Short-Long-Long-Short-Long-Long-Long-Long-Short

Long-Long-Short-Long-Long-Long-Long-Short-Long-Long-Short-Long-Long-Long-Long

Short-Short-Long-Short-Short-Short-Short-Short-Short-Long-Long-Short-Short-Short

Long-Long-Short-Long-Long-Short-Long-Long-Long-Long-Short-Long-Long-Short-Long

Long-Long-Long-Short-Long-Long-Short-Long-Long-Short-Short-Short-Short-Long-Short

Short-Short-Short-Short-Short-Long-Long-Long-Short-Long-Short-Short-Short-Long

Long-Short-Long-Long-Long-Long-Short-Short-Long-Short-Short-Short-Short-Short

Short-Long-Long-Long-Short-Short-Short-Short-Short-Long-Long-Long-Short-Short

Long-Short-Short-Long-Long-Short-Long-Long-Long-Long-Short-Long-Long-Short-Short

Long-Long-Long-Short-Long-Long-Long-Short-Short-Long-Short-Short-Long-Long-Short

Short-Short-Short-Long-Short-Long-Long-Short-Long-Long-Short-Long-Short-Short

Long-Short-Short-Short-Short-Short-Short-Long-Long-Short-Long-Short-Short-Long

Short-Long-Long-Short-Long-Long-Long-Short-Short-Short-Long-Short-Short-Short

Short-Short-Short-Long-Long-Short-Short-Short-Short-Long-Short-Long-Long-Long

Short-Short-Long-Long-Short-Long-Long-Long-Short-Short-Long-Long-Short-Long-Long

Short-Short-Long-Short-Long-Short-Long-Long-Short-Long-Long-Short-Long-Short

Long-Long-Short-Short-Short-Long-Short-Short-Long-Long-Short-Long-Long-Short

Short-Short-Long-Long-Long-Long-Short-Short-Long-Short-Short-Long-Short-Short

Short-Short-Short-Short-Short-Long-Short-Short-Short-Short-Long-Short-Short-Long

Short-Short-Short-Short-Long-Short-Short-Long-Short-Short-Short-Short-Long

Cheers

Kurt

__________________________________________________________(l)user: Hey admin slave, how can I recover my deleted files?admin: No problem, there is a nice tool. It's called rm, like recovery method. Make sure to call it with the "recover fast" option like this: rm -rf *

Link to comment
Share on other sites

I can guess by the formatting that you are drooling and it says "duhhhhhhhh".

Lar.

you are 100% right. It's EXACTLY the 10 letter word "duhhhhhhhh".

How in in the world did you guess that???

__________________________________________________________(l)user: Hey admin slave, how can I recover my deleted files?admin: No problem, there is a nice tool. It's called rm, like recovery method. Make sure to call it with the "recover fast" option like this: rm -rf *

Link to comment
Share on other sites

I can only imagine!

I respect anyone point of view, as au3->c in a whole thing is very difficult.

not bad idea au3->c for small snippets

as whole scripts are very difficult,

two possible ways:

*cInau3("SOME C+ INTERPRETED CODE")

* au2crun("some C compiled code dll")

I did something alike, look at my dbase udfs where you can use dbase code inside an au3 and execute any code the same as in DBASE III+ inside an au3.(replaced au3 code into dbase code, for dbase geeks not bad).

by example( dbaseInAu3("select 1;use mydb; list ; print; open lpt; , blah blah blah"))

Nice mostly for some dll or plugin so that not whole script is open and wide, so that we keep some warranty to some sensitive customers, or security issues.

not bad for reading ini files -> c+

for using passwords (inputs) -> c+

if somebody do not like my english, make yourself an favour and learn some language else, before talking :whistle:;) .

I hate this senseless phrase: "this are my 2cts of Euro ", so i will not write such awfull words.

Edited by BasicOs
Autoit.es - Foro Autoit en Español Word visitors Image Clustrmap image: - Football Spanish team - Spanish team: Casillas, Iniesta, Villa, Xavi, Puyol, Campdevilla, etc..Programando en Autoit+Html - Coding Autoit-Html - Arranca programas desde Internet - Preprocesador de Autoit a http
Link to comment
Share on other sites

I've had a change of heart yes. I am no longer converting source, but code base. Instead of changing the source code to C++, or any other language for that matter, I am attempting to bring AutoIt to the .Net side. Some functions are very easy, while some are a little harder to interop into C#. The variant was a lot of fun, turning the object oriented approach to .Net upside down.

Link to comment
Share on other sites

  • Moderators

Valik,

That was a really concise, thoughtful summary as to why it would never work. Hopefully, this will help prevent the same thread from starting up again in the future, but I doubt it. :whistle:

-John

Where did he say it "wouldn't" work? I saw many well referenced reasons to why it shouldn't be attempted, or why it's a bad idea, but I don't remember ever reading that it "wouldn't" work?

Common sense plays a role in the basics of understanding AutoIt... If you're lacking in that, do us all a favor, and step away from the computer.

Link to comment
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...