Jump to content

Recommended Posts

Posted

Greetings everyone.

I have the most odd "feature" that I hope someone can share some light on.

Background

I'm writing a series of bundled self-installers at my company. I've been developing this system for the past couple of years using AutoIT and this is the first time I've come accross this particular issue.

Details

Imagine 2 programs that use the same AutoIT3Wrapper region. Only 1 small thing changes:

-> A "Run_After" call to bundle in a ZIP file

The Problem

One of my programs compiles perfectly. The wrapper stores the information correctly and in Explorer the icon is correct and the RES Fields show.

One of my programs compiles perfectly. The wrapper stores the information correctly but in Explorer the icon is not there and the RES Fields do not show.

Posted Image

Posted Image

I've found that the inclusion of a 475MB zip file causes all RES information to be excluded when looking at the file in Explorer. A check through ResHacker shows that it's all there in spirit. To prove this further I told the failed program to include the smaller 325MB file and it works a treat. Is there a space limit on Wrapper RES information that I'm missing? :)

Mallie

=> I found out it was a space issue whilst typing this message... Now I'll go looking for more info in the forum, in the mean time please tell me to shut up if I'm being stoopid :))

Are you telling me something I need to know or something I want to know?

Posted

Wrapper info is as follows:

; #INDEX# =======================================================================================================================
; Title .........: Self Installer v3.0.3
; Description ...: Self Install template for application install within ******
; Author ........: Pete Mallam
; Date...........: 10/03/2011
; ===============================================================================================================================

; >> DO NOT CHANGE!!!! <<
#region
#AutoIt3Wrapper_Version=beta
#AutoIt3Wrapper_UseUpx=n
#AutoIt3Wrapper_Res_Comment=******* Service Desk
#AutoIt3Wrapper_Res_Description=***** - Application Self Installer
://////=__=
#AutoIt3Wrapper_Res_Fileversion=3.0.3.293
#AutoIt3Wrapper_Res_FileVersion_AutoIncrement=n
#AutoIt3Wrapper_Res_LegalCopyright=******* (UK) 2011
#AutoIt3Wrapper_Au3Check_Stop_OnWarning=y
#AutoIt3Wrapper_Run_Tidy=y
#AutoIt3Wrapper_Run_After=C:\Workspace\Scripts\AutoIT\ResHacker.exe -add %out%, %out%, C:\Workspace\Icons\Misc\Download.png, rcdata, stage1, 0
#AutoIt3Wrapper_Run_After=C:\Workspace\Scripts\AutoIT\ResHacker.exe -add %out%, %out%, C:\Workspace\Icons\Misc\RemoveProgram.png, rcdata, stage2, 0
#AutoIt3Wrapper_Run_After=C:\Workspace\Scripts\AutoIT\ResHacker.exe -add %out%, %out%, C:\Workspace\Icons\Misc\AddProgram.png, rcdata, stage3, 0
#AutoIt3Wrapper_Run_After=C:\Workspace\Scripts\AutoIT\ResHacker.exe -add %out%, %out%, C:\Workspace\Icons\Misc\Run.png, rcdata, stage5, 0
#AutoIt3Wrapper_Run_After=C:\Workspace\Scripts\AutoIT\ResHacker.exe -add %out%, %out%, C:\Workspace\Scripts\AutoIT\*******.jpg, rcdata, logo, 0
#AutoIt3Wrapper_Run_After=C:\Workspace\Scripts\AutoIT\ResHacker.exe -add %out%, %out%, C:\Workspace\Scripts\AutoIT\London2.jpg, rcdata, banner, 0
#AutoIt3Wrapper_Run_After=C:\Workspace\Scripts\AutoIT\ResHacker.exe -add %out%, %out%, C:\Workspace\Scripts\AutoIT\Self Installers\admin.7z, rcdata, admin, 0
#AutoIt3Wrapper_Run_After=C:\Workspace\Scripts\AutoIT\ResHacker.exe -add %out%, %out%, C:\Workspace\Scripts\AutoIT\Self Installers\7_zip32.dll, rcdata, extract, 0
; >> CONFIGURABLE DATA FOLLOWS <<


; Program Icon ==================================================================================================================
#AutoIt3Wrapper_Icon=C:\Workspace\Icons\Misc\Adobe-Acrobat-Professional.ico ; This needs to point to the ICO file you wish to use
; ===============================================================================================================================

; RCDATA Elements ===============================================================================================================
; Details.......: Uses Resource Hacker to import external files into the compiled .EXE during the compilation process

; Syntax:
; #AutoIT3Wrapper_Run_After=[PATH TO RESHACKER.EXE] -add %out, %out, [PATH TO ZIP FILE], rcdata, [IDENTIFIER], [ITEM NUMBER]

; Examples:
; AutoIt3Wrapper_Run_After=C:\Program Files\Resource Hacker\ResHacker.exe -add %out%, %out%, C:\Scripts\Self Installers\DWG TrueView\dwg2011.7z, rcdata, package, 0
; #AutoIt3Wrapper_Run_After=C:\Program Files\Resource Hacker\ResHacker.exe -add %out%, %out%, C:\Scripts\Self Installers\vcr2008sp1.7z, rcdata, support, 1

#AutoIt3Wrapper_Run_After=C:\Workspace\Scripts\AutoIT\ResHacker.exe -add %out%, %out%, C:\Workspace\Scripts\AutoIT\Self Installers\Adobe Acrobat 10\Acrobat10Pro.7z, rcdata, package, 0

; ===============================================================================================================================

#endregion
; ===============================================================================================================================

Compiler Script:

>"C:\Program Files\AutoIt3\SciTE\AutoIt3Wrapper\AutoIt3Wrapper.exe" /prod /in "C:\Workspace\Scripts\AutoIT\Self Installers\Adobe Acrobat 10\Adobe-Acrobat10Professional.au3" /autoit3dir "C:\Program Files (x86)\AutoIt3"
+>14:12:22 Starting AutoIt3Wrapper v.2.0.1.24    Environment(Language:0409  Keyboard:00000809  OS:WIN_XP/Service Pack 3  CPU:X64 OS:X86)
>Running Tidy (2.1.0.0)  from:C:\Program Files\AutoIt3\SciTE\tidy
+>14:12:25 Tidy ended.rc:0
>Running AU3Check (1.54.19.0)  from:C:\Program Files\AutoIt3
+>14:12:26 AU3Check ended.rc:0
>Running:(3.3.6.1):C:\Program Files\AutoIt3\aut2exe\aut2exe.exe  /in "C:\Workspace\Scripts\AutoIT\Self Installers\Adobe Acrobat 10\Adobe-Acrobat10Professional.au3" /out "C:\Workspace\Scripts\AutoIT\Self Installers\Adobe Acrobat 10\Adobe-Acrobat10Professional.exe" /nopack /icon "C:\Workspace\Icons\Misc\Adobe-Acrobat-Distiller.ico" /comp 2
+>14:12:27 Aut2exe.exe ended.rc:0
>14:12:27 Performing the Program Resource Update steps:
...>Updating Program Version information.
+>14:12:28 Program Resource updating finished successfully.rc:0
+>14:12:28 Created program:C:\Workspace\Scripts\AutoIT\Self Installers\Adobe Acrobat 10\Adobe-Acrobat10Professional.exe
->14:12:28 Warning: This is an Unicode compiled script and will not run on Win9x/ME.
>Running:C:\Workspace\Scripts\AutoIT\ResHacker.exe -add C:\Workspace\Scripts\AutoIT\Self Installers\Adobe Acrobat 10\Adobe-Acrobat10Professional.exe, C:\Workspace\Scripts\AutoIT\Self Installers\Adobe Acrobat 10\Adobe-Acrobat10Professional.exe, C:\Workspace\Icons\Misc\Download.png, rcdata, stage1, 0
>C:\Workspace\Scripts\AutoIT\ResHacker.exe -add C:\Workspace\Scripts\AutoIT\Self Installers\Adobe Acrobat 10\Adobe-Acrobat10Professional.exe, C:\Workspace\Scripts\AutoIT\Self Installers\Adobe Acrobat 10\Adobe-Acrobat10Professional.exe, C:\Workspace\Icons\Misc\Download.png, rcdata, stage1, 0 Ended   rc:0
>Running:C:\Workspace\Scripts\AutoIT\ResHacker.exe -add C:\Workspace\Scripts\AutoIT\Self Installers\Adobe Acrobat 10\Adobe-Acrobat10Professional.exe, C:\Workspace\Scripts\AutoIT\Self Installers\Adobe Acrobat 10\Adobe-Acrobat10Professional.exe, C:\Workspace\Icons\Misc\RemoveProgram.png, rcdata, stage2, 0
>C:\Workspace\Scripts\AutoIT\ResHacker.exe -add C:\Workspace\Scripts\AutoIT\Self Installers\Adobe Acrobat 10\Adobe-Acrobat10Professional.exe, C:\Workspace\Scripts\AutoIT\Self Installers\Adobe Acrobat 10\Adobe-Acrobat10Professional.exe, C:\Workspace\Icons\Misc\RemoveProgram.png, rcdata, stage2, 0 Ended   rc:0
>Running:C:\Workspace\Scripts\AutoIT\ResHacker.exe -add C:\Workspace\Scripts\AutoIT\Self Installers\Adobe Acrobat 10\Adobe-Acrobat10Professional.exe, C:\Workspace\Scripts\AutoIT\Self Installers\Adobe Acrobat 10\Adobe-Acrobat10Professional.exe, C:\Workspace\Icons\Misc\AddProgram.png, rcdata, stage3, 0
>C:\Workspace\Scripts\AutoIT\ResHacker.exe -add C:\Workspace\Scripts\AutoIT\Self Installers\Adobe Acrobat 10\Adobe-Acrobat10Professional.exe, C:\Workspace\Scripts\AutoIT\Self Installers\Adobe Acrobat 10\Adobe-Acrobat10Professional.exe, C:\Workspace\Icons\Misc\AddProgram.png, rcdata, stage3, 0 Ended   rc:0
>Running:C:\Workspace\Scripts\AutoIT\ResHacker.exe -add C:\Workspace\Scripts\AutoIT\Self Installers\Adobe Acrobat 10\Adobe-Acrobat10Professional.exe, C:\Workspace\Scripts\AutoIT\Self Installers\Adobe Acrobat 10\Adobe-Acrobat10Professional.exe, C:\Workspace\Icons\Misc\Run.png, rcdata, stage5, 0
>C:\Workspace\Scripts\AutoIT\ResHacker.exe -add C:\Workspace\Scripts\AutoIT\Self Installers\Adobe Acrobat 10\Adobe-Acrobat10Professional.exe, C:\Workspace\Scripts\AutoIT\Self Installers\Adobe Acrobat 10\Adobe-Acrobat10Professional.exe, C:\Workspace\Icons\Misc\Run.png, rcdata, stage5, 0 Ended   rc:0
>Running:C:\Workspace\Scripts\AutoIT\ResHacker.exe -add C:\Workspace\Scripts\AutoIT\Self Installers\Adobe Acrobat 10\Adobe-Acrobat10Professional.exe, C:\Workspace\Scripts\AutoIT\Self Installers\Adobe Acrobat 10\Adobe-Acrobat10Professional.exe, C:\Workspace\Scripts\AutoIT\******.jpg, rcdata, logo, 0
>C:\Workspace\Scripts\AutoIT\ResHacker.exe -add C:\Workspace\Scripts\AutoIT\Self Installers\Adobe Acrobat 10\Adobe-Acrobat10Professional.exe, C:\Workspace\Scripts\AutoIT\Self Installers\Adobe Acrobat 10\Adobe-Acrobat10Professional.exe, C:\Workspace\Scripts\AutoIT\******.jpg, rcdata, logo, 0 Ended   rc:0
>Running:C:\Workspace\Scripts\AutoIT\ResHacker.exe -add C:\Workspace\Scripts\AutoIT\Self Installers\Adobe Acrobat 10\Adobe-Acrobat10Professional.exe, C:\Workspace\Scripts\AutoIT\Self Installers\Adobe Acrobat 10\Adobe-Acrobat10Professional.exe, C:\Workspace\Scripts\AutoIT\London2.jpg, rcdata, banner, 0
>C:\Workspace\Scripts\AutoIT\ResHacker.exe -add C:\Workspace\Scripts\AutoIT\Self Installers\Adobe Acrobat 10\Adobe-Acrobat10Professional.exe, C:\Workspace\Scripts\AutoIT\Self Installers\Adobe Acrobat 10\Adobe-Acrobat10Professional.exe, C:\Workspace\Scripts\AutoIT\London2.jpg, rcdata, banner, 0 Ended   rc:0
>Running:C:\Workspace\Scripts\AutoIT\ResHacker.exe -add C:\Workspace\Scripts\AutoIT\Self Installers\Adobe Acrobat 10\Adobe-Acrobat10Professional.exe, C:\Workspace\Scripts\AutoIT\Self Installers\Adobe Acrobat 10\Adobe-Acrobat10Professional.exe, C:\Workspace\Scripts\AutoIT\Self Installers\admin.7z, rcdata, admin, 0
>C:\Workspace\Scripts\AutoIT\ResHacker.exe -add C:\Workspace\Scripts\AutoIT\Self Installers\Adobe Acrobat 10\Adobe-Acrobat10Professional.exe, C:\Workspace\Scripts\AutoIT\Self Installers\Adobe Acrobat 10\Adobe-Acrobat10Professional.exe, C:\Workspace\Scripts\AutoIT\Self Installers\admin.7z, rcdata, admin, 0 Ended   rc:0
>Running:C:\Workspace\Scripts\AutoIT\ResHacker.exe -add C:\Workspace\Scripts\AutoIT\Self Installers\Adobe Acrobat 10\Adobe-Acrobat10Professional.exe, C:\Workspace\Scripts\AutoIT\Self Installers\Adobe Acrobat 10\Adobe-Acrobat10Professional.exe, C:\Workspace\Scripts\AutoIT\Self Installers\7_zip32.dll, rcdata, extract, 0
>C:\Workspace\Scripts\AutoIT\ResHacker.exe -add C:\Workspace\Scripts\AutoIT\Self Installers\Adobe Acrobat 10\Adobe-Acrobat10Professional.exe, C:\Workspace\Scripts\AutoIT\Self Installers\Adobe Acrobat 10\Adobe-Acrobat10Professional.exe, C:\Workspace\Scripts\AutoIT\Self Installers\7_zip32.dll, rcdata, extract, 0 Ended   rc:0
>Running:C:\Workspace\Scripts\AutoIT\ResHacker.exe -add C:\Workspace\Scripts\AutoIT\Self Installers\Adobe Acrobat 10\Adobe-Acrobat10Professional.exe, C:\Workspace\Scripts\AutoIT\Self Installers\Adobe Acrobat 10\Adobe-Acrobat10Professional.exe, C:\Workspace\Scripts\AutoIT\Self Installers\Adobe Acrobat 10\Acrobat10Std.7z, rcdata, package, 0
>C:\Workspace\Scripts\AutoIT\ResHacker.exe -add C:\Workspace\Scripts\AutoIT\Self Installers\Adobe Acrobat 10\Adobe-Acrobat10Professional.exe, C:\Workspace\Scripts\AutoIT\Self Installers\Adobe Acrobat 10\Adobe-Acrobat10Professional.exe, C:\Workspace\Scripts\AutoIT\Self Installers\Adobe Acrobat 10\Acrobat10Std.7z, rcdata, package, 0 Ended   rc:0
>Exit code: 0    Time: 62.790

Are you telling me something I need to know or something I want to know?

Posted (edited)

Perhaps have a look at #AutoIt3Wrapper_Res_File_Add instead if using ResHacker. OR FileInstall() depending on what you are wanting to accomplish!

Edited by guinness

UDF List:

 
_AdapterConnections()_AlwaysRun()_AppMon()_AppMonEx()_ArrayFilter/_ArrayReduce_BinaryBin()_CheckMsgBox()_CmdLineRaw()_ContextMenu()_ConvertLHWebColor()/_ConvertSHWebColor()_DesktopDimensions()_DisplayPassword()_DotNet_Load()/_DotNet_Unload()_Fibonacci()_FileCompare()_FileCompareContents()_FileNameByHandle()_FilePrefix/SRE()_FindInFile()_GetBackgroundColor()/_SetBackgroundColor()_GetConrolID()_GetCtrlClass()_GetDirectoryFormat()_GetDriveMediaType()_GetFilename()/_GetFilenameExt()_GetHardwareID()_GetIP()_GetIP_Country()_GetOSLanguage()_GetSavedSource()_GetStringSize()_GetSystemPaths()_GetURLImage()_GIFImage()_GoogleWeather()_GUICtrlCreateGroup()_GUICtrlListBox_CreateArray()_GUICtrlListView_CreateArray()_GUICtrlListView_SaveCSV()_GUICtrlListView_SaveHTML()_GUICtrlListView_SaveTxt()_GUICtrlListView_SaveXML()_GUICtrlMenu_Recent()_GUICtrlMenu_SetItemImage()_GUICtrlTreeView_CreateArray()_GUIDisable()_GUIImageList_SetIconFromHandle()_GUIRegisterMsg()_GUISetIcon()_Icon_Clear()/_Icon_Set()_IdleTime()_InetGet()_InetGetGUI()_InetGetProgress()_IPDetails()_IsFileOlder()_IsGUID()_IsHex()_IsPalindrome()_IsRegKey()_IsStringRegExp()_IsSystemDrive()_IsUPX()_IsValidType()_IsWebColor()_Language()_Log()_MicrosoftInternetConnectivity()_MSDNDataType()_PathFull/GetRelative/Split()_PathSplitEx()_PrintFromArray()_ProgressSetMarquee()_ReDim()_RockPaperScissors()/_RockPaperScissorsLizardSpock()_ScrollingCredits_SelfDelete()_SelfRename()_SelfUpdate()_SendTo()_ShellAll()_ShellFile()_ShellFolder()_SingletonHWID()_SingletonPID()_Startup()_StringCompact()_StringIsValid()_StringRegExpMetaCharacters()_StringReplaceWholeWord()_StringStripChars()_Temperature()_TrialPeriod()_UKToUSDate()/_USToUKDate()_WinAPI_Create_CTL_CODE()_WinAPI_CreateGUID()_WMIDateStringToDate()/_DateToWMIDateString()Au3 script parsingAutoIt SearchAutoIt3 PortableAutoIt3WrapperToPragmaAutoItWinGetTitle()/AutoItWinSetTitle()CodingDirToHTML5FileInstallrFileReadLastChars()GeoIP databaseGUI - Only Close ButtonGUI ExamplesGUICtrlDeleteImage()GUICtrlGetBkColor()GUICtrlGetStyle()GUIEventsGUIGetBkColor()Int_Parse() & Int_TryParse()IsISBN()LockFile()Mapping CtrlIDsOOP in AutoItParseHeadersToSciTE()PasswordValidPasteBinPosts Per DayPreExpandProtect GlobalsQueue()Resource UpdateResourcesExSciTE JumpSettings INISHELLHOOKShunting-YardSignature CreatorStack()Stopwatch()StringAddLF()/StringStripLF()StringEOLToCRLF()VSCROLLWM_COPYDATAMore Examples...

Updated: 22/04/2018

Posted

Perhaps have a look at #AutoIt3Wrapper_Res_File_Add instead if using ResHacker. OR FileInstall() depending on what you are wanting to accomplish!

Interestingly that makes a difference. Res_File_Add will bomb out with an error:

>14:48:32 Performing the Program Resource Update steps:
...>Updating Program Version information.
UpdateResources other: $result[0] = 0 - LastError:8:Not enough storage is available to process this command.
...>Adding 1 file(s).
+>14:48:47 Program Resource updating finished successfully.rc:0

Any clues as to the storage limit this is exceeding? Not convinced this is a memory error (2GB with 4GB pagefile) so is it a compiler setting or a Windows thing?

(The 325MB file works fine BTW - So this may be the reason why it's bombing... Since ResHack will put ANYTHING in the file I'm not seeing that issue until I explore the file... Suggesting a Windows "limit")

Confused.com

Are you telling me something I need to know or something I want to know?

Posted

Why not simply use the standard AutoIt3 FileInstall() command made for this specifically?

Jos

I dont use FileInstall() because I need to set RCDATA information specific to types of files. FileInstall() will simply copy a file to a location when run. I need to do a lot more than that in my script.

Mal

Are you telling me something I need to know or something I want to know?

  • Developers
Posted (edited)

I dont use FileInstall() because I need to set RCDATA information specific to types of files. FileInstall() will simply copy a file to a location when run. I need to do a lot more than that in my script.

Mal

Don't understand what you mean?

Which RCDATA are you talking about: the Script EXE or the Installers included?

Jos

Edited by Jos

SciTE4AutoIt3 Full installer Download page   - Beta files       Read before posting     How to post scriptsource   Forum etiquette  Forum Rules 
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Posted

I dont use FileInstall() because I need to set RCDATA information specific to types of files. FileInstall() will simply copy a file to a location when run. I need to do a lot more than that in my script.

Mal

There is nothing wrong in combining both methods. Use resources for your images while adding 7zip and the archive via FileInstall :)

*GERMAN* [note: you are not allowed to remove author / modified info from my UDFs]My UDFs:[_SetImageBinaryToCtrl] [_TaskDialog] [AutoItObject] [Animated GIF (GDI+)] [ClipPut for Image] [FreeImage] [GDI32 UDFs] [GDIPlus Progressbar] [Hotkey-Selector] [Multiline Inputbox] [MySQL without ODBC] [RichEdit UDFs] [SpeechAPI Example] [WinHTTP]UDFs included in AutoIt: FTP_Ex (as FTPEx), _WinAPI_SetLayeredWindowAttributes

Posted

Okay, in answer to FileInstall()...

The way my code is set up, it is very difficult to incorporate FileInstall in a "clean" way... I know all about FileInstall() and used to use it before hitting the problems which forced me to use AUTOIT3Wrapper to handle the incorporation of my program archives. The biggest stumbling block is that if I ever wanted to use FileInstall it would have to be at a stage buried in line 900+ of linked source code as you cannot use variables to assign the location of the file. This program is set up so my team members can easily create new programs by changing a few variables in the header script of which I posted a specimen. By adding the intelligence at this stage it pretty much messes that all up.

The RCDATA is configured to allow the program more versatility on reading the RCDATA resources. By knowing exactly what is being inserted into the resources I can program it correctly, for example... SUPPORT files are inserted using the name SUPPORT with a numbered "language" reference that allows me to loop through the available resources as they are extracted. By putting all of the resources together it makes life a lot easier for my non-code enabled colleagues to understand a "PUT THIS HERE" and "TYPE THIS IN HERE" reference.

On top of all that, to further quell this topic I performed a simple test by asking FileInstall to do a FileInstall of the Zip file in question... The result is pretty much what I expected:

Posted Image

Please understand, I'm very thankful for any help provided. I am just a tad frustrated. I know there are many ways to skin a feline but when I say something isn't possible then it's not possible for one or many reasons.

SO back to this, if anyone is still willing to look into this, is there a (known) memory allocation limit with Aut2Exe and/or with MS Explorer that I am missing?

Are you telling me something I need to know or something I want to know?

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
  • Recently Browsing   0 members

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