Jump to content
Sign in to follow this  
kjactive

New tool - a PreProcessor

Recommended Posts

To Mr. Nice guy

I suddenly remembered a testing macro function that was previous removed but could do the trick, 'Save_Tmp' - do save two scripts in filein local path ( contain all used Functions and constants ), these are not preprocessed just plain scripts that can exchenge all other UDF's ( insert Constants first ) - This function is reinstalled, an example macro script is included 'PreProcess into Lists' tjek it out...

Update Rev. 4.1.2.8

1.Bug fix the .a3x wrap failed to do testing from the 'Run Test' control - fixed...

2.Remove the exit on load failure in Intuition model...

3.ReInstalled a testing macro function - Save_Tmp, do save two temporary scripts into local script path ( all Constants and functions used ), not documented in topics...

4.Bug fix - Preferences changes was not all readin and some changes not valid before an exit - fixed...

5.Changed the 'New process' menu not to start a preprocess action if the Preferences control 'PreProcess at startup' is unchecked - Just do a filein, the 'Process' control do still starts the PreProcess action right on...

Download the total system with macro examples from site:

http://www.fritidshjemmet.com/Au3PP/Au3PP.zip

Or just download the x86 model - No need for special install processes...

http://www.fritidshjemmet.com/Au3PP/Au3PP.exe

or wait to the autoupdate tricker...

that's all folks

kjactive Posted Image

Edited by kjactive

Share this post


Link to post
Share on other sites

Thank you my good man. I'll check it out

Mr. Nice Guy? Not so much!


George

Question about decompiling code? Read the decompiling FAQ and don't bother posting the question in the forums.

Be sure to read and follow the forum rules. -AKA the AutoIt Reading and Comprehension Skills test.***

The PCRE (Regular Expression) ToolKit for AutoIT - (Updated Oct 20, 2011 ver:3.0.1.13) - Please update your current version before filing any bug reports. The installer now includes both 32 and 64 bit versions. No change in version number.

Visit my Blog .. currently not active but it will soon be resplendent with news and views. Also please remove any links you may have to my website. it is soon to be closed and replaced with something else.

"Old age and treachery will always overcome youth and skill!"

Share this post


Link to post
Share on other sites

Hi everyone!

I have a problem with Au3PP. This code is not properly handling Au3PP:

#include <StructureConstants.au3>
MsgBox (0, '', $tagWIN32_FIND_DATA)

In constant $tagWIN32_FIND_DATA adds extra spaces.

Constant $tagWIN32_FIND_DATA before:

"dword dwFileAttributes; dword ftCreationTime[2]; dword ftLastAccessTime[2]; dword ftLastWriteTime[2]; dword nFileSizeHigh; dword nFileSizeLow; dword dwReserved0; dword dwReserved1; wchar cFileName[260]; wchar cAlternateFileName[14]"

Constant $tagWIN32_FIND_DATA after Au3PP:

"dword dwFileAttributes; dword ftCreationTime [2 ]; dword ftLastAccessTime [2 ]; dword ftLastWriteTime [2 ]; dword nFileSizeHigh; dword nFileSizeLow; dword dwReserved0; dword dwReserved1; wchar cFileName [260 ]; wchar cAlternateFileName [14 ]"
Edited by Marrio

Share this post


Link to post
Share on other sites

Hallo Marrio

Yes I noticed that one too, the process trouble with structures is that there are comment and text inclose characters inbetween commands that do a preprocess handle real tricky but feather more I have not found the pattern yet as it seems to me a little randomly and as this preprocessor is written in autoit3 beta I must assume that there can be bugs in the autoit3 itself but I work on it in the next 'todo list' update - This failure however do not produce mallfunction only a few extra characters to readin before action but still au3pp do squize weight and optimize speed a lot - thanks for letting me know...

kjactive Posted Image

Share this post


Link to post
Share on other sites

Update to Rev. 4.1.2.9

This update is mostly bug fixes and some vital x64 bit architecture improvements as I'm now running on both systems and had a change to #%¤/ test the Au3PP_x64 version

1.Bug fix, Updated the x64 system as I didn't previous had a change to test this compile - overall fixed...

2.Add a notification on architecture used ( x64 / x86 )...

3.add support for x64 compression if MPress.exe is located in autoit3 or aut2exe drawers...

4.Rewrote the actually preprocess functions to gain ( actually a lot of ) speed...

5.Added a new preferences option, _x64 add - all x64 architecture compiles do now get automatically added an _x64 to the execute name...

6.Bug fix - Edit makefile script didn't visual updated the main intuition with /NoProcess keyword - fixed...

7.Bug fix - a bug in the resource update 'Productname' & 'ProductVersion' could not be updated - fixed...

8.Add the -r -s option to the MPress.exe compression when the compression rate is upto default...

9.Automatically change to Aut2exe_x64.exe when Au3pp is running a compile wrap in x64 architecture...

10.Changed font size in the macroediter to larger size...

11.Bug fix - Removed the 'preprocess characters around operators' bug that 'Marrio' discovered - Fixed...

12.Add x64 support to the autoupdate script...

Download totally system with macro scripts and all architectures of Au3PP from site - Zip file, No installation needed...

Au3PP Preprocessor

Or just download the x86 model...

http://www.fritidshjemmet.com/Au3PP/Au3PP.exe

or wait to the autoupdate tricker...

that's all folks

kjactive Posted Image

Edited by kjactive

Share this post


Link to post
Share on other sites

the cold december month in Copenhagen is the time to stay indoor, drink hot coffie and do some programming - scripting PreProcessor Au3PP update to Rev. 4.1.3.0

1.Changed 'Remove temporary script' the ( /PP keyword ) value to 'Remove' as default...

2.Bug fix - Reprocess command ( Ctrl+Shift+R ) could produce failure on HotKeyset included functions at second pass - fixed...

3.Included that au3pp can use special setup paths both to local scripts as Au3pp itself - read 'special ini script setup' in topics...

4.Added two paths to the macrocommand 'Relativepath' ( Local work path ) - %Au3% ( autoit3 system path ) & %User% ( User included UDF path )

5.Add a new macro command - 'InitToDefault', Suprress all automatically processes and init preprocessor to default value...

6.Changed the MacroEditer text ones more to 10 / 700 / as Bold...

7.Added an 'Fastkey Editer' to make easy ajustment to the include / remove macro scripts attachments option - installed under the Macro menu...

8.Changed the macro script fastkey attachment process ( Alt+F1 to F12 ) and included F12 too...

Download the compleate system with macro examples and the Au3PP_x64 version...

Compleate Preprocessor

Download only the x86 version

x86 PreProcessor version

or wait to the autoupdate process tricker

Free to use, make suggestion, comment or bugs reports - no installation needed, comes with topics, preprocessed script and Macro examples...

kjactive :x

Share this post


Link to post
Share on other sites

Took a peek at your code ... CreateLists() :x

I'm sure that one can be collapsed down significantly.

(Thinking recursive function here.)


"Straight_and_Crooked_Thinking" : A "classic guide to ferreting out untruths, half-truths, and other distortions of facts in political and social discussions."
"The Secrets of Quantum Physics" : New and excellent 2 part documentary on Quantum Physics by Jim Al-Khalili. (Dec 2014)

"Believing what you know ain't so" ...

Knock Knock ...
 

Share this post


Link to post
Share on other sites

Hallo MvGulik

Took a peek at your code ... CreateLists() :blink:

Absolute true that function do look ord - BUT the real isue here is speed - in previous versions the Createlists() function was very effition written with lots of function calls but that slowed down the listing process a lot actually, this one function do now make a scan for all #includes / #subincludes used, make lists of all available functions, all available constants, make a copy of all functions available into the temporary space area in only 1 or 2 seconds as the previous Createlists() was about 9 to 10 seconds to do the same process - That's why. Afterall speed is my main overall concern and I'm constant trying to make Au3PP preprocess handle faster but there is a lot of checking going around under the hood to be concerned about as Autoit3 a typeless 3.level language, scripts could be written in that many ways...

Rght now I'm working on improveing the buildin macro language that do make programming a lot easyer if one do like me - work on lots of different projects over some time, automatically install all scripts in a project right as previous work, make backup when done, compile in the same manner to same location - PreProcessing is only one goil the other is to keep track and make security backup on all my projects during time...

kjactive :x

Edited by kjactive

Share this post


Link to post
Share on other sites

... #includes / #subincludes used, make lists of all available functions, all available constants, ...

Aha, was thinking it was only doing #includes processing. (was quick peek :x )

If you include some additional code-comment in your next version. I might be tempted to see if I can crunch it down a bit (without los of speed). (If you like of course.)

Edited by MvGulik

"Straight_and_Crooked_Thinking" : A "classic guide to ferreting out untruths, half-truths, and other distortions of facts in political and social discussions."
"The Secrets of Quantum Physics" : New and excellent 2 part documentary on Quantum Physics by Jim Al-Khalili. (Dec 2014)

"Believing what you know ain't so" ...

Knock Knock ...
 

Share this post


Link to post
Share on other sites

Aha, was thinking it was only doing #includes processing. (was quick peek ;) )

If you include some additional code-comment in your next version. I might be tempted to see if I can crunch it down a bit (without los of speed). (If you like of course.)

Well I did send a mail with attachment direcly to your address in this forum for about 2 weeks ao

kjactive :)

Share this post


Link to post
Share on other sites

Well I did send a mail with attachment direcly to your address in this forum for about 2 weeks ao

kjactive :)

No, You send me a PM about 2 months ago. Directly after that message of mine your revering to. And if I remember correctly I also answered that PM message of yours. I also distinctly remember something about additional code comments. Which was unfortunately ignored. Which is a shame, as recoding something while your not sure about what is for what is not a easy or fun job. And the function where talking about was pretty loaded.

Now why you drop this in the forum. Instead of just asking me trough PM whats up, or if I had a change to look at your code, beats me. But thats your prerogative.

Edited by iEvKI3gv9Wrkd41u

"Straight_and_Crooked_Thinking" : A "classic guide to ferreting out untruths, half-truths, and other distortions of facts in political and social discussions."
"The Secrets of Quantum Physics" : New and excellent 2 part documentary on Quantum Physics by Jim Al-Khalili. (Dec 2014)

"Believing what you know ain't so" ...

Knock Knock ...
 

Share this post


Link to post
Share on other sites

Hej Ontosy

That's because Au3PP can't find the #included Library, there are three search paths buildin - autoit3 #includes, scripts local path and if #include line contain a valid path, well you use a variabel - try evaluate this with Execute()

I do not maintain Au3PP at the moment durring time limit but I will sometime rewrite the preprocess part...

Kjactive

Share this post


Link to post
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
Sign in to follow this  

×
×
  • Create New...