Jump to content
Sign in to follow this  
jpm

Latest Beta

Recommended Posts

I'm having a problem with the 3.2.13.4 beta version. On some (well most) scripts I'm getting an "Unable to execute upx.exe to compress the stub file." error. I've checked security permissions and everthing is fine. If I replace only the 'AutoItSC.bin' file from the 3.2.13.3 beta distribution everything again compiles just fine. I'm compiling with F7 through SciTE4AutoIt3.

For background info, I updated by extracting the beta SFX distribution into my (manually cleared) AutoIt3 directory. I had previously installed the 3.2.12.1 production version, so my registry entries are intact. I updated to 3.2.13.3 in the same manner, so I don't think the method is at fault. I also tried extracting the Aut2Exe directory from the 3.2.13.4 installer distro with the same results.

Anyone else with this problem or any suggestions. I'm at a loss at the moment. I don't see how replacing one file can cause this problem. Can I provide any more information to help?

Vista Ultimate SP1 32-bit

Edited by wraithdu

Share this post


Link to post
Share on other sites

This seems to happen randomly and we can't figure out why. The best theory is that AV software holds the file open so that when UPX goes to execute, it can't open the file because the AV software still has it locked. My problem mostly went away when I stopped using a resident shield. However, it still happens very sporadically.

There's nothing obvious wrong in the code, so short of inserting an arbitrary sleep time into the code, we don't know what the problem is.

Share this post


Link to post
Share on other sites

The few google posts I found with this error seemed to point to a similar conclusion. I'm running NOD32 v3. I tried disabling the resident shield though and still get the same error. It's also puzzling why it happens for some scripts, but not all. And I haven't found any rhyme or reason to that either. I was trying directory paths with / without spaces, shorter vs longer path lengths, etc. Nothing really made a difference. Unlocker didn't seem to show any open handles on anything in my Aut2Exe or Temp folders.

I'll keep playing around.

As an alternative, can I permanently UPX the .bin file, or UPX the resulting EXE? Or will that break things?

Share this post


Link to post
Share on other sites

Just turning off a resident shield isn't enough, depending on the product. It may still be loaded, it just may be inactive. That doesn't mean it isn't interfering.

As for UPXing anything before compilation, that will not work.

Share this post


Link to post
Share on other sites

As for UPXing anything before compilation, that will not work.

Yep, that experiment failed miserably. UPX also barfs on the compiled EXE - "superfluous data between sections"

I'll see if I can fully unload my AV if that will make a difference. Thanks for the insight anyway.

Edited by wraithdu

Share this post


Link to post
Share on other sites

Let me ask you this, how reliably does this error manifest? Does it occur enough that you could reliably say it's fixed if I were to give you a handful of special builds with various tweaks in place to fix the issue? Because for me, it happens so infrequently it's impossible for me to actually test fixes against because it just doesn't happen enough for me to reliably say "it's fixed".

Share this post


Link to post
Share on other sites

This is the first time it's ever happened to me, but at the current state it is definitely reproduceable on a number of different scripts, every single time. If that's reliable enough for you, I'm willing to give it a shot.

EDIT -

Ok, I've got something. It seems to be tied to adding an icon. If I get rid of the AutoIt3Wrapper icon directive, then the scripts compile OK. Give you any clues?

Edited by wraithdu

Share this post


Link to post
Share on other sites

Other issue with latest beta [only!].... mistake at line 4030.

\AutoIt3\Beta\Include\IE.au3(4030,2) : ERROR: syntax error (illegal character)
    
    ^

P.S> I am experiencing the same issues with UPX while compiling...

Share this post


Link to post
Share on other sites

Other issue with latest beta [only!].... mistake at line 4030.

\AutoIt3\Beta\Include\IE.au3(4030,2) : ERROR: syntax error (illegal character)
    
    ^

P.S> I am experiencing the same issues with UPX while compiling...

You need to uninstall then reinstall, because that include file has not changed.

Share this post


Link to post
Share on other sites

Same UPX error over here "Unable to execute upx.exe to compress stub file". Virus scanner disabled. Aut2Exe.exe and AutoIt3Wrapper.exe both get the error... I just found it! It's the icon. Whenever the icon path is set, the upx.exe error message is displayed.

Rick

Edited by Koder

Share this post


Link to post
Share on other sites

Just a little more on this. Using these 2 AutoIt3Wrapper directives works with:

1.) beta 3.2.13.3

2.) beta 3.2.13.4 WITH the 3.2.13.3 AutoItSC.bin file

3.) beta 3.2.13.4 WITHOUT an icon

#AutoIt3Wrapper_UseUpx=n

#AutoIt3Wrapper_Run_After=upx.exe --best --compress-icons=0 --nrv2e --crp-ms=999999 "%out%"

If these are run with 3.2.13.4 AND an icon, then upx gives an error about "superfluous data between sections". There's very little on Google about this error, but here's the most I found -

http://www.donationcoder.com/Forums/bb/ind...ge;topic=9226.0

Edited by wraithdu

Share this post


Link to post
Share on other sites

wraithdu, none of that is really valid. You're playing outside the box. When testing something like this, you can't really use a 2nd-party program or custom settings beyond what Aut2Exe allows you to do. Otherwise, it's all rather pointless.

Share this post


Link to post
Share on other sites

Fair enough. Although most of what AutoIt3Wrapper does is to construct the the Aut2Exe commandline (besides it's own resource additions).

Anyway, the above test is equal to running UPX on the resultant compiled script. I get the same results and error message from UPX if I compile a script with an icon using Aut2Exe without UPX, then try to UPX the compiled script afterwards. The same procedure works fine in previous versions.

Share this post


Link to post
Share on other sites

I've isolated the problem and while I don't have a fix for it I've instructed Jon on how to remedy the situation.

Share this post


Link to post
Share on other sites

http://www.autoitscript.com/autoit3/files/beta/autoit

3.2.13.5 (24th July, 2008) (Beta)

AutoIt:

- Fixed #449: @SystemDir does not return SysWOW64 under X64 in 32-bit mode.

- Fixed #440: Fatal error when script ends with EOF (0x1A).

- Fixed: Error compiling with custom icons since last beta.

Share this post


Link to post
Share on other sites

http://www.autoitscript.com/autoit3/files/beta/autoit

3.2.13.6 (30th July, 2008) (Beta)

AutoIt:

- Fixed #475: StringSplit() with flag 2 and empty delimiter did not work correctly.

- Fixed #464: Example script for GUICtrlCreateAvi() did not work on Vista.

- Added #328: StringToASCIIArray(), StringFromASCIIArray() functions.

- Added: New flag to Run()/RunAs() to fix issue #415 (Adds new Constants.au3 constant: $STDIO_INHERIT_PARENT).

- Added: New flag to all Run functions for better CUI compatibility (Adds new Constants.au3 constant: $RUN_CREATE_NEW_CONSOLE).

- Changed #393: Documented that SoundSetWaveVolume() works differently in Windows Vista.

- Changed: PCRE regular expression engine updated to 7.7.

UDFs:

- Added: _ExcelHorizontalAlignSet, _ExcelFontSetProperties, _ExcelBookAttach (litlmike)

- Fixed: Excel Examples

- Added: _WinAPI_SetEndOfFile, _WinAPI_SetFilePointer (Zedna)

- Fixed #465: _DateTimeSplit if seconds omitted defaulted to -1, now defaults to 0

Aut2Exe:

- Added #460: More verbose UPX errors.

Share this post


Link to post
Share on other sites

This version needs some heavy testing of Run(), RunWait(), RunAs() and RunAsWait(). I changed those functions internally (in addition to the new flags) and may have broke things.

Share this post


Link to post
Share on other sites

Hiya, I think I love the following, but I have an issue with it.

- Added #328: StringToASCIIArray(), StringFromASCIIArray() functions.

I get:

+>14:40:48 Starting AutoIt3Wrapper v.1.10.1.7 Environment(Language:0409 Keyboard:00020409 OS:WIN_VISTA/Service Pack 1 CPU:X86)

>Running AU3Check (1.54.13.0) from:C:\Program Files\AutoIt3

C:\Users\*username*\Desktop\script.au3(59,38) : ERROR: StringToASCIIArray(): undefined function.

$msg_array = StringToASCIIArray($msg)

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^

C:\Users\*username*\Desktop\script.au3 - 1 error(s), 0 warning(s)

!>14:40:48 AU3Check ended.rc:2

>Exit code: 0 Time: 2.043

The little arrow ^ should point to the end of: ($msg)

And I switched AutoIt to "v3.2.13.6 (beta)" before programming that. Is it my computer/install or is something not 100% in this beta? (it's a beta, so maybe no suprise :P )

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...