Sign in to follow this  
Followers 0
zelles

AutoIt Portable v 0.0.2 [Open-Source]

19 posts in this topic

#1 ·  Posted (edited)

AutoIt Portable Workstation

AIP allows you to carry a light AutoIt script editor and compiler with you to use on the fly. This program can run x86 and x64 scripts or compile them to EXE. When the program is launched, it will create a temp work folder in the script directory. Once the program is closed this folder will be automatically deleted. When you compile a script it will output in the the script directory in a folder named "compiled".

preview_v_0_0_2.jpg

Current version: 0.0.2

Version 0.0.2 updates:

Added more options to the comiler

Planned Updates:

  • Script editor font appearance.
  • Automaticly color coded tags in editor

Built In Includes:

APIComConstants.au3
APIConstants.au3
APIDiagConstants.au3
APIDlgConstants.au3
APIErrorsConstants.au3
APIFilesConstants.au3
APIGdiConstants.au3
APILocaleConstants.au3
APIMiscConstants.au3
APIProcConstants.au3
APIRegConstants.au3
APIResConstants.au3
APIShellExConstants.au3
APIShPathConstants.au3
APISysConstants.au3
APIThemeConstants.au3
Array.au3
AutoItConstants.au3
AVIConstants.au3
BorderConstants.au3
ButtonConstants.au3
Clipboard.au3
Color.au3
ColorConstants.au3
ComboConstants.au3
Constants.au3
Crypt.au3
Date.au3
DateTimeConstants.au3
Debug.au3
DirConstants.au3
EditConstants.au3
EventLog.au3
Excel.au3
ExcelConstants.au3
File.au3
FileConstants.au3
FontConstants.au3
FrameConstants.au3
FTPEx.au3
GDIPlus.au3
GDIPlusConstants.au3
GuiAVI.au3
GuiButton.au3
GuiComboBox.au3
GuiComboBoxEx.au3
GUIConstants.au3
GUIConstantsEx.au3
GuiDateTimePicker.au3
GuiEdit.au3
GuiHeader.au3
GuiImageList.au3
GuiIPAddress.au3
GuiListBox.au3
GuiListView.au3
GuiMenu.au3
GuiMonthCal.au3
GuiReBar.au3
GuiRichEdit.au3
GuiScrollBars.au3
GuiSlider.au3
GuiStatusBar.au3
GuiTab.au3
GuiToolbar.au3
GuiToolTip.au3
GuiTreeView.au3
HeaderConstants.au3
IE.au3
ImageListConstants.au3
Inet.au3
InetConstants.au3
IPAddressConstants.au3
ListBoxConstants.au3
ListViewConstants.au3
Math.au3
Memory.au3
MemoryConstants.au3
MenuConstants.au3
Misc.au3
MsgBoxConstants.au3
NamedPipes.au3
NetShare.au3
NTSTATUSConstants.au3
Process.au3
ProcessConstants.au3
ProgressConstants.au3
RebarConstants.au3
RichEditConstants.au3
ScreenCapture.au3
ScrollBarConstants.au3
ScrollBarsConstants.au3
Security.au3
SecurityConstants.au3
SendMessage.au3
SliderConstants.au3
Sound.au3
SQLite.au3
SQLite.dll.au3
StaticConstants.au3
StatusBarConstants.au3
String.au3
StringConstants.au3
StructureConstants.au3
TabConstants.au3
Timers.au3
ToolbarConstants.au3
ToolTipConstants.au3
TrayConstants.au3
TreeViewConstants.au3
UDFGlobalID.au3
UpDownConstants.au3
Visa.au3
WinAPI.au3
WinAPICom.au3
WinAPIConstants.au3
WinAPIDiag.au3
WinAPIDlg.au3
WinAPIError.au3
WinAPIEx.au3
WinAPIFiles.au3
WinAPIGdi.au3
WinAPIInternals.au3
WinAPIlangConstants.au3
WinAPILocale.au3
WinAPIMisc.au3
WinAPIProc.au3
WinAPIReg.au3
WinAPIRes.au3
WinAPIShellEx.au3
WinAPIShPath.au3
WinAPISys.au3
WinAPIsysinfoConstants.au3
WinAPITheme.au3
WinAPIvkeysConstants.au3
WindowsConstants.au3
WinNet.au3
Word.au3
WordConstants.au3

Source Code:

#NoTrayIcon
#Region ;**** Directives created by AutoIt3Wrapper_GUI ****
#AutoIt3Wrapper_Icon=..\AIP\Icon.ico
#AutoIt3Wrapper_Res_Description=Compile your AutoIt scripts on the fly!
#AutoIt3Wrapper_Res_Fileversion=0.0.2.0
#AutoIt3Wrapper_Res_LegalCopyright=Copyright 2014 zelles
#AutoIt3Wrapper_Res_Language=1033
#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
#include <ButtonConstants.au3>
#include <ComboConstants.au3>
#include <EditConstants.au3>
#include <File.au3>
#include <GUIConstantsEx.au3>
#include <Misc.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>


#Region Begin Startup Settings
_Singleton("AutoItPortableByzelles")
Opt("GUIOnEventMode", 1)
Opt("TrayMenuMode", 3)
#EndRegion End Startup Settings


#Region Begin Startup Globals
Global $DIR_complier_output = @ScriptDir & "\compiled"
Global $DIR_TEMP = @ScriptDir & "\temp_appdata"
Global $DIR_includes = $DIR_TEMP & "\includes"
Global $FILE_icon = $DIR_TEMP & "\Icon.ico"
Global $FILE_TEMP = $DIR_includes & "\aip_temp.au3"
Global $FILE_TEMP_EXE = $DIR_TEMP & "\aip_temp.exe"
Global $IMG_Splash = $DIR_TEMP & "\splash.gif"
Global $Last_Opened = "AIPScript.au3"
#EndRegion End Startup Globals


#Region Begin Startup Functions
GUI_Splash()
Create_Temp_Workstation()
GUIDelete($GUI_Splash)
GUI_Workstation()
#EndRegion End Startup Functions


#Region Begin Idle Loop To Keep Program Alive
While 1
    Sleep(100)
WEnd
#EndRegion End Idle Loop To Keep Program Alive


#Region Begin Splash GUI Creation
Func GUI_Splash()
    If Not FileExists($DIR_TEMP) Then DirCreate($DIR_TEMP)
    FileInstall("C:\AIP\splash.gif", $DIR_TEMP & "\splash.gif", 0)
    Global $GUI_Splash = GUICreate("Starting AutoIt Portable", 401, 257, 192, 124)
    GUISetBkColor(0xFFFFFF)
    Global $splash_image = GUICtrlCreatePic($IMG_Splash, 0, 0, 400, 250)
    GUISetOnEvent($GUI_EVENT_MINIMIZE, "Close_Spash", $GUI_Splash)
    GUISetOnEvent($GUI_EVENT_CLOSE, "Close_Spash", $GUI_Splash)
    GUISetState(@SW_SHOW)
EndFunc
#EndRegion End Splash GUI Creation


#Region Begin Workstation GUI Creation
Func GUI_Workstation()
    Global $GUI_Workstation = GUICreate("AutoIt Portable Workstation", 701, 431, 174, 115)
    Global $File_Menu_File = GUICtrlCreateMenu("&File")
    Global $File_Menu_New = GUICtrlCreateMenuItem("New File", $File_Menu_File)
    Global $File_Menu_Open = GUICtrlCreateMenuItem("Open File", $File_Menu_File)
    Global $File_Menu_Save = GUICtrlCreateMenuItem("Save File", $File_Menu_File)
    Global $File_Menu_Exit = GUICtrlCreateMenuItem("Exit", $File_Menu_File)
    Global $File_Menu_Options = GUICtrlCreateMenu("&Script Options")
    Global $File_Menu_Runx86 = GUICtrlCreateMenuItem("Run x86", $File_Menu_Options)
    Global $File_Menu_Runx64 = GUICtrlCreateMenuItem("Run x64", $File_Menu_Options)
    Global $File_Menu_Compiler = GUICtrlCreateMenuItem("Run Compiler", $File_Menu_Options)
    Global $File_Menu_Help = GUICtrlCreateMenu("&Help")
    Global $File_Menu_About = GUICtrlCreateMenuItem("About", $File_Menu_Help)
    Global $GUI_Workstation_WorkArea = GUICtrlCreateEdit('MsgBox(0, "Welcome Note:", "Thank you for using AutoIt Portable!")', 0, 0, 700, 409, BitOR($ES_AUTOVSCROLL,$ES_WANTRETURN,$WS_VSCROLL))
    GUICtrlSetOnEvent($File_Menu_New, "GUI_File_New")
    GUICtrlSetOnEvent($File_Menu_Open, "GUI_File_Open")
    GUICtrlSetOnEvent($File_Menu_Save, "GUI_File_Save")
    GUICtrlSetOnEvent($File_Menu_Exit, "Close_Workstation")
    GUICtrlSetOnEvent($File_Menu_Runx86, "GUI_Run_x86")
    GUICtrlSetOnEvent($File_Menu_Runx64, "GUI_Run_x64")
    GUICtrlSetOnEvent($File_Menu_Compiler, "GUI_Compiler")
    GUICtrlSetOnEvent($File_Menu_About, "GUI_About")
    GUISetOnEvent($GUI_EVENT_CLOSE, "Close_Workstation", $GUI_Workstation)
    GUISetState(@SW_SHOW, $GUI_Workstation)
EndFunc
#EndRegion End Workstation GUI Creation


#Region Begin Compiler GUI Creation
Func GUI_Compiler()
    Global $GUI_Compiler = GUICreate("AICompiler GUI", 234, 447, 325, 143)
    Local $GUI_Compiler_Label1 = GUICtrlCreateLabel("App Name:", 8, 11, 57, 17)
    Local $GUI_Compiler_Label2 = GUICtrlCreateLabel("App Icon:", 8, 35, 50, 17)
    Local $GUI_Compiler_Label3 = GUICtrlCreateLabel("Product Name:", 8, 59, 75, 17)
    Local $GUI_Compiler_Label4 = GUICtrlCreateLabel("Company Name:", 8, 83, 82, 17)
    Local $GUI_Compiler_Label5 = GUICtrlCreateLabel("Copyright:", 8, 107, 51, 17)
    Local $GUI_Compiler_Label6 = GUICtrlCreateLabel("Trademarks:", 8, 131, 63, 17)
    Local $GUI_Compiler_Label7 = GUICtrlCreateLabel("File Version:", 8, 155, 61, 17)
    Local $GUI_Compiler_Label8 = GUICtrlCreateLabel("Product Version:", 8, 179, 82, 17)
    Local $GUI_Compiler_Label9 = GUICtrlCreateLabel("Description:", 8, 203, 60, 17)
    Local $GUI_Compiler_Label10 = GUICtrlCreateLabel("Comment:", 8, 227, 51, 17)
    Local $GUI_Compiler_Label11 = GUICtrlCreateLabel("Ignore Directives:", 8, 251, 87, 17)
    Local $GUI_Compiler_Label12 = GUICtrlCreateLabel("Compile For:", 8, 275, 62, 17)
    Local $GUI_Compiler_Label13 = GUICtrlCreateLabel("Compression:", 8, 299, 67, 17)
    Local $GUI_Compiler_Label14 = GUICtrlCreateLabel("Comp. w/ UPX:", 8, 323, 78, 17)
    Local $GUI_Compiler_Label15 = GUICtrlCreateLabel("Execution Level:", 8, 347, 83, 17)
    Local $GUI_Compiler_Label16 = GUICtrlCreateLabel("Compatibility:", 8, 371, 65, 17)
    Local $GUI_Compiler_Label17 = GUICtrlCreateLabel("App Type:", 8, 395, 53, 17)
    Global $GUI_Compiler_OutputFile = GUICtrlCreateInput("My App", 72, 8, 153, 21)
    Global $GUI_Compiler_IconFile = GUICtrlCreateInput($FILE_icon, 72, 32, 105, 21)
    Global $GUI_Compiler_LoadIcon_Button = GUICtrlCreateButton("Load", 184, 32, 43, 21)
    Global $GUI_Compiler_ProductName = GUICtrlCreateInput("", 88, 56, 137, 21)
    Global $GUI_Compiler_CompanyName = GUICtrlCreateInput("", 88, 80, 137, 21)
    Global $GUI_Compiler_Copyright = GUICtrlCreateInput("", 72, 104, 153, 21)
    Global $GUI_Compiler_Trademarks = GUICtrlCreateInput("", 72, 128, 153, 21)
    Global $GUI_Compiler_FileVersion = GUICtrlCreateInput("", 88, 152, 137, 21)
    Global $GUI_Compiler_ProductVersion = GUICtrlCreateInput("", 88, 176, 137, 21)
    Global $GUI_Compiler_Description = GUICtrlCreateInput("", 72, 200, 153, 21)
    Global $GUI_Compiler_Comment = GUICtrlCreateInput("", 72, 224, 153, 21)
    Global $GUI_Compiler_IgnoreDirectives = GUICtrlCreateCheckbox("Ignore", 120, 248, 65, 17)
    Global $GUI_Compiler_x86 = GUICtrlCreateCheckbox("x86", 120, 273, 49, 17)
    GUICtrlSetState(-1, $GUI_CHECKED)
    Global $GUI_Compiler_x64 = GUICtrlCreateCheckbox("x64", 176, 273, 49, 17)
    Global $GUI_Compiler_Compression = GUICtrlCreateCombo("None", 88, 296, 137, 25, BitOR($CBS_DROPDOWN,$CBS_AUTOHSCROLL))
    GUICtrlSetData($GUI_Compiler_Compression, "Low|Medium|High|Highest", "None")
    Global $GUI_Compiler_UPXCompression = GUICtrlCreateCombo("Dont Compress", 88, 320, 137, 25, BitOR($CBS_DROPDOWN,$CBS_AUTOHSCROLL))
    GUICtrlSetData($GUI_Compiler_UPXCompression, "Compress", "Dont Compress")
    Global $GUI_Compiler_ExecutionLevel = GUICtrlCreateCombo("None", 88, 344, 137, 25, BitOR($CBS_DROPDOWN,$CBS_AUTOHSCROLL))
    GUICtrlSetData($GUI_Compiler_ExecutionLevel, "AsInvoker|Highest Avail|Require Admin", "None")
    Global $GUI_Compiler_Compatibility = GUICtrlCreateCombo("All", 88, 368, 137, 25, BitOR($CBS_DROPDOWN,$CBS_AUTOHSCROLL))
    GUICtrlSetData($GUI_Compiler_Compatibility, "Windows Vista|Windows 7|Windows 8", "All")
    Global $GUI_Compiler_AppType = GUICtrlCreateCombo("Default", 88, 392, 137, 25, BitOR($CBS_DROPDOWN,$CBS_AUTOHSCROLL))
    GUICtrlSetData($GUI_Compiler_AppType, "GUI|Console", "Default")
    Global $GUI_Compiler_Compile_Button = GUICtrlCreateButton("Compile", 136, 416, 91, 25)
    GUICtrlSetOnEvent($GUI_Compiler_LoadIcon_Button, "Compiler")
    GUICtrlSetOnEvent($GUI_Compiler_Compile_Button, "Compiler")
    GUISetOnEvent($GUI_EVENT_CLOSE, "Close_Compiler", $GUI_Compiler)
    GUISetState(@SW_SHOW, $GUI_Compiler)
EndFunc
#EndRegion End Compiler GUI Creation


#Region Begin Splash GUI Events
Func Close_Spash()
    TrayTip("AIP Response", "Please wait for AIP to finish initializing", 6)
EndFunc
#EndRegion End Splash GUI Creation


#Region Begin Workstation GUI Events
Func GUI_File_New()
    GUICtrlSetData($GUI_Workstation_WorkArea, "")
EndFunc
Func GUI_File_Open()
    Local $f_open_script = FileOpenDialog("Open AutoIt Script", @ScriptDir, "au3 (*.au3)|All (*.*)", 1, $Last_Opened, $GUI_Workstation)
    $Last_Opened = StringTrimLeft($f_open_script, StringInStr($f_open_script, "\", $STR_NOCASESENSE, -1))
    Local $f_open_script_Script = FileRead($f_open_script)
    GUICtrlSetData($GUI_Workstation_WorkArea, $f_open_script_Script)
EndFunc
Func GUI_File_Save()
    Local $f_save_script = FileSaveDialog("Save AutoIt Script", @ScriptDir, "au3 (*.au3)|All (*.*)", 0, $Last_Opened, $GUI_Workstation)
    $Last_Opened = StringTrimLeft($f_save_script, StringInStr($f_save_script, "\", $STR_NOCASESENSE, -1))
    Local $f_script = GUICtrlRead($GUI_Workstation_WorkArea)
    If FileExists($f_save_script) Then FileDelete($f_save_script)
    _FileCreate($f_save_script)
    Local $f_save_script_Open = FileOpen($f_save_script, $FO_APPEND)
    FileWrite($f_save_script_Open, $f_script)
    FileClose($f_save_script_Open)
EndFunc
Func GUI_Run_x86()
    Local $f_script = GUICtrlRead($GUI_Workstation_WorkArea)
    If FileExists($FILE_TEMP_EXE) Then FileDelete($FILE_TEMP_EXE)
    If FileExists($FILE_TEMP) Then FileDelete($FILE_TEMP)
    _FileCreate($FILE_TEMP)
    Local $FILE_TEMP_Open = FileOpen($FILE_TEMP, $FO_APPEND)
    FileWrite($FILE_TEMP_Open, $f_script)
    FileClose($FILE_TEMP_Open)
    RunWait($DIR_TEMP & '/Aut2exe.exe /in "' & $FILE_TEMP & '" /out "' & $FILE_TEMP_EXE & '" /icon "' & $FILE_icon & '" /comp 0 /nopack /x86')
    FileDelete($FILE_TEMP)
    Run($FILE_TEMP_EXE)
EndFunc
Func GUI_Run_x64()
    Local $f_script = GUICtrlRead($GUI_Workstation_WorkArea)
    If FileExists($FILE_TEMP_EXE) Then FileDelete($FILE_TEMP_EXE)
    If FileExists($FILE_TEMP) Then FileDelete($FILE_TEMP)
    _FileCreate($FILE_TEMP)
    Local $FILE_TEMP_Open = FileOpen($FILE_TEMP, $FO_APPEND)
    FileWrite($FILE_TEMP_Open, $f_script)
    FileClose($FILE_TEMP_Open)
    RunWait($DIR_TEMP & '/Aut2exe.exe /in "' & $FILE_TEMP & '" /out "' & $FILE_TEMP_EXE & '" /icon "' & $FILE_icon & '" /comp 0 /nopack /x64')
    FileDelete($FILE_TEMP)
    Run($FILE_TEMP_EXE)
EndFunc
Func GUI_About()
    MsgBox(0, "About AIP", "AutoIt Portable was made by zelles to help people who need AutoIt on the fly." & @CRLF & "Currently running version: 0.0.1")
EndFunc
Func Close_Workstation()
    GUIDelete($GUI_Workstation)
    If FileExists($DIR_TEMP) Then DirRemove($DIR_TEMP, 1)
    Exit
EndFunc
#EndRegion End Workstation GUI Events


#Region Begin Compiler GUI Events
Func Compiler($f_data)
    ; Unintergrated commands: /ansi /unicode /originalfilename "" /internalname ""
    If Not FileExists($DIR_complier_output) Then DirCreate($DIR_complier_output)
    Local $f_script = GUICtrlRead($GUI_Workstation_WorkArea)
    If FileExists($FILE_TEMP) Then FileDelete($FILE_TEMP)
    _FileCreate($FILE_TEMP)
    Local $FILE_TEMP_Open = FileOpen($FILE_TEMP, $FO_APPEND)
    FileWrite($FILE_TEMP_Open, $f_script)
    FileClose($FILE_TEMP_Open)
    Local $Compiler_Script_x86 = $DIR_TEMP & '/Aut2exe.exe'
    Local $Compiler_Script_x64 = $DIR_TEMP & '/Aut2exe.exe'
    $Compiler_Script_x86 &= ' /in "' & $FILE_TEMP & '"'
    $Compiler_Script_x64 &= ' /in "' & $FILE_TEMP & '"'
    Local $f_OutputFile = GUICtrlRead($GUI_Compiler_OutputFile)
    $Compiler_Script_x86 &= ' /out "' & $DIR_complier_output & '\' & $f_OutputFile & ' x86.exe"'
    $Compiler_Script_x64 &= ' /out "' & $DIR_complier_output & '\' & $f_OutputFile & ' x64.exe"'
    Switch GUICtrlRead($GUI_Compiler_IconFile)
        Case ""
            $Compiler_Script_x86 &= ' /icon "' & $FILE_icon & '"'
            $Compiler_Script_x64 &= ' /icon "' & $FILE_icon & '"'
        Case Else
            If FileExists(GUICtrlRead($GUI_Compiler_IconFile)) Then
                $Compiler_Script_x86 &= ' /icon "' & GUICtrlRead($GUI_Compiler_IconFile) & '"'
                $Compiler_Script_x64 &= ' /icon "' & GUICtrlRead($GUI_Compiler_IconFile) & '"'
            Else
                $Compiler_Script_x86 &= ' /icon "' & $FILE_icon & '"'
                $Compiler_Script_x64 &= ' /icon "' & $FILE_icon & '"'
            EndIf
    EndSwitch
    $Compiler_Script_x86 &= ' /x86'
    $Compiler_Script_x64 &= ' /x64'
    Switch GUICtrlRead($GUI_Compiler_Compression)
        Case "None"
            $Compiler_Script_x86 &= ' /comp 0'
            $Compiler_Script_x64 &= ' /comp 0'
        Case "Low"
            $Compiler_Script_x86 &= ' /comp 1'
            $Compiler_Script_x64 &= ' /comp 1'
        Case "Medium"
            $Compiler_Script_x86 &= ' /comp 2'
            $Compiler_Script_x64 &= ' /comp 2'
        Case "High"
            $Compiler_Script_x86 &= ' /comp 3'
            $Compiler_Script_x64 &= ' /comp 3'
        Case "Highest"
            $Compiler_Script_x86 &= ' /comp 4'
            $Compiler_Script_x64 &= ' /comp 4'
    EndSwitch
    Switch GUICtrlRead($GUI_Compiler_IgnoreDirectives)
        Case $GUI_CHECKED
            $Compiler_Script_x86 &= ' /ignoredirectives'
            $Compiler_Script_x64 &= ' /ignoredirectives'
    EndSwitch
    Switch GUICtrlRead($GUI_Compiler_UPXCompression)
        Case "Dont Compress"
            $Compiler_Script_x86 &= ' /nopack'
            $Compiler_Script_x64 &= ' /nopack'
        Case "Compress"
            $Compiler_Script_x86 &= ' /pack'
            $Compiler_Script_x64 &= ' /pack'
    EndSwitch
    Switch GUICtrlRead($GUI_Compiler_AppType)
        Case "GUI"
            $Compiler_Script_x86 &= ' /gui'
            $Compiler_Script_x64 &= ' /gui'
        Case "Console"
            $Compiler_Script_x86 &= ' /console'
            $Compiler_Script_x64 &= ' /console'
    EndSwitch
    Switch GUICtrlRead($GUI_Compiler_ExecutionLevel)
        Case "None"
            $Compiler_Script_x86 &= ' /execlevel none'
            $Compiler_Script_x64 &= ' /execlevel none'
        Case "AsInvoker"
            $Compiler_Script_x86 &= ' /execlevel asinvoker'
            $Compiler_Script_x64 &= ' /execlevel asinvoker'
        Case "Highest Avail"
            $Compiler_Script_x86 &= ' /execlevel highestavailable'
            $Compiler_Script_x64 &= ' /execlevel highestavailable'
        Case "Require Admin"
            $Compiler_Script_x86 &= ' /execlevel requireadministrator'
            $Compiler_Script_x64 &= ' /execlevel requireadministrator'
    EndSwitch
    Switch GUICtrlRead($GUI_Compiler_Compatibility)
        Case "Windows Vista"
            $Compiler_Script_x86 &= ' /compatibility vista'
            $Compiler_Script_x64 &= ' /compatibility vista'
        Case "Windows 7"
            $Compiler_Script_x86 &= ' /compatibility win7'
            $Compiler_Script_x64 &= ' /compatibility win7'
        Case "Windows 8"
            $Compiler_Script_x86 &= ' /compatibility win8'
            $Compiler_Script_x64 &= ' /compatibility win8'
    EndSwitch
    Switch GUICtrlRead($GUI_Compiler_Comment)
        Case ""
            $Compiler_Script_x86 &= ' /comments "Compiled with AutoIt Portable by zelles."'
            $Compiler_Script_x64 &= ' /comments "Compiled with AutoIt Portable by zelles."'
        Case Else
            $Compiler_Script_x86 &= ' /comments "' & GUICtrlRead($GUI_Compiler_Comment) & '"'
            $Compiler_Script_x64 &= ' /comments "' & GUICtrlRead($GUI_Compiler_Comment) & '"'
    EndSwitch
    Switch GUICtrlRead($GUI_Compiler_CompanyName)
        Case ""
            $Compiler_Script_x86 &= ' /companyname "None"'
            $Compiler_Script_x64 &= ' /companyname "None"'
        Case Else
            $Compiler_Script_x86 &= ' /companyname "' & GUICtrlRead($GUI_Compiler_CompanyName) & '"'
            $Compiler_Script_x64 &= ' /companyname "' & GUICtrlRead($GUI_Compiler_CompanyName) & '"'
    EndSwitch
    Switch GUICtrlRead($GUI_Compiler_Description)
        Case ""
            $Compiler_Script_x86 &= ' /filedescription "None"'
            $Compiler_Script_x64 &= ' /filedescription "None"'
        Case Else
            $Compiler_Script_x86 &= ' /filedescription "' & GUICtrlRead($GUI_Compiler_Description) & '"'
            $Compiler_Script_x64 &= ' /filedescription "' & GUICtrlRead($GUI_Compiler_Description) & '"'
    EndSwitch
    Switch GUICtrlRead($GUI_Compiler_Copyright)
        Case ""
            $Compiler_Script_x86 &= ' /legalcopyright ' & @YEAR
            $Compiler_Script_x64 &= ' /legalcopyright ' & @YEAR
        Case Else
            $Compiler_Script_x86 &= ' /legalcopyright "' & GUICtrlRead($GUI_Compiler_Copyright) & '"'
            $Compiler_Script_x64 &= ' /legalcopyright "' & GUICtrlRead($GUI_Compiler_Copyright) & '"'
    EndSwitch
    Switch GUICtrlRead($GUI_Compiler_Trademarks)
        Case ""
            $nothing = 0
        Case Else
            $Compiler_Script_x86 &= ' /legaltrademarks "' & GUICtrlRead($GUI_Compiler_Trademarks) & '"'
            $Compiler_Script_x64 &= ' /legaltrademarks "' & GUICtrlRead($GUI_Compiler_Trademarks) & '"'
    EndSwitch
    Switch GUICtrlRead($GUI_Compiler_ProductName)
        Case ""
            $nothing = 0
        Case Else
            $Compiler_Script_x86 &= ' /productname "' & GUICtrlRead($GUI_Compiler_ProductName) & '"'
            $Compiler_Script_x64 &= ' /productname "' & GUICtrlRead($GUI_Compiler_ProductName) & '"'
    EndSwitch
    Switch GUICtrlRead($GUI_Compiler_FileVersion)
        Case ""
            $Compiler_Script_x86 &= ' /fileversion "0.0.0.1"'
            $Compiler_Script_x64 &= ' /fileversion "0.0.0.1"'
        Case Else
            $Compiler_Script_x86 &= ' /fileversion "' & GUICtrlRead($GUI_Compiler_FileVersion) & '"'
            $Compiler_Script_x64 &= ' /fileversion "' & GUICtrlRead($GUI_Compiler_FileVersion) & '"'
    EndSwitch
    Switch GUICtrlRead($GUI_Compiler_ProductVersion)
        Case ""
            $Compiler_Script_x86 &= ' /productversion "3.3.12.0"'
            $Compiler_Script_x64 &= ' /productversion "3.3.12.0"'
        Case Else
            $Compiler_Script_x86 &= ' /productversion "' & GUICtrlRead($GUI_Compiler_ProductVersion) & '"'
            $Compiler_Script_x64 &= ' /productversion "' & GUICtrlRead($GUI_Compiler_ProductVersion) & '"'
    EndSwitch

    If GUICtrlRead($GUI_Compiler_x86) = $GUI_CHECKED Then
        RunWait($Compiler_Script_x86)
        ;RunWait($DIR_TEMP & '/Aut2exe.exe /in "' & $FILE_TEMP & '" /out "' & $DIR_complier_output & '\' & $f_OutputFile & ' x86.exe" /icon "' & $FILE_icon & '"' & $f_Compression & $f_UPXCompression & ' /x86')
        ;RunWait($DIR_TEMP & '/Aut2exe.exe /in "' & $FILE_TEMP & '" /out "' & $DIR_complier_output & '\' & $f_OutputFile & ' x86.exe"' & $f_IconFile & $f_Compression & $f_IgnoreDirectives & $f_UPXCompression & ' /x86'`& $f_AppType & $f_ExecutionLevel & $f_Compatibility & $f_Comment & $f_CompanyName & $f_Description & $f_Copyright & $f_Trademarks & $f_ProductName & $f_FileVersion & $f_ProductVersion)
    EndIf
    If GUICtrlRead($GUI_Compiler_x64) = $GUI_CHECKED Then
        RunWait($Compiler_Script_x64)
        ;RunWait($DIR_TEMP & '/Aut2exe.exe /in "' & $FILE_TEMP & '" /out "' & $DIR_complier_output & '\' & $f_OutputFile & ' x64.exe"' & $f_IconFile & $f_Compression & $f_IgnoreDirectives & $f_UPXCompression & ' /x64'`& $f_AppType & $f_ExecutionLevel & $f_Compatibility & $f_Comment & $f_CompanyName & $f_Description & $f_Copyright & $f_Trademarks & $f_ProductName & $f_FileVersion & $f_ProductVersion)
    EndIf
    FileDelete($FILE_TEMP)
    GUIDelete($GUI_Compiler)
    MsgBox(0, "AIP Response", "The compiler is finished. Check script directory for files.")
EndFunc
Func Close_Compiler()
    GUIDelete($GUI_Compiler)
EndFunc
#EndRegion End Compiler GUI Events


#Region Begin Temp Appdata Setup
Func Create_Temp_Workstation()
    If Not FileExists($DIR_TEMP) Then DirCreate($DIR_TEMP)
    If Not FileExists($DIR_includes) Then DirCreate($DIR_includes)
    FileInstall("C:\AIP\Icon.ico", $DIR_TEMP & "\Icon.ico", 0)
    FileInstall("C:\AIP\Aut2exe.exe", $DIR_TEMP & "\Aut2exe.exe", 0)
    FileInstall("C:\AIP\upx.exe", $DIR_TEMP & "\upx.exe", 0)
    FileInstall("C:\AIP\includes\APIComConstants.au3", $DIR_includes & "\APIComConstants.au3", 0)
    FileInstall("C:\AIP\includes\APIConstants.au3", $DIR_includes & "\APIConstants.au3", 0)
    FileInstall("C:\AIP\includes\APIDiagConstants.au3", $DIR_includes & "\APIDiagConstants.au3", 0)
    FileInstall("C:\AIP\includes\APIDlgConstants.au3", $DIR_includes & "\APIDlgConstants.au3", 0)
    FileInstall("C:\AIP\includes\APIErrorsConstants.au3", $DIR_includes & "\APIErrorsConstants.au3", 0)
    FileInstall("C:\AIP\includes\APIFilesConstants.au3", $DIR_includes & "\APIFilesConstants.au3", 0)
    FileInstall("C:\AIP\includes\APIGdiConstants.au3", $DIR_includes & "\APIGdiConstants.au3", 0)
    FileInstall("C:\AIP\includes\APILocaleConstants.au3", $DIR_includes & "\APILocaleConstants.au3", 0)
    FileInstall("C:\AIP\includes\APIMiscConstants.au3", $DIR_includes & "\APIMiscConstants.au3", 0)
    FileInstall("C:\AIP\includes\APIProcConstants.au3", $DIR_includes & "\APIProcConstants.au3", 0)
    FileInstall("C:\AIP\includes\APIRegConstants.au3", $DIR_includes & "\APIRegConstants.au3", 0)
    FileInstall("C:\AIP\includes\APIResConstants.au3", $DIR_includes & "\APIResConstants.au3", 0)
    FileInstall("C:\AIP\includes\APIShellExConstants.au3", $DIR_includes & "\APIShellExConstants.au3", 0)
    FileInstall("C:\AIP\includes\APIShPathConstants.au3", $DIR_includes & "\APIShPathConstants.au3", 0)
    FileInstall("C:\AIP\includes\APISysConstants.au3", $DIR_includes & "\APISysConstants.au3", 0)
    FileInstall("C:\AIP\includes\APIThemeConstants.au3", $DIR_includes & "\APIThemeConstants.au3", 0)
    FileInstall("C:\AIP\includes\Array.au3", $DIR_includes & "\Array.au3", 0)
    FileInstall("C:\AIP\includes\AutoItConstants.au3", $DIR_includes & "\AutoItConstants.au3", 0)
    FileInstall("C:\AIP\includes\AVIConstants.au3", $DIR_includes & "\AVIConstants.au3", 0)
    FileInstall("C:\AIP\includes\BorderConstants.au3", $DIR_includes & "\BorderConstants.au3", 0)
    FileInstall("C:\AIP\includes\ButtonConstants.au3", $DIR_includes & "\ButtonConstants.au3", 0)
    FileInstall("C:\AIP\includes\Clipboard.au3", $DIR_includes & "\Clipboard.au3", 0)
    FileInstall("C:\AIP\includes\Color.au3", $DIR_includes & "\Color.au3", 0)
    FileInstall("C:\AIP\includes\ColorConstants.au3", $DIR_includes & "\ColorConstants.au3", 0)
    FileInstall("C:\AIP\includes\ComboConstants.au3", $DIR_includes & "\ComboConstants.au3", 0)
    FileInstall("C:\AIP\includes\Constants.au3", $DIR_includes & "\Constants.au3", 0)
    FileInstall("C:\AIP\includes\Crypt.au3", $DIR_includes & "\Crypt.au3", 0)
    FileInstall("C:\AIP\includes\Date.au3", $DIR_includes & "\Date.au3", 0)
    FileInstall("C:\AIP\includes\DateTimeConstants.au3", $DIR_includes & "\DateTimeConstants.au3", 0)
    FileInstall("C:\AIP\includes\Debug.au3", $DIR_includes & "\Debug.au3", 0)
    FileInstall("C:\AIP\includes\DirConstants.au3", $DIR_includes & "\DirConstants.au3", 0)
    FileInstall("C:\AIP\includes\EditConstants.au3", $DIR_includes & "\EditConstants.au3", 0)
    FileInstall("C:\AIP\includes\EventLog.au3", $DIR_includes & "\EventLog.au3", 0)
    FileInstall("C:\AIP\includes\Excel.au3", $DIR_includes & "\Excel.au3", 0)
    FileInstall("C:\AIP\includes\ExcelConstants.au3", $DIR_includes & "\ExcelConstants.au3", 0)
    FileInstall("C:\AIP\includes\File.au3", $DIR_includes & "\File.au3", 0)
    FileInstall("C:\AIP\includes\FileConstants.au3", $DIR_includes & "\FileConstants.au3", 0)
    FileInstall("C:\AIP\includes\FontConstants.au3", $DIR_includes & "\FontConstants.au3", 0)
    FileInstall("C:\AIP\includes\FrameConstants.au3", $DIR_includes & "\FrameConstants.au3", 0)
    FileInstall("C:\AIP\includes\FTPEx.au3", $DIR_includes & "\FTPEx.au3", 0)
    FileInstall("C:\AIP\includes\GDIPlus.au3", $DIR_includes & "\GDIPlus.au3", 0)
    FileInstall("C:\AIP\includes\GDIPlusConstants.au3", $DIR_includes & "\GDIPlusConstants.au3", 0)
    FileInstall("C:\AIP\includes\GuiAVI.au3", $DIR_includes & "\GuiAVI.au3", 0)
    FileInstall("C:\AIP\includes\GuiButton.au3", $DIR_includes & "\GuiButton.au3", 0)
    FileInstall("C:\AIP\includes\GuiComboBox.au3", $DIR_includes & "\GuiComboBox.au3", 0)
    FileInstall("C:\AIP\includes\GuiComboBoxEx.au3", $DIR_includes & "\GuiComboBoxEx.au3", 0)
    FileInstall("C:\AIP\includes\GUIConstants.au3", $DIR_includes & "\GUIConstants.au3", 0)
    FileInstall("C:\AIP\includes\GUIConstantsEx.au3", $DIR_includes & "\GUIConstantsEx.au3", 0)
    FileInstall("C:\AIP\includes\GuiDateTimePicker.au3", $DIR_includes & "\GuiDateTimePicker.au3", 0)
    FileInstall("C:\AIP\includes\GuiEdit.au3", $DIR_includes & "\GuiEdit.au3", 0)
    FileInstall("C:\AIP\includes\GuiHeader.au3", $DIR_includes & "\GuiHeader.au3", 0)
    FileInstall("C:\AIP\includes\GuiImageList.au3", $DIR_includes & "\GuiImageList.au3", 0)
    FileInstall("C:\AIP\includes\GuiIPAddress.au3", $DIR_includes & "\GuiIPAddress.au3", 0)
    FileInstall("C:\AIP\includes\GuiListBox.au3", $DIR_includes & "\GuiListBox.au3", 0)
    FileInstall("C:\AIP\includes\GuiListView.au3", $DIR_includes & "\GuiListView.au3", 0)
    FileInstall("C:\AIP\includes\GuiMenu.au3", $DIR_includes & "\GuiMenu.au3", 0)
    FileInstall("C:\AIP\includes\GuiMonthCal.au3", $DIR_includes & "\GuiMonthCal.au3", 0)
    FileInstall("C:\AIP\includes\GuiReBar.au3", $DIR_includes & "\GuiReBar.au3", 0)
    FileInstall("C:\AIP\includes\GuiRichEdit.au3", $DIR_includes & "\GuiRichEdit.au3", 0)
    FileInstall("C:\AIP\includes\GuiScrollBars.au3", $DIR_includes & "\GuiScrollBars.au3", 0)
    FileInstall("C:\AIP\includes\GuiSlider.au3", $DIR_includes & "\GuiSlider.au3", 0)
    FileInstall("C:\AIP\includes\GuiStatusBar.au3", $DIR_includes & "\GuiStatusBar.au3", 0)
    FileInstall("C:\AIP\includes\GuiTab.au3", $DIR_includes & "\GuiTab.au3", 0)
    FileInstall("C:\AIP\includes\GuiToolbar.au3", $DIR_includes & "\GuiToolbar.au3", 0)
    FileInstall("C:\AIP\includes\GuiToolTip.au3", $DIR_includes & "\GuiToolTip.au3", 0)
    FileInstall("C:\AIP\includes\GuiTreeView.au3", $DIR_includes & "\GuiTreeView.au3", 0)
    FileInstall("C:\AIP\includes\HeaderConstants.au3", $DIR_includes & "\HeaderConstants.au3", 0)
    FileInstall("C:\AIP\includes\IE.au3", $DIR_includes & "\IE.au3", 0)
    FileInstall("C:\AIP\includes\ImageListConstants.au3", $DIR_includes & "\ImageListConstants.au3", 0)
    FileInstall("C:\AIP\includes\Inet.au3", $DIR_includes & "\Inet.au3", 0)
    FileInstall("C:\AIP\includes\InetConstants.au3", $DIR_includes & "\InetConstants.au3", 0)
    FileInstall("C:\AIP\includes\IPAddressConstants.au3", $DIR_includes & "\IPAddressConstants.au3", 0)
    FileInstall("C:\AIP\includes\ListBoxConstants.au3", $DIR_includes & "\ListBoxConstants.au3", 0)
    FileInstall("C:\AIP\includes\ListViewConstants.au3", $DIR_includes & "\ListViewConstants.au3", 0)
    FileInstall("C:\AIP\includes\Math.au3", $DIR_includes & "\Math.au3", 0)
    FileInstall("C:\AIP\includes\Memory.au3", $DIR_includes & "\Memory.au3", 0)
    FileInstall("C:\AIP\includes\MemoryConstants.au3", $DIR_includes & "\MemoryConstants.au3", 0)
    FileInstall("C:\AIP\includes\MenuConstants.au3", $DIR_includes & "\MenuConstants.au3", 0)
    FileInstall("C:\AIP\includes\Misc.au3", $DIR_includes & "\Misc.au3", 0)
    FileInstall("C:\AIP\includes\MsgBoxConstants.au3", $DIR_includes & "\MsgBoxConstants.au3", 0)
    FileInstall("C:\AIP\includes\NamedPipes.au3", $DIR_includes & "\NamedPipes.au3", 0)
    FileInstall("C:\AIP\includes\NetShare.au3", $DIR_includes & "\NetShare.au3", 0)
    FileInstall("C:\AIP\includes\NTSTATUSConstants.au3", $DIR_includes & "\NTSTATUSConstants.au3", 0)
    FileInstall("C:\AIP\includes\Process.au3", $DIR_includes & "\Process.au3", 0)
    FileInstall("C:\AIP\includes\ProcessConstants.au3", $DIR_includes & "\ProcessConstants.au3", 0)
    FileInstall("C:\AIP\includes\ProgressConstants.au3", $DIR_includes & "\ProgressConstants.au3", 0)
    FileInstall("C:\AIP\includes\RebarConstants.au3", $DIR_includes & "\RebarConstants.au3", 0)
    FileInstall("C:\AIP\includes\RichEditConstants.au3", $DIR_includes & "\RichEditConstants.au3", 0)
    FileInstall("C:\AIP\includes\ScreenCapture.au3", $DIR_includes & "\ScreenCapture.au3", 0)
    FileInstall("C:\AIP\includes\ScrollBarConstants.au3", $DIR_includes & "\ScrollBarConstants.au3", 0)
    FileInstall("C:\AIP\includes\ScrollBarsConstants.au3", $DIR_includes & "\ScrollBarsConstants.au3", 0)
    FileInstall("C:\AIP\includes\Security.au3", $DIR_includes & "\Security.au3", 0)
    FileInstall("C:\AIP\includes\SecurityConstants.au3", $DIR_includes & "\SecurityConstants.au3", 0)
    FileInstall("C:\AIP\includes\SendMessage.au3", $DIR_includes & "\SendMessage.au3", 0)
    FileInstall("C:\AIP\includes\SliderConstants.au3", $DIR_includes & "\SendMessage.au3", 0)
    FileInstall("C:\AIP\includes\Sound.au3", $DIR_includes & "\Sound.au3", 0)
    FileInstall("C:\AIP\includes\SQLite.au3", $DIR_includes & "\SQLite.au3", 0)
    FileInstall("C:\AIP\includes\SQLite.dll.au3", $DIR_includes & "\SQLite.dll.au3", 0)
    FileInstall("C:\AIP\includes\StaticConstants.au3", $DIR_includes & "\StaticConstants.au3", 0)
    FileInstall("C:\AIP\includes\StatusBarConstants.au3", $DIR_includes & "\StatusBarConstants.au3", 0)
    FileInstall("C:\AIP\includes\String.au3", $DIR_includes & "\String.au3", 0)
    FileInstall("C:\AIP\includes\StringConstants.au3", $DIR_includes & "\StringConstants.au3", 0)
    FileInstall("C:\AIP\includes\StructureConstants.au3", $DIR_includes & "\StructureConstants.au3", 0)
    FileInstall("C:\AIP\includes\TabConstants.au3", $DIR_includes & "\TabConstants.au3", 0)
    FileInstall("C:\AIP\includes\Timers.au3", $DIR_includes & "\Timers.au3", 0)
    FileInstall("C:\AIP\includes\ToolbarConstants.au3", $DIR_includes & "\ToolbarConstants.au3", 0)
    FileInstall("C:\AIP\includes\ToolTipConstants.au3", $DIR_includes & "\ToolTipConstants.au3", 0)
    FileInstall("C:\AIP\includes\TrayConstants.au3", $DIR_includes & "\TrayConstants.au3", 0)
    FileInstall("C:\AIP\includes\TreeViewConstants.au3", $DIR_includes & "\TreeViewConstants.au3", 0)
    FileInstall("C:\AIP\includes\UDFGlobalID.au3", $DIR_includes & "\UDFGlobalID.au3", 0)
    FileInstall("C:\AIP\includes\UpDownConstants.au3", $DIR_includes & "\UpDownConstants.au3", 0)
    FileInstall("C:\AIP\includes\Visa.au3", $DIR_includes & "\Visa.au3", 0)
    FileInstall("C:\AIP\includes\WinAPI.au3", $DIR_includes & "\WinAPI.au3", 0)
    FileInstall("C:\AIP\includes\WinAPICom.au3", $DIR_includes & "\WinAPICom.au3", 0)
    FileInstall("C:\AIP\includes\WinAPIConstants.au3", $DIR_includes & "\WinAPIConstants.au3", 0)
    FileInstall("C:\AIP\includes\WinAPIDiag.au3", $DIR_includes & "\WinAPIDiag.au3", 0)
    FileInstall("C:\AIP\includes\WinAPIDlg.au3", $DIR_includes & "\WinAPIDlg.au3", 0)
    FileInstall("C:\AIP\includes\WinAPIError.au3", $DIR_includes & "\WinAPIError.au3", 0)
    FileInstall("C:\AIP\includes\WinAPIEx.au3", $DIR_includes & "\WinAPIEx.au3", 0)
    FileInstall("C:\AIP\includes\WinAPIFiles.au3", $DIR_includes & "\WinAPIFiles.au3", 0)
    FileInstall("C:\AIP\includes\WinAPIGdi.au3", $DIR_includes & "\WinAPIGdi.au3", 0)
    FileInstall("C:\AIP\includes\WinAPIInternals.au3", $DIR_includes & "\WinAPIInternals.au3", 0)
    FileInstall("C:\AIP\includes\WinAPIlangConstants.au3", $DIR_includes & "\WinAPIlangConstants.au3", 0)
    FileInstall("C:\AIP\includes\WinAPILocale.au3", $DIR_includes & "\WinAPILocale.au3", 0)
    FileInstall("C:\AIP\includes\WinAPIMisc.au3", $DIR_includes & "\WinAPIMisc.au3", 0)
    FileInstall("C:\AIP\includes\WinAPIProc.au3", $DIR_includes & "\WinAPIProc.au3", 0)
    FileInstall("C:\AIP\includes\WinAPIReg.au3", $DIR_includes & "\WinAPIReg.au3", 0)
    FileInstall("C:\AIP\includes\WinAPIRes.au3", $DIR_includes & "\WinAPIRes.au3", 0)
    FileInstall("C:\AIP\includes\WinAPIShellEx.au3", $DIR_includes & "\WinAPIShellEx.au3", 0)
    FileInstall("C:\AIP\includes\WinAPIShPath.au3", $DIR_includes & "\WinAPIShPath.au3", 0)
    FileInstall("C:\AIP\includes\WinAPISys.au3", $DIR_includes & "\WinAPISys.au3", 0)
    FileInstall("C:\AIP\includes\WinAPIsysinfoConstants.au3", $DIR_includes & "\WinAPIsysinfoConstants.au3", 0)
    FileInstall("C:\AIP\includes\WinAPITheme.au3", $DIR_includes & "\WinAPITheme.au3", 0)
    FileInstall("C:\AIP\includes\WinAPIvkeysConstants.au3", $DIR_includes & "\WinAPIvkeysConstants.au3", 0)
    FileInstall("C:\AIP\includes\WindowsConstants.au3", $DIR_includes & "\WindowsConstants.au3", 0)
    FileInstall("C:\AIP\includes\WinNet.au3", $DIR_includes & "\WinNet.au3", 0)
    FileInstall("C:\AIP\includes\Word.au3", $DIR_includes & "\Word.au3", 0)
    FileInstall("C:\AIP\includes\WordConstants.au3", $DIR_includes & "\WordConstants.au3", 0)
EndFunc
#EndRegion End Temp Appdata Setup

Source Files:

AutoIt Portable v 0.0.2 source.zip

Windows Executable:

AutoIt Portable v 0.0.2.zip

Older Versions:

Feedback is appreciated!

Edited by zelles
Donation link removed
1 person likes this

Share this post


Link to post
Share on other sites



zelles,

I have removed the donation link - we not allow such things in posts or signatures. ;)

M23


Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind._______My UDFs:

Spoiler

ArrayMultiColSort ---- Sort arrays on multiple columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

 

Share this post


Link to post
Share on other sites

Sorry about that. Thank you for letting me know.

Share this post


Link to post
Share on other sites

#4 ·  Posted (edited)

Just wondering without having to go through your whole script: What does this give me extra that doesn't work out-of-the-box?

Is it to make creating easy on-the-fly scripts?

Jos :)

Edited by Jos

Visit the SciTE4AutoIt3 Download page for the latest versions        Beta files                                                          Forum Rules
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Share this post


Link to post
Share on other sites

#5 ·  Posted (edited)

Just wondering without having to go through your whole script: What does this give me extra that doesn't work out-of-the-box?

Is it to make creating easy on-the-fly scripts?

Jos :)

 

Nothing extra really. But say you go to somewhere and are using a computer that doesn't have AutoIt installed, this standalone executable can compile your scripts to exe with out leaving any files behind.

Edited by zelles

Share this post


Link to post
Share on other sites

#6 ·  Posted (edited)

The next version will have more options in the compiler gui to be able to set the name, description, copyright, etc...

Edited by zelles

Share this post


Link to post
Share on other sites

Nothing extra really. But say you go to somewhere and are using a computer that doesn't have AutoIt installed, this standalone executable can compile your scripts to exe with out leaving any files behind.

That should already work fine when you take the autoit-v3.zip and the scite4autoit3.zip files and dump them on a USB thumbdrive without the need to copy anything to the PC first.

Jos


Visit the SciTE4AutoIt3 Download page for the latest versions        Beta files                                                          Forum Rules
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Share this post


Link to post
Share on other sites

#8 ·  Posted (edited)

That should already work fine when you take the autoit-v3.zip and the scite4autoit3.zip files and dump them on a USB thumbdrive without the need to copy anything to the PC first.

Jos

 

As I said...With this you dont NOT need autoit-v3.zip or scite4autoit3.zip... This is a single exe that does everything, including cleaning the temporary aplication data when complete. In other words you dont have to carry multiple zips full of unused/unneeded files just to use AutoIt real quick on the fly.

Also it doesn't flood the registry like autoit-v3.zip and scite4autoit3.zip do... This is a simpler/cleaner approach.

Edited by zelles

Share this post


Link to post
Share on other sites

Also it doesn't flood the registry like autoit-v3.zip and scite4autoit3.zip do... This is a simpler/cleaner approach.

They don't do anything with the registry. Only the installers do,


Visit the SciTE4AutoIt3 Download page for the latest versions        Beta files                                                          Forum Rules
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Share this post


Link to post
Share on other sites

They don't do anything with the registry. Only the installers do,

 

They do write information to the registry when run... That includes the zipped version of AutoIt and Scite..

Share this post


Link to post
Share on other sites

They do write information to the registry when run... That includes the zipped version of AutoIt and Scite..

 

Run what? the ZIP file?


Visit the SciTE4AutoIt3 Download page for the latest versions        Beta files                                                          Forum Rules
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Share this post


Link to post
Share on other sites

Run what? the ZIP file?

 

The executable files inside the zip...

Share this post


Link to post
Share on other sites

Updated to version 0.0.2, adding several options to the compiler...

Share this post


Link to post
Share on other sites

Version 0.0.3 Released:

Now has code suggestions as you type. They include all the AutoIt Functions, Marcos, Opt's, basic code, and all the includes files.

Version 0.0.3 Preview:

preview_v_0_0_3.jpg

Version 0.0.3 Source Code:

#NoTrayIcon
#Region ;**** Directives created by AutoIt3Wrapper_GUI ****
#AutoIt3Wrapper_Icon=..\AIP\Icon.ico
#AutoIt3Wrapper_Res_Description=Compile your AutoIt scripts on the fly!
#AutoIt3Wrapper_Res_Fileversion=0.0.3
#AutoIt3Wrapper_Res_LegalCopyright=Copyright 2014 zelles
#AutoIt3Wrapper_Res_Language=1033
#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
#include <ButtonConstants.au3>
#include <ComboConstants.au3>
#include <EditConstants.au3>
#include <File.au3>
#include <GUIConstantsEx.au3>
#include <Misc.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>

_Singleton("AutoItPortableByzelles")
Opt("GUIOnEventMode", 1)
Opt("TrayMenuMode", 3)

Global $DIR_complier_output = @ScriptDir & "\compiled"
Global $DIR_TEMP = @ScriptDir & "\temp_appdata"
Global $DIR_includes = $DIR_TEMP & "\includes"
Global $FILE_icon = $DIR_TEMP & "\Icon.ico"
Global $FILE_TEMP = $DIR_includes & "\aip_temp.au3"
Global $FILE_TEMP_EXE = $DIR_TEMP & "\aip_temp.exe"
Global $IMG_Splash = $DIR_TEMP & "\splash.gif"
Global $Last_Opened = "AIPScript.au3"

Global $AUTOIT_CODES = ''
$AUTOIT_CODES &= 'Local||Global||If||Then||ElseIf||Else||EndIf||Case||Switch||EndSwitch||Select||EndSelect||While||WEnd||With||EndWith||Do||Until||For||Next||In||To||Or||And||True||False||Return||Exit||ExitLoop||Dim||ReDim||Const||ContinueCase||ContinueLoop||Not||Null||ByRef||Default||Func||EndFunc||Enum||Static||Step||Volatile'
$AUTOIT_CODES &= '||Opt("CaretCoordMode",1)||Opt("ExpandEnvStrings",0)||Opt("ExpandVarStrings",0)||Opt("GUICloseOnESC",1)||Opt("GUICoordMode",1)||Opt("GUIDataSeparatorChar","|")||Opt("GUIOnEventMode",0)||Opt("GUIResizeMode",0)||Opt("GUIEventOptions",0)||Opt("MouseClickDelay",10)||Opt("MouseClickDownDelay",10)||Opt("MouseClickDragDelay",250)||Opt("MouseCoordMode",1)||Opt("MustDeclareVars",0)||Opt("PixelCoordMode",1)||Opt("SendAttachMode",0)||Opt("SendCapslockMode",1)||Opt("SendKeyDelay",5)||Opt("SendKeyDownDelay",1)||Opt("TCPTimeout",100)||Opt("TrayAutoPause",1)||Opt("TrayIconDebug",0)||Opt("TrayIconHide",0)||Opt("TrayMenuMode",0)||Opt("TrayOnEventMode",0)||Opt("WinDetectHiddenText",0)||Opt("WinSearchChildren",1)||Opt("WinTextMatchMode",1)||Opt("WinTitleMatchMode",1)||Opt("WinWaitDelay",250)'
$AUTOIT_CODES &= '||@AppDataCommonDir||@AppDataDir||@AutoItExe||@AutoItPID||@AutoItVersion||@AutoItX64||@COM_EventObj||@CommonFilesDir||@Compiled||@ComputerName||@ComSpec||@CPUArch||@CR||@CRLF||@CR||@LF||@DesktopCommonDir||@DesktopDepth||@DesktopDir||@DesktopHeight||@DesktopRefresh||@DesktopWidth||@DocumentsCommonDir||@error||@exitCode||@exitMethod||@extended||@FavoritesCommonDir||@FavoritesDir||@GUI_CtrlHandle||@GUI_CtrlId||@GUI_DragFile||@GUI_DragId||@GUI_DropId||@GUI_WinHandle||@HomeDrive||@HomePath||@HomeShare||@HotKeyPressed||@HOUR||@IPAddress1||@IPAddress2||@IPAddress3||@IPAddress4||@KBLayout||@LF||@LocalAppDataDir||@LogonDNSDomain||@LogonDomain||@LogonServer||@MDAY||@MIN||@MON||@MSEC||@MUILang||@MyDocumentsDir||@NumParams||@OSArch||@OSBuild||@OSLang||@OSServicePack||@OSType||@OSVersion||@ProgramFilesDir||@ProgramsCommonDir||@ProgramsDir||@ScriptDir||@ScriptFullPath||@ScriptLineNumber||@ScriptName||@SEC||@StartMenuCommonDir||@StartMenuDir||@StartupCommonDir||@StartupDir||@SW_DISABLE||@SW_ENABLE||@SW_HIDE||@SW_LOCK||@SW_MAXIMIZE||@SW_MINIMIZE||@SW_RESTORE||@SW_SHOW||@SW_SHOWDEFAULT||@SW_SHOWMAXIMIZED||@SW_SHOWMINIMIZED||@SW_SHOWMINNOACTIVE||@SW_SHOWNA||@SW_SHOWNOACTIVATE||@SW_SHOWNORMAL||@SW_UNLOCK||@SystemDir||@TAB||@TempDir||@TRAY_ID||@TrayIconFlashing||@TrayIconVisible||@UserName||@UserProfileDir||@WDAY||@WindowsDir||@WorkingDir||@YDAY||@YEAR'
$AUTOIT_CODES &= '||#cs||#ce||#include||#include-once||#NoTrayIcon||#RequireAdmin||#OnAutoItStartRegister||#Region||#EndRegion||#pragma compile'
$AUTOIT_CODES &= '||#include <APIComConstants.au3>||#include <APIConstants.au3>||#include <APIDiagConstants.au3>||#include <APIDlgConstants.au3>||#include <APIErrorsConstants.au3>||#include <APIFilesConstants.au3>||#include <APIGdiConstants.au3>||#include <APILocaleConstants.au3>||#include <APIMiscConstants.au3>||#include <APIProcConstants.au3>||#include <APIRegConstants.au3>||#include <APIResConstants.au3>||#include <APIShellExConstants.au3>||#include <APIShPathConstants.au3>||#include <APISysConstants.au3>||#include <APIThemeConstants.au3>||#include <Array.au3>||#include <AutoItConstants.au3>||#include <AVIConstants.au3>||#include <BorderConstants.au3>||#include <ButtonConstants.au3>||#include <Clipboard.au3>||#include <Color.au3>||#include <ColorConstants.au3>||#include <ComboConstants.au3>||#include <Constants.au3>||#include <Crypt.au3>||#include <Date.au3>||#include <DateTimeConstants.au3>||#include <Debug.au3>||#include <DirConstants.au3>||#include <EditConstants.au3>||#include <EventLog.au3>||#include <Excel.au3>||#include <ExcelConstants.au3>||#include <File.au3>||#include <FileConstants.au3>||#include <FontConstants.au3>||#include <FrameConstants.au3>||#include <FTPEx.au3>||#include <GDIPlus.au3>||#include <GDIPlusConstants.au3>||#include <GuiAVI.au3>||#include <GuiButton.au3>||#include <GuiComboBox.au3>||#include <GuiComboBoxEx.au3>'
$AUTOIT_CODES &= '||#include <GUIConstants.au3>||#include <GUIConstantsEx.au3>||#include <GuiDateTimePicker.au3>||#include <GuiEdit.au3>||#include <GuiHeader.au3>||#include <GuiImageList.au3>||#include <GuiIPAddress.au3>||#include <GuiListBox.au3>||#include <GuiListView.au3>||#include <GuiMenu.au3>||#include <GuiMonthCal.au3>||#include <GuiReBar.au3>||#include <GuiRichEdit.au3>||#include <GuiScrollBars.au3>||#include <GuiSlider.au3>||#include <GuiStatusBar.au3>||#include <GuiTab.au3>||#include <GuiToolbar.au3>||#include <GuiToolTip.au3>||#include <GuiTreeView.au3>||#include <HeaderConstants.au3>||#include <IE.au3>||#include <ImageListConstants.au3>||#include <Inet.au3>||#include <InetConstants.au3>||#include <IPAddressConstants.au3>||#include <ListBoxConstants.au3>||#include <ListViewConstants.au3>||#include <Math.au3>||#include <Memory.au3>||#include <MemoryConstants.au3>||#include <MenuConstants.au3>||#include <Misc.au3>||#include <MsgBoxConstants.au3>||#include <NamedPipes.au3>||#include <NetShare.au3>||#include <NTSTATUSConstants.au3>||#include <Process.au3>||#include <ProcessConstants.au3>||#include <ProgressConstants.au3>||#include <RebarConstants.au3>||#include <RichEditConstants.au3>||#include <ScreenCapture.au3>||#include <ScrollBarConstants.au3>||#include <ScrollBarsConstants.au3>||#include <Security.au3>||#include <SecurityConstants.au3>'
$AUTOIT_CODES &= '||#include <SendMessage.au3>||#include <SliderConstants.au3>||#include <Sound.au3>||#include <SQLite.au3>||#include <SQLite.dll.au3>||#include <StaticConstants.au3>||#include <StatusBarConstants.au3>||#include <String.au3>||#include <StringConstants.au3>||include <StructureConstants.au3>||#include <TabConstants.au3>||#include <Timers.au3>||#include <ToolbarConstants.au3>||#include <ToolTipConstants.au3>||#include <TrayConstants.au3>||#include <TreeViewConstants.au3>||#include <UDFGlobalID.au3>||#include <UpDownConstants.au3>||#include <Visa.au3>||#include <WinAPI.au3>||#include <WinAPICom.au3>||#include <WinAPIConstants.au3>||#include <WinAPIDiag.au3>||#include <WinAPIDlg.au3>||#include <WinAPIError.au3>||#include <WinAPIEx.au3>||#include <WinAPIFiles.au3>||#include <WinAPIGdi.au3>||#include <WinAPIInternals.au3>||#include <WinAPIlangConstants.au3>||#include <WinAPILocale.au3>||#include <WinAPIMisc.au3>||#include <WinAPIProc.au3>||#include <WinAPIReg.au3>||#include <WinAPIRes.au3>||#include <WinAPIShellEx.au3>||#include <WinAPIShPath.au3>||#include <WinAPISys.au3>||#include <WinAPIsysinfoConstants.au3>||#include <WinAPITheme.au3>||#include <WinAPIvkeysConstants.au3>||#include <WindowsConstants.au3>||#include <WinNet.au3>||#include <Word.au3>||#include <WordConstants.au3>'
$AUTOIT_CODES &= '||Abs||ACos||AdlibRegister||AdlibUnRegister||Asc||AscW||ASin||Assign||ATan||AutoItSetOption||AutoItWinGetTitle||AutoItWinSetTitle||Beep||Binary||BinaryLen||BinaryMid||BinaryToString||BitAND||BitNOT||BitOR||BitRotate||BitShift||BitXOR||BlockInput||Break||Call||CDTray||Ceiling||Chr||ChrW||ClipGet||ClipPut||ConsoleRead||ConsoleWrite||ConsoleWriteError||ControlClick||ControlCommand||ControlDisable||ControlEnable||ControlFocus||ControlGetFocus||ControlGetHandle||ControlGetPos||ControlGetText||ControlHide||ControlListView||ControlMove||ControlSend||ControlSetText||ControlShow||ControlTreeView||Cos||Dec||DirCopy||DirCreate||DirGetSize||DirMove||DirRemove||DllCall||DllCallAddress||DllCallbackFree||DllCallbackGetPtr||DllCallbackRegister||DllClose||DllOpen||DllStructCreate||DllStructGetData||DllStructGetPtr||DllStructGetSize||DllStructSetData||DriveGetDrive||DriveGetFileSystem||DriveGetLabel||DriveGetSerial||DriveGetType||DriveMapAdd||DriveMapDel||DriveMapGet||DriveSetLabel||DriveSpaceFree||DriveSpaceTotal||DriveStatus||EnvGet||EnvSet||EnvUpdate||Eval||Execute||Exp||FileChangeDir||FileClose||FileCopy||FileCreateNTFSLink||FileCreateShortcut||FileDelete||FileExists||FileFindFirstFile||FileFindNextFile||FileFlush||FileGetAttrib||FileGetEncoding||FileGetLongName||FileGetPos||FileGetShortcut||FileGetShortName||FileGetSize||FileGetTime'
$AUTOIT_CODES &= '||FileGetVersion||FileInstall||FileMove||FileOpen||FileOpenDialog||FileRead||FileReadLine||FileReadToArray||FileRecycle||FileRecycleEmpty||FileSaveDialog||FileSelectFolder||FileSetAttrib||FileSetPos||FileSetTime||FileWrite||FileWriteLine||Floor||FtpSetProxy||FuncName||GUICreate||GUICtrlCreateAvi||GUICtrlCreateButton||GUICtrlCreateCheckbox||GUICtrlCreateCombo||GUICtrlCreateContextMenu||GUICtrlCreateDate||GUICtrlCreateDummy||GUICtrlCreateEdit||GUICtrlCreateGraphic||GUICtrlCreateGroup||GUICtrlCreateIcon||GUICtrlCreateInput||GUICtrlCreateLabel||GUICtrlCreateList||GUICtrlCreateListView||GUICtrlCreateListViewItem||GUICtrlCreateMenu||GUICtrlCreateMenuItem||GUICtrlCreateMonthCal||GUICtrlCreateObj||GUICtrlCreatePic||GUICtrlCreateProgress||GUICtrlCreateRadio||GUICtrlCreateSlider||GUICtrlCreateTab||GUICtrlCreateTabItem||GUICtrlCreateTreeView||GUICtrlCreateTreeViewItem||GUICtrlCreateUpdown||GUICtrlDelete||GUICtrlGetHandle||GUICtrlGetState||GUICtrlRead||GUICtrlRecvMsg||GUICtrlRegisterListViewSort||GUICtrlSendMsg||GUICtrlSendToDummy||GUICtrlSetBkColor||GUICtrlSetColor||GUICtrlSetCursor||GUICtrlSetData||GUICtrlSetDefBkColor||GUICtrlSetDefColor||GUICtrlSetFont||GUICtrlSetGraphic||GUICtrlSetImage||GUICtrlSetLimit||GUICtrlSetOnEvent||GUICtrlSetPos||GUICtrlSetResizing||GUICtrlSetState||GUICtrlSetStyle||GUICtrlSetTip||GUIDelete'
$AUTOIT_CODES &= '||GUIGetCursorInfo||GUIGetMsg||GUIGetStyle||GUIRegisterMsg||GUISetAccelerators||GUISetBkColor||GUISetCoord||GUISetCursor||GUISetFont||GUISetHelp||GUISetIcon||GUISetOnEvent||GUISetState||GUISetStyle||GUIStartGroup||GUISwitch||Hex||HotKeySet||HttpSetProxy||HttpSetUserAgent||HWnd||InetClose||InetGet||InetGetInfo||InetGetSize||InetRead||IniDelete||IniRead||IniReadSection||IniReadSectionNames||IniRenameSection||IniWrite||IniWriteSection||InputBox||Int||IsAdmin||IsArray||IsBinary||IsBool||IsDeclared||IsDllStruct||IsFloat||IsFunc||IsHWnd||IsInt||IsKeyword||IsNumber||IsObj||IsPtr||IsString||Log||MemGetStats||Mod||MouseClick||MouseClickDrag||MouseDown||MouseGetCursor||MouseGetPos||MouseMove||MouseUp||MouseWheel||MsgBox||Number||ObjCreate||ObjCreateInterface||ObjEvent||ObjGet||ObjName||OnAutoItExitRegister||OnAutoItExitUnRegister||Ping||PixelChecksum||PixelGetColor||PixelSearch||ProcessClose||ProcessExists||ProcessGetStats||ProcessList||ProcessSetPriority||ProcessWait||ProcessWaitClose||ProgressOff||ProgressOn||ProgressSet||Ptr||Random||RegDelete||RegEnumKey||RegEnumVal||RegRead||RegWrite||Round||Run||RunAs||RunAsWait||RunWait||Send||SendKeepActive||SetError||SetExtended||ShellExecute||ShellExecuteWait||Shutdown||Sin||Sleep||SoundPlay||SoundSetWaveVolume||SplashImageOn||SplashOff||SplashTextOn||Sqrt||SRandom||StatusbarGetText||StderrRead'
$AUTOIT_CODES &= '||StdinWrite||StdioClose||StdoutRead||String||StringAddCR||StringCompare||StringFormat||StringFromASCIIArray||StringInStr||StringIsAlNum||StringIsAlpha||StringIsASCII||StringIsDigit||StringIsFloat||StringIsInt||StringIsLower||StringIsSpace||StringIsUpper||StringIsXDigit||StringLeft||StringLen||StringLower||StringMid||StringRegExp||StringRegExpReplace||StringReplace||StringReverse||StringRight||StringSplit||StringStripCR||StringStripWS||StringToASCIIArray||StringToBinary||StringTrimLeft||StringTrimRight||StringUpper||Tan||TCPAccept||TCPCloseSocket||TCPConnect||TCPListen||TCPNameToIP||TCPRecv||TCPSend||TCPShutdown||UDPShutdown||TCPStartup||UDPStartup||TimerDiff||TimerInit||ToolTip||TrayCreateItem||TrayCreateMenu||TrayGetMsg||TrayItemDelete||TrayItemGetHandle||TrayItemGetState||TrayItemGetText||TrayItemSetOnEvent||TrayItemSetState||TrayItemSetText||TraySetClick||TraySetIcon||TraySetOnEvent||TraySetPauseIcon||TraySetState||TraySetToolTip||TrayTip||UBound||UDPBind||UDPCloseSocket||UDPOpen||UDPRecv||UDPSend||VarGetType||WinActivate||WinActive||WinClose||WinExists||WinFlash||WinGetCaretPos||WinGetClassList||WinGetClientSize||WinGetHandle||WinGetPos||WinGetProcess||WinGetState||WinGetText||WinGetTitle||WinKill||WinList||WinMenuSelectItem||WinMinimizeAll||WinMinimizeAllUndo||WinMove||WinSetOnTop||WinSetState||WinSetTitle||WinSetTrans'
$AUTOIT_CODES &= '||WinWait||WinWaitActive||WinWaitClose||WinWaitNotActive'

GUI_Splash()
Create_Temp_Workstation()
GUIDelete($GUI_Splash)
GUI_Workstation()

While 1
    Local $w_all = GUICtrlRead($GUI_Workstation_WorkArea)
    Local $w_all_one = StringReplace($w_all, @CRLF, " ")
    Local $w_words = StringSplit($w_all_one, " ", 1)
    Local $w_last_word = StringReplace($w_words[$w_words[0]], " ", "")
    Local $w_last_word_length = StringLen($w_last_word)
    If $w_last_word == "" Then GUICtrlSetData($GUI_Workstation_Suggestions, "")
    If $w_last_word == "" Then ContinueLoop
    $AUTOIT_CODE = StringSplit($AUTOIT_CODES, "||", 1)
    $AUTOIT_SUGGESTIONS = ""
    For $aic = 1 To $AUTOIT_CODE[0]
        $w_autoit_matcher = StringMid($AUTOIT_CODE[$aic], 1, $w_last_word_length)
        If StringLower($w_last_word) == StringLower($w_autoit_matcher) Then
            $AUTOIT_SUGGESTIONS &= $AUTOIT_CODE[$aic] & @CRLF
        EndIf
    Next
    If GUICtrlRead($GUI_Workstation_Suggestions) == $AUTOIT_SUGGESTIONS Then ContinueLoop
    GUICtrlSetData($GUI_Workstation_Suggestions, $AUTOIT_SUGGESTIONS)
    Sleep(100)
WEnd

#Region Begin Splash GUI Creation
Func GUI_Splash()
    If Not FileExists($DIR_TEMP) Then DirCreate($DIR_TEMP)
    FileInstall("C:\AIP\splash.gif", $DIR_TEMP & "\splash.gif", 0)
    Global $GUI_Splash = GUICreate("Starting AutoIt Portable", 401, 257, 192, 124)
    GUISetBkColor(0xFFFFFF)
    Global $splash_image = GUICtrlCreatePic($IMG_Splash, 0, 0, 400, 250)
    GUISetOnEvent($GUI_EVENT_MINIMIZE, "Close_Spash", $GUI_Splash)
    GUISetOnEvent($GUI_EVENT_CLOSE, "Close_Spash", $GUI_Splash)
    GUISetState(@SW_SHOW)
EndFunc
#EndRegion End Splash GUI Creation


#Region Begin Workstation GUI Creation
Func GUI_Workstation()
    Global $GUI_Workstation = GUICreate("AutoIt Portable Workstation", 801, 431, 181, 90)
    Global $File_Menu_File = GUICtrlCreateMenu("&File")
    Global $File_Menu_New = GUICtrlCreateMenuItem("New File", $File_Menu_File)
    Global $File_Menu_Open = GUICtrlCreateMenuItem("Open File", $File_Menu_File)
    Global $File_Menu_Save = GUICtrlCreateMenuItem("Save File", $File_Menu_File)
    Global $File_Menu_Exit = GUICtrlCreateMenuItem("Exit", $File_Menu_File)
    Global $File_Menu_Options = GUICtrlCreateMenu("&Script Options")
    Global $File_Menu_Runx86 = GUICtrlCreateMenuItem("Run x86", $File_Menu_Options)
    Global $File_Menu_Runx64 = GUICtrlCreateMenuItem("Run x64", $File_Menu_Options)
    Global $File_Menu_Compiler = GUICtrlCreateMenuItem("Run Compiler", $File_Menu_Options)
    Global $File_Menu_Help = GUICtrlCreateMenu("&Help")
    Global $File_Menu_About = GUICtrlCreateMenuItem("About", $File_Menu_Help)
    GUISetFont(9, 400, 0, "Arial")
    GUISetBkColor(0xB9D1EA)
    Global $GUI_Workstation_WorkArea = GUICtrlCreateEdit(@CRLF & 'MsgBox(0, "Welcome Note", "Thank you for using AutoIt Portable!")' & @CRLF, 200, 0, 600, 409, BitOR($ES_AUTOVSCROLL,$ES_WANTRETURN,$WS_VSCROLL))
    GUICtrlSetColor(-1, 0x000000)
    Global $GUI_Workstation_Suggestions = GUICtrlCreateEdit("", 0, 24, 201, 385, BitOR($ES_AUTOVSCROLL,$ES_READONLY,$ES_WANTRETURN,$WS_VSCROLL))
    GUICtrlSetFont(-1, 8, 400, 0, "Arial")
    GUICtrlSetColor(-1, 0x000000)
    GUICtrlSetBkColor(-1, 0xD7E4F2)
    Local $Label1 = GUICtrlCreateLabel("Code Suggestions:", 3, 5, 110, 19)
    GUICtrlSetFont(-1, 9, 800, 0, "Arial")
    GUICtrlSetColor(-1, 0x000000)
    GUICtrlSetOnEvent($File_Menu_New, "GUI_File_New")
    GUICtrlSetOnEvent($File_Menu_Open, "GUI_File_Open")
    GUICtrlSetOnEvent($File_Menu_Save, "GUI_File_Save")
    GUICtrlSetOnEvent($File_Menu_Exit, "Close_Workstation")
    GUICtrlSetOnEvent($File_Menu_Runx86, "GUI_Run_x86")
    GUICtrlSetOnEvent($File_Menu_Runx64, "GUI_Run_x64")
    GUICtrlSetOnEvent($File_Menu_Compiler, "GUI_Compiler")
    GUICtrlSetOnEvent($File_Menu_About, "GUI_About")
    GUISetOnEvent($GUI_EVENT_CLOSE, "Close_Workstation", $GUI_Workstation)
    GUISetState(@SW_SHOW, $GUI_Workstation)
EndFunc
#EndRegion End Workstation GUI Creation


#Region Begin Compiler GUI Creation
Func GUI_Compiler()
    Global $GUI_Compiler = GUICreate("AICompiler GUI", 234, 447, 325, 143)
    Local $GUI_Compiler_Label1 = GUICtrlCreateLabel("App Name:", 8, 11, 57, 17)
    Local $GUI_Compiler_Label2 = GUICtrlCreateLabel("App Icon:", 8, 35, 50, 17)
    Local $GUI_Compiler_Label3 = GUICtrlCreateLabel("Product Name:", 8, 59, 75, 17)
    Local $GUI_Compiler_Label4 = GUICtrlCreateLabel("Company Name:", 8, 83, 82, 17)
    Local $GUI_Compiler_Label5 = GUICtrlCreateLabel("Copyright:", 8, 107, 51, 17)
    Local $GUI_Compiler_Label6 = GUICtrlCreateLabel("Trademarks:", 8, 131, 63, 17)
    Local $GUI_Compiler_Label7 = GUICtrlCreateLabel("File Version:", 8, 155, 61, 17)
    Local $GUI_Compiler_Label8 = GUICtrlCreateLabel("Product Version:", 8, 179, 82, 17)
    Local $GUI_Compiler_Label9 = GUICtrlCreateLabel("Description:", 8, 203, 60, 17)
    Local $GUI_Compiler_Label10 = GUICtrlCreateLabel("Comment:", 8, 227, 51, 17)
    Local $GUI_Compiler_Label11 = GUICtrlCreateLabel("Ignore Directives:", 8, 251, 87, 17)
    Local $GUI_Compiler_Label12 = GUICtrlCreateLabel("Compile For:", 8, 275, 62, 17)
    Local $GUI_Compiler_Label13 = GUICtrlCreateLabel("Compression:", 8, 299, 67, 17)
    Local $GUI_Compiler_Label14 = GUICtrlCreateLabel("Comp. w/ UPX:", 8, 323, 78, 17)
    Local $GUI_Compiler_Label15 = GUICtrlCreateLabel("Execution Level:", 8, 347, 83, 17)
    Local $GUI_Compiler_Label16 = GUICtrlCreateLabel("Compatibility:", 8, 371, 65, 17)
    Local $GUI_Compiler_Label17 = GUICtrlCreateLabel("App Type:", 8, 395, 53, 17)
    Global $GUI_Compiler_OutputFile = GUICtrlCreateInput("My App", 72, 8, 153, 21)
    Global $GUI_Compiler_IconFile = GUICtrlCreateInput($FILE_icon, 72, 32, 105, 21)
    Global $GUI_Compiler_LoadIcon_Button = GUICtrlCreateButton("Load", 184, 32, 43, 21)
    Global $GUI_Compiler_ProductName = GUICtrlCreateInput("", 88, 56, 137, 21)
    Global $GUI_Compiler_CompanyName = GUICtrlCreateInput("", 88, 80, 137, 21)
    Global $GUI_Compiler_Copyright = GUICtrlCreateInput("", 72, 104, 153, 21)
    Global $GUI_Compiler_Trademarks = GUICtrlCreateInput("", 72, 128, 153, 21)
    Global $GUI_Compiler_FileVersion = GUICtrlCreateInput("", 88, 152, 137, 21)
    Global $GUI_Compiler_ProductVersion = GUICtrlCreateInput("", 88, 176, 137, 21)
    Global $GUI_Compiler_Description = GUICtrlCreateInput("", 72, 200, 153, 21)
    Global $GUI_Compiler_Comment = GUICtrlCreateInput("", 72, 224, 153, 21)
    Global $GUI_Compiler_IgnoreDirectives = GUICtrlCreateCheckbox("Ignore", 120, 248, 65, 17)
    Global $GUI_Compiler_x86 = GUICtrlCreateCheckbox("x86", 120, 273, 49, 17)
    GUICtrlSetState(-1, $GUI_CHECKED)
    Global $GUI_Compiler_x64 = GUICtrlCreateCheckbox("x64", 176, 273, 49, 17)
    Global $GUI_Compiler_Compression = GUICtrlCreateCombo("None", 88, 296, 137, 25, BitOR($CBS_DROPDOWN,$CBS_AUTOHSCROLL))
    GUICtrlSetData($GUI_Compiler_Compression, "Low|Medium|High|Highest", "None")
    Global $GUI_Compiler_UPXCompression = GUICtrlCreateCombo("Dont Compress", 88, 320, 137, 25, BitOR($CBS_DROPDOWN,$CBS_AUTOHSCROLL))
    GUICtrlSetData($GUI_Compiler_UPXCompression, "Compress", "Dont Compress")
    Global $GUI_Compiler_ExecutionLevel = GUICtrlCreateCombo("None", 88, 344, 137, 25, BitOR($CBS_DROPDOWN,$CBS_AUTOHSCROLL))
    GUICtrlSetData($GUI_Compiler_ExecutionLevel, "AsInvoker|Highest Avail|Require Admin", "None")
    Global $GUI_Compiler_Compatibility = GUICtrlCreateCombo("All", 88, 368, 137, 25, BitOR($CBS_DROPDOWN,$CBS_AUTOHSCROLL))
    GUICtrlSetData($GUI_Compiler_Compatibility, "Windows Vista|Windows 7|Windows 8", "All")
    Global $GUI_Compiler_AppType = GUICtrlCreateCombo("Default", 88, 392, 137, 25, BitOR($CBS_DROPDOWN,$CBS_AUTOHSCROLL))
    GUICtrlSetData($GUI_Compiler_AppType, "GUI|Console", "Default")
    Global $GUI_Compiler_Compile_Button = GUICtrlCreateButton("Compile", 136, 416, 91, 25)
    GUICtrlSetOnEvent($GUI_Compiler_LoadIcon_Button, "Compiler")
    GUICtrlSetOnEvent($GUI_Compiler_Compile_Button, "Compiler")
    GUISetOnEvent($GUI_EVENT_CLOSE, "Close_Compiler", $GUI_Compiler)
    GUISetState(@SW_SHOW, $GUI_Compiler)
EndFunc
#EndRegion End Compiler GUI Creation


#Region Begin Splash GUI Events
Func Close_Spash()
    TrayTip("AIP Response", "Please wait for AIP to finish initializing", 6)
EndFunc
#EndRegion End Splash GUI Creation


#Region Begin Workstation GUI Events
Func GUI_File_New()
    GUICtrlSetData($GUI_Workstation_WorkArea, "")
EndFunc
Func GUI_File_Open()
    Local $f_open_script = FileOpenDialog("Open AutoIt Script", @ScriptDir, "au3 (*.au3)|All (*.*)", 1, $Last_Opened, $GUI_Workstation)
    $Last_Opened = StringTrimLeft($f_open_script, StringInStr($f_open_script, "\", $STR_NOCASESENSE, -1))
    Local $f_open_script_Script = FileRead($f_open_script)
    GUICtrlSetData($GUI_Workstation_WorkArea, $f_open_script_Script)
EndFunc
Func GUI_File_Save()
    Local $f_save_script = FileSaveDialog("Save AutoIt Script", @ScriptDir, "au3 (*.au3)|All (*.*)", 0, $Last_Opened, $GUI_Workstation)
    $Last_Opened = StringTrimLeft($f_save_script, StringInStr($f_save_script, "\", $STR_NOCASESENSE, -1))
    Local $f_script = GUICtrlRead($GUI_Workstation_WorkArea)
    If FileExists($f_save_script) Then FileDelete($f_save_script)
    _FileCreate($f_save_script)
    Local $f_save_script_Open = FileOpen($f_save_script, $FO_APPEND)
    FileWrite($f_save_script_Open, $f_script)
    FileClose($f_save_script_Open)
EndFunc
Func GUI_Run_x86()
    Local $f_script = GUICtrlRead($GUI_Workstation_WorkArea)
    If FileExists($FILE_TEMP_EXE) Then FileDelete($FILE_TEMP_EXE)
    If FileExists($FILE_TEMP) Then FileDelete($FILE_TEMP)
    _FileCreate($FILE_TEMP)
    Local $FILE_TEMP_Open = FileOpen($FILE_TEMP, $FO_APPEND)
    FileWrite($FILE_TEMP_Open, $f_script)
    FileClose($FILE_TEMP_Open)
    RunWait($DIR_TEMP & '/Aut2exe.exe /in "' & $FILE_TEMP & '" /out "' & $FILE_TEMP_EXE & '" /icon "' & $FILE_icon & '" /comp 0 /nopack /x86')
    FileDelete($FILE_TEMP)
    Run($FILE_TEMP_EXE)
EndFunc
Func GUI_Run_x64()
    Local $f_script = GUICtrlRead($GUI_Workstation_WorkArea)
    If FileExists($FILE_TEMP_EXE) Then FileDelete($FILE_TEMP_EXE)
    If FileExists($FILE_TEMP) Then FileDelete($FILE_TEMP)
    _FileCreate($FILE_TEMP)
    Local $FILE_TEMP_Open = FileOpen($FILE_TEMP, $FO_APPEND)
    FileWrite($FILE_TEMP_Open, $f_script)
    FileClose($FILE_TEMP_Open)
    RunWait($DIR_TEMP & '/Aut2exe.exe /in "' & $FILE_TEMP & '" /out "' & $FILE_TEMP_EXE & '" /icon "' & $FILE_icon & '" /comp 0 /nopack /x64')
    FileDelete($FILE_TEMP)
    Run($FILE_TEMP_EXE)
EndFunc
Func GUI_About()
    MsgBox(0, "About AIP", "AutoIt Portable was made by zelles to help people who need AutoIt on the fly." & @CRLF & "Currently running version: 0.0.1")
EndFunc
Func Close_Workstation()
    GUIDelete($GUI_Workstation)
    If FileExists($DIR_TEMP) Then DirRemove($DIR_TEMP, 1)
    Exit
EndFunc
#EndRegion End Workstation GUI Events


#Region Begin Compiler GUI Events
Func Compiler($f_data)
    ; Unintergrated commands: /ansi /unicode /originalfilename "" /internalname ""
    If Not FileExists($DIR_complier_output) Then DirCreate($DIR_complier_output)
    Local $f_script = GUICtrlRead($GUI_Workstation_WorkArea)
    If FileExists($FILE_TEMP) Then FileDelete($FILE_TEMP)
    _FileCreate($FILE_TEMP)
    Local $FILE_TEMP_Open = FileOpen($FILE_TEMP, $FO_APPEND)
    FileWrite($FILE_TEMP_Open, $f_script)
    FileClose($FILE_TEMP_Open)
    Local $Compiler_Script_x86 = $DIR_TEMP & '/Aut2exe.exe'
    Local $Compiler_Script_x64 = $DIR_TEMP & '/Aut2exe.exe'
    $Compiler_Script_x86 &= ' /in "' & $FILE_TEMP & '"'
    $Compiler_Script_x64 &= ' /in "' & $FILE_TEMP & '"'
    Local $f_OutputFile = GUICtrlRead($GUI_Compiler_OutputFile)
    $Compiler_Script_x86 &= ' /out "' & $DIR_complier_output & '\' & $f_OutputFile & ' x86.exe"'
    $Compiler_Script_x64 &= ' /out "' & $DIR_complier_output & '\' & $f_OutputFile & ' x64.exe"'
    Switch GUICtrlRead($GUI_Compiler_IconFile)
        Case ""
            $Compiler_Script_x86 &= ' /icon "' & $FILE_icon & '"'
            $Compiler_Script_x64 &= ' /icon "' & $FILE_icon & '"'
        Case Else
            If FileExists(GUICtrlRead($GUI_Compiler_IconFile)) Then
                $Compiler_Script_x86 &= ' /icon "' & GUICtrlRead($GUI_Compiler_IconFile) & '"'
                $Compiler_Script_x64 &= ' /icon "' & GUICtrlRead($GUI_Compiler_IconFile) & '"'
            Else
                $Compiler_Script_x86 &= ' /icon "' & $FILE_icon & '"'
                $Compiler_Script_x64 &= ' /icon "' & $FILE_icon & '"'
            EndIf
    EndSwitch
    $Compiler_Script_x86 &= ' /x86'
    $Compiler_Script_x64 &= ' /x64'
    Switch GUICtrlRead($GUI_Compiler_Compression)
        Case "None"
            $Compiler_Script_x86 &= ' /comp 0'
            $Compiler_Script_x64 &= ' /comp 0'
        Case "Low"
            $Compiler_Script_x86 &= ' /comp 1'
            $Compiler_Script_x64 &= ' /comp 1'
        Case "Medium"
            $Compiler_Script_x86 &= ' /comp 2'
            $Compiler_Script_x64 &= ' /comp 2'
        Case "High"
            $Compiler_Script_x86 &= ' /comp 3'
            $Compiler_Script_x64 &= ' /comp 3'
        Case "Highest"
            $Compiler_Script_x86 &= ' /comp 4'
            $Compiler_Script_x64 &= ' /comp 4'
    EndSwitch
    Switch GUICtrlRead($GUI_Compiler_IgnoreDirectives)
        Case $GUI_CHECKED
            $Compiler_Script_x86 &= ' /ignoredirectives'
            $Compiler_Script_x64 &= ' /ignoredirectives'
    EndSwitch
    Switch GUICtrlRead($GUI_Compiler_UPXCompression)
        Case "Dont Compress"
            $Compiler_Script_x86 &= ' /nopack'
            $Compiler_Script_x64 &= ' /nopack'
        Case "Compress"
            $Compiler_Script_x86 &= ' /pack'
            $Compiler_Script_x64 &= ' /pack'
    EndSwitch
    Switch GUICtrlRead($GUI_Compiler_AppType)
        Case "GUI"
            $Compiler_Script_x86 &= ' /gui'
            $Compiler_Script_x64 &= ' /gui'
        Case "Console"
            $Compiler_Script_x86 &= ' /console'
            $Compiler_Script_x64 &= ' /console'
    EndSwitch
    Switch GUICtrlRead($GUI_Compiler_ExecutionLevel)
        Case "None"
            $Compiler_Script_x86 &= ' /execlevel none'
            $Compiler_Script_x64 &= ' /execlevel none'
        Case "AsInvoker"
            $Compiler_Script_x86 &= ' /execlevel asinvoker'
            $Compiler_Script_x64 &= ' /execlevel asinvoker'
        Case "Highest Avail"
            $Compiler_Script_x86 &= ' /execlevel highestavailable'
            $Compiler_Script_x64 &= ' /execlevel highestavailable'
        Case "Require Admin"
            $Compiler_Script_x86 &= ' /execlevel requireadministrator'
            $Compiler_Script_x64 &= ' /execlevel requireadministrator'
    EndSwitch
    Switch GUICtrlRead($GUI_Compiler_Compatibility)
        Case "Windows Vista"
            $Compiler_Script_x86 &= ' /compatibility vista'
            $Compiler_Script_x64 &= ' /compatibility vista'
        Case "Windows 7"
            $Compiler_Script_x86 &= ' /compatibility win7'
            $Compiler_Script_x64 &= ' /compatibility win7'
        Case "Windows 8"
            $Compiler_Script_x86 &= ' /compatibility win8'
            $Compiler_Script_x64 &= ' /compatibility win8'
    EndSwitch
    Switch GUICtrlRead($GUI_Compiler_Comment)
        Case ""
            $Compiler_Script_x86 &= ' /comments "Compiled with AutoIt Portable by zelles."'
            $Compiler_Script_x64 &= ' /comments "Compiled with AutoIt Portable by zelles."'
        Case Else
            $Compiler_Script_x86 &= ' /comments "' & GUICtrlRead($GUI_Compiler_Comment) & '"'
            $Compiler_Script_x64 &= ' /comments "' & GUICtrlRead($GUI_Compiler_Comment) & '"'
    EndSwitch
    Switch GUICtrlRead($GUI_Compiler_CompanyName)
        Case ""
            $Compiler_Script_x86 &= ' /companyname "None"'
            $Compiler_Script_x64 &= ' /companyname "None"'
        Case Else
            $Compiler_Script_x86 &= ' /companyname "' & GUICtrlRead($GUI_Compiler_CompanyName) & '"'
            $Compiler_Script_x64 &= ' /companyname "' & GUICtrlRead($GUI_Compiler_CompanyName) & '"'
    EndSwitch
    Switch GUICtrlRead($GUI_Compiler_Description)
        Case ""
            $Compiler_Script_x86 &= ' /filedescription "None"'
            $Compiler_Script_x64 &= ' /filedescription "None"'
        Case Else
            $Compiler_Script_x86 &= ' /filedescription "' & GUICtrlRead($GUI_Compiler_Description) & '"'
            $Compiler_Script_x64 &= ' /filedescription "' & GUICtrlRead($GUI_Compiler_Description) & '"'
    EndSwitch
    Switch GUICtrlRead($GUI_Compiler_Copyright)
        Case ""
            $Compiler_Script_x86 &= ' /legalcopyright ' & @YEAR
            $Compiler_Script_x64 &= ' /legalcopyright ' & @YEAR
        Case Else
            $Compiler_Script_x86 &= ' /legalcopyright "' & GUICtrlRead($GUI_Compiler_Copyright) & '"'
            $Compiler_Script_x64 &= ' /legalcopyright "' & GUICtrlRead($GUI_Compiler_Copyright) & '"'
    EndSwitch
    Switch GUICtrlRead($GUI_Compiler_Trademarks)
        Case ""
            $nothing = 0
        Case Else
            $Compiler_Script_x86 &= ' /legaltrademarks "' & GUICtrlRead($GUI_Compiler_Trademarks) & '"'
            $Compiler_Script_x64 &= ' /legaltrademarks "' & GUICtrlRead($GUI_Compiler_Trademarks) & '"'
    EndSwitch
    Switch GUICtrlRead($GUI_Compiler_ProductName)
        Case ""
            $nothing = 0
        Case Else
            $Compiler_Script_x86 &= ' /productname "' & GUICtrlRead($GUI_Compiler_ProductName) & '"'
            $Compiler_Script_x64 &= ' /productname "' & GUICtrlRead($GUI_Compiler_ProductName) & '"'
    EndSwitch
    Switch GUICtrlRead($GUI_Compiler_FileVersion)
        Case ""
            $Compiler_Script_x86 &= ' /fileversion "0.0.0.1"'
            $Compiler_Script_x64 &= ' /fileversion "0.0.0.1"'
        Case Else
            $Compiler_Script_x86 &= ' /fileversion "' & GUICtrlRead($GUI_Compiler_FileVersion) & '"'
            $Compiler_Script_x64 &= ' /fileversion "' & GUICtrlRead($GUI_Compiler_FileVersion) & '"'
    EndSwitch
    Switch GUICtrlRead($GUI_Compiler_ProductVersion)
        Case ""
            $Compiler_Script_x86 &= ' /productversion "3.3.12.0"'
            $Compiler_Script_x64 &= ' /productversion "3.3.12.0"'
        Case Else
            $Compiler_Script_x86 &= ' /productversion "' & GUICtrlRead($GUI_Compiler_ProductVersion) & '"'
            $Compiler_Script_x64 &= ' /productversion "' & GUICtrlRead($GUI_Compiler_ProductVersion) & '"'
    EndSwitch

    If GUICtrlRead($GUI_Compiler_x86) = $GUI_CHECKED Then
        RunWait($Compiler_Script_x86)
        ;RunWait($DIR_TEMP & '/Aut2exe.exe /in "' & $FILE_TEMP & '" /out "' & $DIR_complier_output & '\' & $f_OutputFile & ' x86.exe" /icon "' & $FILE_icon & '"' & $f_Compression & $f_UPXCompression & ' /x86')
        ;RunWait($DIR_TEMP & '/Aut2exe.exe /in "' & $FILE_TEMP & '" /out "' & $DIR_complier_output & '\' & $f_OutputFile & ' x86.exe"' & $f_IconFile & $f_Compression & $f_IgnoreDirectives & $f_UPXCompression & ' /x86'`& $f_AppType & $f_ExecutionLevel & $f_Compatibility & $f_Comment & $f_CompanyName & $f_Description & $f_Copyright & $f_Trademarks & $f_ProductName & $f_FileVersion & $f_ProductVersion)
    EndIf
    If GUICtrlRead($GUI_Compiler_x64) = $GUI_CHECKED Then
        RunWait($Compiler_Script_x64)
        ;RunWait($DIR_TEMP & '/Aut2exe.exe /in "' & $FILE_TEMP & '" /out "' & $DIR_complier_output & '\' & $f_OutputFile & ' x64.exe"' & $f_IconFile & $f_Compression & $f_IgnoreDirectives & $f_UPXCompression & ' /x64'`& $f_AppType & $f_ExecutionLevel & $f_Compatibility & $f_Comment & $f_CompanyName & $f_Description & $f_Copyright & $f_Trademarks & $f_ProductName & $f_FileVersion & $f_ProductVersion)
    EndIf
    FileDelete($FILE_TEMP)
    GUIDelete($GUI_Compiler)
    MsgBox(0, "AIP Response", "The compiler is finished. Check script directory for files.")
EndFunc
Func Close_Compiler()
    GUIDelete($GUI_Compiler)
EndFunc
#EndRegion End Compiler GUI Events


#Region Begin Temp Appdata Setup
Func Create_Temp_Workstation()
    If Not FileExists($DIR_TEMP) Then DirCreate($DIR_TEMP)
    If Not FileExists($DIR_includes) Then DirCreate($DIR_includes)
    FileInstall("C:\AIP\Icon.ico", $DIR_TEMP & "\Icon.ico", 0)
    FileInstall("C:\AIP\Aut2exe.exe", $DIR_TEMP & "\Aut2exe.exe", 0)
    FileInstall("C:\AIP\upx.exe", $DIR_TEMP & "\upx.exe", 0)
    FileInstall("C:\AIP\includes\APIComConstants.au3", $DIR_includes & "\APIComConstants.au3", 0)
    FileInstall("C:\AIP\includes\APIConstants.au3", $DIR_includes & "\APIConstants.au3", 0)
    FileInstall("C:\AIP\includes\APIDiagConstants.au3", $DIR_includes & "\APIDiagConstants.au3", 0)
    FileInstall("C:\AIP\includes\APIDlgConstants.au3", $DIR_includes & "\APIDlgConstants.au3", 0)
    FileInstall("C:\AIP\includes\APIErrorsConstants.au3", $DIR_includes & "\APIErrorsConstants.au3", 0)
    FileInstall("C:\AIP\includes\APIFilesConstants.au3", $DIR_includes & "\APIFilesConstants.au3", 0)
    FileInstall("C:\AIP\includes\APIGdiConstants.au3", $DIR_includes & "\APIGdiConstants.au3", 0)
    FileInstall("C:\AIP\includes\APILocaleConstants.au3", $DIR_includes & "\APILocaleConstants.au3", 0)
    FileInstall("C:\AIP\includes\APIMiscConstants.au3", $DIR_includes & "\APIMiscConstants.au3", 0)
    FileInstall("C:\AIP\includes\APIProcConstants.au3", $DIR_includes & "\APIProcConstants.au3", 0)
    FileInstall("C:\AIP\includes\APIRegConstants.au3", $DIR_includes & "\APIRegConstants.au3", 0)
    FileInstall("C:\AIP\includes\APIResConstants.au3", $DIR_includes & "\APIResConstants.au3", 0)
    FileInstall("C:\AIP\includes\APIShellExConstants.au3", $DIR_includes & "\APIShellExConstants.au3", 0)
    FileInstall("C:\AIP\includes\APIShPathConstants.au3", $DIR_includes & "\APIShPathConstants.au3", 0)
    FileInstall("C:\AIP\includes\APISysConstants.au3", $DIR_includes & "\APISysConstants.au3", 0)
    FileInstall("C:\AIP\includes\APIThemeConstants.au3", $DIR_includes & "\APIThemeConstants.au3", 0)
    FileInstall("C:\AIP\includes\Array.au3", $DIR_includes & "\Array.au3", 0)
    FileInstall("C:\AIP\includes\AutoItConstants.au3", $DIR_includes & "\AutoItConstants.au3", 0)
    FileInstall("C:\AIP\includes\AVIConstants.au3", $DIR_includes & "\AVIConstants.au3", 0)
    FileInstall("C:\AIP\includes\BorderConstants.au3", $DIR_includes & "\BorderConstants.au3", 0)
    FileInstall("C:\AIP\includes\ButtonConstants.au3", $DIR_includes & "\ButtonConstants.au3", 0)
    FileInstall("C:\AIP\includes\Clipboard.au3", $DIR_includes & "\Clipboard.au3", 0)
    FileInstall("C:\AIP\includes\Color.au3", $DIR_includes & "\Color.au3", 0)
    FileInstall("C:\AIP\includes\ColorConstants.au3", $DIR_includes & "\ColorConstants.au3", 0)
    FileInstall("C:\AIP\includes\ComboConstants.au3", $DIR_includes & "\ComboConstants.au3", 0)
    FileInstall("C:\AIP\includes\Constants.au3", $DIR_includes & "\Constants.au3", 0)
    FileInstall("C:\AIP\includes\Crypt.au3", $DIR_includes & "\Crypt.au3", 0)
    FileInstall("C:\AIP\includes\Date.au3", $DIR_includes & "\Date.au3", 0)
    FileInstall("C:\AIP\includes\DateTimeConstants.au3", $DIR_includes & "\DateTimeConstants.au3", 0)
    FileInstall("C:\AIP\includes\Debug.au3", $DIR_includes & "\Debug.au3", 0)
    FileInstall("C:\AIP\includes\DirConstants.au3", $DIR_includes & "\DirConstants.au3", 0)
    FileInstall("C:\AIP\includes\EditConstants.au3", $DIR_includes & "\EditConstants.au3", 0)
    FileInstall("C:\AIP\includes\EventLog.au3", $DIR_includes & "\EventLog.au3", 0)
    FileInstall("C:\AIP\includes\Excel.au3", $DIR_includes & "\Excel.au3", 0)
    FileInstall("C:\AIP\includes\ExcelConstants.au3", $DIR_includes & "\ExcelConstants.au3", 0)
    FileInstall("C:\AIP\includes\File.au3", $DIR_includes & "\File.au3", 0)
    FileInstall("C:\AIP\includes\FileConstants.au3", $DIR_includes & "\FileConstants.au3", 0)
    FileInstall("C:\AIP\includes\FontConstants.au3", $DIR_includes & "\FontConstants.au3", 0)
    FileInstall("C:\AIP\includes\FrameConstants.au3", $DIR_includes & "\FrameConstants.au3", 0)
    FileInstall("C:\AIP\includes\FTPEx.au3", $DIR_includes & "\FTPEx.au3", 0)
    FileInstall("C:\AIP\includes\GDIPlus.au3", $DIR_includes & "\GDIPlus.au3", 0)
    FileInstall("C:\AIP\includes\GDIPlusConstants.au3", $DIR_includes & "\GDIPlusConstants.au3", 0)
    FileInstall("C:\AIP\includes\GuiAVI.au3", $DIR_includes & "\GuiAVI.au3", 0)
    FileInstall("C:\AIP\includes\GuiButton.au3", $DIR_includes & "\GuiButton.au3", 0)
    FileInstall("C:\AIP\includes\GuiComboBox.au3", $DIR_includes & "\GuiComboBox.au3", 0)
    FileInstall("C:\AIP\includes\GuiComboBoxEx.au3", $DIR_includes & "\GuiComboBoxEx.au3", 0)
    FileInstall("C:\AIP\includes\GUIConstants.au3", $DIR_includes & "\GUIConstants.au3", 0)
    FileInstall("C:\AIP\includes\GUIConstantsEx.au3", $DIR_includes & "\GUIConstantsEx.au3", 0)
    FileInstall("C:\AIP\includes\GuiDateTimePicker.au3", $DIR_includes & "\GuiDateTimePicker.au3", 0)
    FileInstall("C:\AIP\includes\GuiEdit.au3", $DIR_includes & "\GuiEdit.au3", 0)
    FileInstall("C:\AIP\includes\GuiHeader.au3", $DIR_includes & "\GuiHeader.au3", 0)
    FileInstall("C:\AIP\includes\GuiImageList.au3", $DIR_includes & "\GuiImageList.au3", 0)
    FileInstall("C:\AIP\includes\GuiIPAddress.au3", $DIR_includes & "\GuiIPAddress.au3", 0)
    FileInstall("C:\AIP\includes\GuiListBox.au3", $DIR_includes & "\GuiListBox.au3", 0)
    FileInstall("C:\AIP\includes\GuiListView.au3", $DIR_includes & "\GuiListView.au3", 0)
    FileInstall("C:\AIP\includes\GuiMenu.au3", $DIR_includes & "\GuiMenu.au3", 0)
    FileInstall("C:\AIP\includes\GuiMonthCal.au3", $DIR_includes & "\GuiMonthCal.au3", 0)
    FileInstall("C:\AIP\includes\GuiReBar.au3", $DIR_includes & "\GuiReBar.au3", 0)
    FileInstall("C:\AIP\includes\GuiRichEdit.au3", $DIR_includes & "\GuiRichEdit.au3", 0)
    FileInstall("C:\AIP\includes\GuiScrollBars.au3", $DIR_includes & "\GuiScrollBars.au3", 0)
    FileInstall("C:\AIP\includes\GuiSlider.au3", $DIR_includes & "\GuiSlider.au3", 0)
    FileInstall("C:\AIP\includes\GuiStatusBar.au3", $DIR_includes & "\GuiStatusBar.au3", 0)
    FileInstall("C:\AIP\includes\GuiTab.au3", $DIR_includes & "\GuiTab.au3", 0)
    FileInstall("C:\AIP\includes\GuiToolbar.au3", $DIR_includes & "\GuiToolbar.au3", 0)
    FileInstall("C:\AIP\includes\GuiToolTip.au3", $DIR_includes & "\GuiToolTip.au3", 0)
    FileInstall("C:\AIP\includes\GuiTreeView.au3", $DIR_includes & "\GuiTreeView.au3", 0)
    FileInstall("C:\AIP\includes\HeaderConstants.au3", $DIR_includes & "\HeaderConstants.au3", 0)
    FileInstall("C:\AIP\includes\IE.au3", $DIR_includes & "\IE.au3", 0)
    FileInstall("C:\AIP\includes\ImageListConstants.au3", $DIR_includes & "\ImageListConstants.au3", 0)
    FileInstall("C:\AIP\includes\Inet.au3", $DIR_includes & "\Inet.au3", 0)
    FileInstall("C:\AIP\includes\InetConstants.au3", $DIR_includes & "\InetConstants.au3", 0)
    FileInstall("C:\AIP\includes\IPAddressConstants.au3", $DIR_includes & "\IPAddressConstants.au3", 0)
    FileInstall("C:\AIP\includes\ListBoxConstants.au3", $DIR_includes & "\ListBoxConstants.au3", 0)
    FileInstall("C:\AIP\includes\ListViewConstants.au3", $DIR_includes & "\ListViewConstants.au3", 0)
    FileInstall("C:\AIP\includes\Math.au3", $DIR_includes & "\Math.au3", 0)
    FileInstall("C:\AIP\includes\Memory.au3", $DIR_includes & "\Memory.au3", 0)
    FileInstall("C:\AIP\includes\MemoryConstants.au3", $DIR_includes & "\MemoryConstants.au3", 0)
    FileInstall("C:\AIP\includes\MenuConstants.au3", $DIR_includes & "\MenuConstants.au3", 0)
    FileInstall("C:\AIP\includes\Misc.au3", $DIR_includes & "\Misc.au3", 0)
    FileInstall("C:\AIP\includes\MsgBoxConstants.au3", $DIR_includes & "\MsgBoxConstants.au3", 0)
    FileInstall("C:\AIP\includes\NamedPipes.au3", $DIR_includes & "\NamedPipes.au3", 0)
    FileInstall("C:\AIP\includes\NetShare.au3", $DIR_includes & "\NetShare.au3", 0)
    FileInstall("C:\AIP\includes\NTSTATUSConstants.au3", $DIR_includes & "\NTSTATUSConstants.au3", 0)
    FileInstall("C:\AIP\includes\Process.au3", $DIR_includes & "\Process.au3", 0)
    FileInstall("C:\AIP\includes\ProcessConstants.au3", $DIR_includes & "\ProcessConstants.au3", 0)
    FileInstall("C:\AIP\includes\ProgressConstants.au3", $DIR_includes & "\ProgressConstants.au3", 0)
    FileInstall("C:\AIP\includes\RebarConstants.au3", $DIR_includes & "\RebarConstants.au3", 0)
    FileInstall("C:\AIP\includes\RichEditConstants.au3", $DIR_includes & "\RichEditConstants.au3", 0)
    FileInstall("C:\AIP\includes\ScreenCapture.au3", $DIR_includes & "\ScreenCapture.au3", 0)
    FileInstall("C:\AIP\includes\ScrollBarConstants.au3", $DIR_includes & "\ScrollBarConstants.au3", 0)
    FileInstall("C:\AIP\includes\ScrollBarsConstants.au3", $DIR_includes & "\ScrollBarsConstants.au3", 0)
    FileInstall("C:\AIP\includes\Security.au3", $DIR_includes & "\Security.au3", 0)
    FileInstall("C:\AIP\includes\SecurityConstants.au3", $DIR_includes & "\SecurityConstants.au3", 0)
    FileInstall("C:\AIP\includes\SendMessage.au3", $DIR_includes & "\SendMessage.au3", 0)
    FileInstall("C:\AIP\includes\SliderConstants.au3", $DIR_includes & "\SendMessage.au3", 0)
    FileInstall("C:\AIP\includes\Sound.au3", $DIR_includes & "\Sound.au3", 0)
    FileInstall("C:\AIP\includes\SQLite.au3", $DIR_includes & "\SQLite.au3", 0)
    FileInstall("C:\AIP\includes\SQLite.dll.au3", $DIR_includes & "\SQLite.dll.au3", 0)
    FileInstall("C:\AIP\includes\StaticConstants.au3", $DIR_includes & "\StaticConstants.au3", 0)
    FileInstall("C:\AIP\includes\StatusBarConstants.au3", $DIR_includes & "\StatusBarConstants.au3", 0)
    FileInstall("C:\AIP\includes\String.au3", $DIR_includes & "\String.au3", 0)
    FileInstall("C:\AIP\includes\StringConstants.au3", $DIR_includes & "\StringConstants.au3", 0)
    FileInstall("C:\AIP\includes\StructureConstants.au3", $DIR_includes & "\StructureConstants.au3", 0)
    FileInstall("C:\AIP\includes\TabConstants.au3", $DIR_includes & "\TabConstants.au3", 0)
    FileInstall("C:\AIP\includes\Timers.au3", $DIR_includes & "\Timers.au3", 0)
    FileInstall("C:\AIP\includes\ToolbarConstants.au3", $DIR_includes & "\ToolbarConstants.au3", 0)
    FileInstall("C:\AIP\includes\ToolTipConstants.au3", $DIR_includes & "\ToolTipConstants.au3", 0)
    FileInstall("C:\AIP\includes\TrayConstants.au3", $DIR_includes & "\TrayConstants.au3", 0)
    FileInstall("C:\AIP\includes\TreeViewConstants.au3", $DIR_includes & "\TreeViewConstants.au3", 0)
    FileInstall("C:\AIP\includes\UDFGlobalID.au3", $DIR_includes & "\UDFGlobalID.au3", 0)
    FileInstall("C:\AIP\includes\UpDownConstants.au3", $DIR_includes & "\UpDownConstants.au3", 0)
    FileInstall("C:\AIP\includes\Visa.au3", $DIR_includes & "\Visa.au3", 0)
    FileInstall("C:\AIP\includes\WinAPI.au3", $DIR_includes & "\WinAPI.au3", 0)
    FileInstall("C:\AIP\includes\WinAPICom.au3", $DIR_includes & "\WinAPICom.au3", 0)
    FileInstall("C:\AIP\includes\WinAPIConstants.au3", $DIR_includes & "\WinAPIConstants.au3", 0)
    FileInstall("C:\AIP\includes\WinAPIDiag.au3", $DIR_includes & "\WinAPIDiag.au3", 0)
    FileInstall("C:\AIP\includes\WinAPIDlg.au3", $DIR_includes & "\WinAPIDlg.au3", 0)
    FileInstall("C:\AIP\includes\WinAPIError.au3", $DIR_includes & "\WinAPIError.au3", 0)
    FileInstall("C:\AIP\includes\WinAPIEx.au3", $DIR_includes & "\WinAPIEx.au3", 0)
    FileInstall("C:\AIP\includes\WinAPIFiles.au3", $DIR_includes & "\WinAPIFiles.au3", 0)
    FileInstall("C:\AIP\includes\WinAPIGdi.au3", $DIR_includes & "\WinAPIGdi.au3", 0)
    FileInstall("C:\AIP\includes\WinAPIInternals.au3", $DIR_includes & "\WinAPIInternals.au3", 0)
    FileInstall("C:\AIP\includes\WinAPIlangConstants.au3", $DIR_includes & "\WinAPIlangConstants.au3", 0)
    FileInstall("C:\AIP\includes\WinAPILocale.au3", $DIR_includes & "\WinAPILocale.au3", 0)
    FileInstall("C:\AIP\includes\WinAPIMisc.au3", $DIR_includes & "\WinAPIMisc.au3", 0)
    FileInstall("C:\AIP\includes\WinAPIProc.au3", $DIR_includes & "\WinAPIProc.au3", 0)
    FileInstall("C:\AIP\includes\WinAPIReg.au3", $DIR_includes & "\WinAPIReg.au3", 0)
    FileInstall("C:\AIP\includes\WinAPIRes.au3", $DIR_includes & "\WinAPIRes.au3", 0)
    FileInstall("C:\AIP\includes\WinAPIShellEx.au3", $DIR_includes & "\WinAPIShellEx.au3", 0)
    FileInstall("C:\AIP\includes\WinAPIShPath.au3", $DIR_includes & "\WinAPIShPath.au3", 0)
    FileInstall("C:\AIP\includes\WinAPISys.au3", $DIR_includes & "\WinAPISys.au3", 0)
    FileInstall("C:\AIP\includes\WinAPIsysinfoConstants.au3", $DIR_includes & "\WinAPIsysinfoConstants.au3", 0)
    FileInstall("C:\AIP\includes\WinAPITheme.au3", $DIR_includes & "\WinAPITheme.au3", 0)
    FileInstall("C:\AIP\includes\WinAPIvkeysConstants.au3", $DIR_includes & "\WinAPIvkeysConstants.au3", 0)
    FileInstall("C:\AIP\includes\WindowsConstants.au3", $DIR_includes & "\WindowsConstants.au3", 0)
    FileInstall("C:\AIP\includes\WinNet.au3", $DIR_includes & "\WinNet.au3", 0)
    FileInstall("C:\AIP\includes\Word.au3", $DIR_includes & "\Word.au3", 0)
    FileInstall("C:\AIP\includes\WordConstants.au3", $DIR_includes & "\WordConstants.au3", 0)
EndFunc
#EndRegion End Temp Appdata Setup

Version 0.0.3 Download:

Windows binaries and source code can be found at https://github.com/zelles/AutoIt-Portable

Share this post


Link to post
Share on other sites

Version 0.0.4 Updates:

Enhanced code suggestions and also added a, "custom-includes", folder for any includes(UDF's) you want to add. They are imported instantly even if AIP is already running.

Version 0.0.4 Source-Code:

#NoTrayIcon
#Region ;**** Directives created by AutoIt3Wrapper_GUI ****
#AutoIt3Wrapper_Icon=..\AIP\Icon.ico
#AutoIt3Wrapper_Res_Description=Compile your AutoIt scripts on the fly!
#AutoIt3Wrapper_Res_Fileversion=0.0.3
#AutoIt3Wrapper_Res_LegalCopyright=Copyright 2014 zelles
#AutoIt3Wrapper_Res_Language=1033
#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
#include <ButtonConstants.au3>
#include <ComboConstants.au3>
#include <EditConstants.au3>
#include <File.au3>
#include <GUIConstantsEx.au3>
#include <Misc.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>

_Singleton("AutoItPortableByzelles")
Opt("GUIOnEventMode", 1)
Opt("TrayMenuMode", 3)

Global $DIR_complier_output = @ScriptDir & "\compiled"
Global $DIR_TEMP = @ScriptDir & "\temp_appdata"
Global $DIR_includes = $DIR_TEMP & "\includes"
Global $FILE_icon = $DIR_TEMP & "\Icon.ico"
Global $FILE_TEMP = $DIR_includes & "\aip_temp.au3"
Global $FILE_TEMP_EXE = $DIR_TEMP & "\aip_temp.exe"
Global $IMG_Splash = $DIR_TEMP & "\splash.gif"
Global $Last_Opened = "AIPScript.au3"

Global $AUTOIT_CODES = ''
$AUTOIT_CODES &= 'Local||Global||If||Then||ElseIf||Else||EndIf||Case||Switch||EndSwitch||Select||EndSelect||While||WEnd||With||EndWith||Do||Until||For||Next||In||To||Or||And||True||False||Return||Exit||ExitLoop||Dim||ReDim||Const||ContinueCase||ContinueLoop||Not||Null||ByRef||Default||Func||EndFunc||Enum||Static||Step||Volatile'
$AUTOIT_CODES &= '||Opt("CaretCoordMode",1)||Opt("ExpandEnvStrings",0)||Opt("ExpandVarStrings",0)||Opt("GUICloseOnESC",1)||Opt("GUICoordMode",1)||Opt("GUIDataSeparatorChar","|")||Opt("GUIOnEventMode",0)||Opt("GUIResizeMode",0)||Opt("GUIEventOptions",0)||Opt("MouseClickDelay",10)||Opt("MouseClickDownDelay",10)||Opt("MouseClickDragDelay",250)||Opt("MouseCoordMode",1)||Opt("MustDeclareVars",0)||Opt("PixelCoordMode",1)||Opt("SendAttachMode",0)||Opt("SendCapslockMode",1)||Opt("SendKeyDelay",5)||Opt("SendKeyDownDelay",1)||Opt("TCPTimeout",100)||Opt("TrayAutoPause",1)||Opt("TrayIconDebug",0)||Opt("TrayIconHide",0)||Opt("TrayMenuMode",0)||Opt("TrayOnEventMode",0)||Opt("WinDetectHiddenText",0)||Opt("WinSearchChildren",1)||Opt("WinTextMatchMode",1)||Opt("WinTitleMatchMode",1)||Opt("WinWaitDelay",250)'
$AUTOIT_CODES &= '||@AppDataCommonDir||@AppDataDir||@AutoItExe||@AutoItPID||@AutoItVersion||@AutoItX64||@COM_EventObj||@CommonFilesDir||@Compiled||@ComputerName||@ComSpec||@CPUArch||@CR||@CRLF||@CR||@LF||@DesktopCommonDir||@DesktopDepth||@DesktopDir||@DesktopHeight||@DesktopRefresh||@DesktopWidth||@DocumentsCommonDir||@error||@exitCode||@exitMethod||@extended||@FavoritesCommonDir||@FavoritesDir||@GUI_CtrlHandle||@GUI_CtrlId||@GUI_DragFile||@GUI_DragId||@GUI_DropId||@GUI_WinHandle||@HomeDrive||@HomePath||@HomeShare||@HotKeyPressed||@HOUR||@IPAddress1||@IPAddress2||@IPAddress3||@IPAddress4||@KBLayout||@LF||@LocalAppDataDir||@LogonDNSDomain||@LogonDomain||@LogonServer||@MDAY||@MIN||@MON||@MSEC||@MUILang||@MyDocumentsDir||@NumParams||@OSArch||@OSBuild||@OSLang||@OSServicePack||@OSType||@OSVersion||@ProgramFilesDir||@ProgramsCommonDir||@ProgramsDir||@ScriptDir||@ScriptFullPath||@ScriptLineNumber||@ScriptName||@SEC||@StartMenuCommonDir||@StartMenuDir||@StartupCommonDir||@StartupDir||@SW_DISABLE||@SW_ENABLE||@SW_HIDE||@SW_LOCK||@SW_MAXIMIZE||@SW_MINIMIZE||@SW_RESTORE||@SW_SHOW||@SW_SHOWDEFAULT||@SW_SHOWMAXIMIZED||@SW_SHOWMINIMIZED||@SW_SHOWMINNOACTIVE||@SW_SHOWNA||@SW_SHOWNOACTIVATE||@SW_SHOWNORMAL||@SW_UNLOCK||@SystemDir||@TAB||@TempDir||@TRAY_ID||@TrayIconFlashing||@TrayIconVisible||@UserName||@UserProfileDir||@WDAY||@WindowsDir||@WorkingDir||@YDAY||@YEAR'
$AUTOIT_CODES &= '||#cs||#ce||#include||#include-once||#NoTrayIcon||#RequireAdmin||#OnAutoItStartRegister||#Region||#EndRegion||#pragma compile'
$AUTOIT_CODES &= '||<APIComConstants.au3>||<APIConstants.au3>||<APIDiagConstants.au3>||<APIDlgConstants.au3>||<APIErrorsConstants.au3>||<APIFilesConstants.au3>||<APIGdiConstants.au3>||<APILocaleConstants.au3>||<APIMiscConstants.au3>||<APIProcConstants.au3>||<APIRegConstants.au3>||<APIResConstants.au3>||<APIShellExConstants.au3>||<APIShPathConstants.au3>||<APISysConstants.au3>||<APIThemeConstants.au3>||<Array.au3>||<AutoItConstants.au3>||<AVIConstants.au3>||<BorderConstants.au3>||<ButtonConstants.au3>||<Clipboard.au3>||<Color.au3>||<ColorConstants.au3>||<ComboConstants.au3>||<Constants.au3>||<Crypt.au3>||<Date.au3>||<DateTimeConstants.au3>||<Debug.au3>||<DirConstants.au3>||<EditConstants.au3>||<EventLog.au3>||<Excel.au3>||<ExcelConstants.au3>||<File.au3>||<FileConstants.au3>||<FontConstants.au3>||<FrameConstants.au3>||<FTPEx.au3>||<GDIPlus.au3>||<GDIPlusConstants.au3>||<GuiAVI.au3>||<GuiButton.au3>||<GuiComboBox.au3>||<GuiComboBoxEx.au3>'
$AUTOIT_CODES &= '||<GUIConstants.au3>||<GUIConstantsEx.au3>||<GuiDateTimePicker.au3>||<GuiEdit.au3>||<GuiHeader.au3>||<GuiImageList.au3>||<GuiIPAddress.au3>||<GuiListBox.au3>||<GuiListView.au3>||<GuiMenu.au3>||<GuiMonthCal.au3>||<GuiReBar.au3>||<GuiRichEdit.au3>||<GuiScrollBars.au3>||<GuiSlider.au3>||<GuiStatusBar.au3>||<GuiTab.au3>||<GuiToolbar.au3>||<GuiToolTip.au3>||<GuiTreeView.au3>||<HeaderConstants.au3>||<IE.au3>||<ImageListConstants.au3>||<Inet.au3>||<InetConstants.au3>||<IPAddressConstants.au3>||<ListBoxConstants.au3>||<ListViewConstants.au3>||<Math.au3>||<Memory.au3>||<MemoryConstants.au3>||<MenuConstants.au3>||<Misc.au3>||<MsgBoxConstants.au3>||<NamedPipes.au3>||<NetShare.au3>||<NTSTATUSConstants.au3>||<Process.au3>||<ProcessConstants.au3>||<ProgressConstants.au3>||<RebarConstants.au3>||<RichEditConstants.au3>||<ScreenCapture.au3>||<ScrollBarConstants.au3>||<ScrollBarsConstants.au3>||<Security.au3>||<SecurityConstants.au3>'
$AUTOIT_CODES &= '||<SendMessage.au3>||<SliderConstants.au3>||<Sound.au3>||<SQLite.au3>||<SQLite.dll.au3>||<StaticConstants.au3>||<StatusBarConstants.au3>||<String.au3>||<StringConstants.au3>||include <StructureConstants.au3>||<TabConstants.au3>||<Timers.au3>||<ToolbarConstants.au3>||<ToolTipConstants.au3>||<TrayConstants.au3>||<TreeViewConstants.au3>||<UDFGlobalID.au3>||<UpDownConstants.au3>||<Visa.au3>||<WinAPI.au3>||<WinAPICom.au3>||<WinAPIConstants.au3>||<WinAPIDiag.au3>||<WinAPIDlg.au3>||<WinAPIError.au3>||<WinAPIEx.au3>||<WinAPIFiles.au3>||<WinAPIGdi.au3>||<WinAPIInternals.au3>||<WinAPIlangConstants.au3>||<WinAPILocale.au3>||<WinAPIMisc.au3>||<WinAPIProc.au3>||<WinAPIReg.au3>||<WinAPIRes.au3>||<WinAPIShellEx.au3>||<WinAPIShPath.au3>||<WinAPISys.au3>||<WinAPIsysinfoConstants.au3>||<WinAPITheme.au3>||<WinAPIvkeysConstants.au3>||<WindowsConstants.au3>||<WinNet.au3>||<Word.au3>||<WordConstants.au3>'
$AUTOIT_CODES &= '||Abs||ACos||AdlibRegister||AdlibUnRegister||Asc||AscW||ASin||Assign||ATan||AutoItSetOption||AutoItWinGetTitle||AutoItWinSetTitle||Beep||Binary||BinaryLen||BinaryMid||BinaryToString||BitAND||BitNOT||BitOR||BitRotate||BitShift||BitXOR||BlockInput||Break||Call||CDTray||Ceiling||Chr||ChrW||ClipGet||ClipPut||ConsoleRead||ConsoleWrite||ConsoleWriteError||ControlClick||ControlCommand||ControlDisable||ControlEnable||ControlFocus||ControlGetFocus||ControlGetHandle||ControlGetPos||ControlGetText||ControlHide||ControlListView||ControlMove||ControlSend||ControlSetText||ControlShow||ControlTreeView||Cos||Dec||DirCopy||DirCreate||DirGetSize||DirMove||DirRemove||DllCall||DllCallAddress||DllCallbackFree||DllCallbackGetPtr||DllCallbackRegister||DllClose||DllOpen||DllStructCreate||DllStructGetData||DllStructGetPtr||DllStructGetSize||DllStructSetData||DriveGetDrive||DriveGetFileSystem||DriveGetLabel||DriveGetSerial||DriveGetType||DriveMapAdd||DriveMapDel||DriveMapGet||DriveSetLabel||DriveSpaceFree||DriveSpaceTotal||DriveStatus||EnvGet||EnvSet||EnvUpdate||Eval||Execute||Exp||FileChangeDir||FileClose||FileCopy||FileCreateNTFSLink||FileCreateShortcut||FileDelete||FileExists||FileFindFirstFile||FileFindNextFile||FileFlush||FileGetAttrib||FileGetEncoding||FileGetLongName||FileGetPos||FileGetShortcut||FileGetShortName||FileGetSize||FileGetTime'
$AUTOIT_CODES &= '||FileGetVersion||FileInstall||FileMove||FileOpen||FileOpenDialog||FileRead||FileReadLine||FileReadToArray||FileRecycle||FileRecycleEmpty||FileSaveDialog||FileSelectFolder||FileSetAttrib||FileSetPos||FileSetTime||FileWrite||FileWriteLine||Floor||FtpSetProxy||FuncName||GUICreate||GUICtrlCreateAvi||GUICtrlCreateButton||GUICtrlCreateCheckbox||GUICtrlCreateCombo||GUICtrlCreateContextMenu||GUICtrlCreateDate||GUICtrlCreateDummy||GUICtrlCreateEdit||GUICtrlCreateGraphic||GUICtrlCreateGroup||GUICtrlCreateIcon||GUICtrlCreateInput||GUICtrlCreateLabel||GUICtrlCreateList||GUICtrlCreateListView||GUICtrlCreateListViewItem||GUICtrlCreateMenu||GUICtrlCreateMenuItem||GUICtrlCreateMonthCal||GUICtrlCreateObj||GUICtrlCreatePic||GUICtrlCreateProgress||GUICtrlCreateRadio||GUICtrlCreateSlider||GUICtrlCreateTab||GUICtrlCreateTabItem||GUICtrlCreateTreeView||GUICtrlCreateTreeViewItem||GUICtrlCreateUpdown||GUICtrlDelete||GUICtrlGetHandle||GUICtrlGetState||GUICtrlRead||GUICtrlRecvMsg||GUICtrlRegisterListViewSort||GUICtrlSendMsg||GUICtrlSendToDummy||GUICtrlSetBkColor||GUICtrlSetColor||GUICtrlSetCursor||GUICtrlSetData||GUICtrlSetDefBkColor||GUICtrlSetDefColor||GUICtrlSetFont||GUICtrlSetGraphic||GUICtrlSetImage||GUICtrlSetLimit||GUICtrlSetOnEvent||GUICtrlSetPos||GUICtrlSetResizing||GUICtrlSetState||GUICtrlSetStyle||GUICtrlSetTip||GUIDelete'
$AUTOIT_CODES &= '||GUIGetCursorInfo||GUIGetMsg||GUIGetStyle||GUIRegisterMsg||GUISetAccelerators||GUISetBkColor||GUISetCoord||GUISetCursor||GUISetFont||GUISetHelp||GUISetIcon||GUISetOnEvent||GUISetState||GUISetStyle||GUIStartGroup||GUISwitch||Hex||HotKeySet||HttpSetProxy||HttpSetUserAgent||HWnd||InetClose||InetGet||InetGetInfo||InetGetSize||InetRead||IniDelete||IniRead||IniReadSection||IniReadSectionNames||IniRenameSection||IniWrite||IniWriteSection||InputBox||Int||IsAdmin||IsArray||IsBinary||IsBool||IsDeclared||IsDllStruct||IsFloat||IsFunc||IsHWnd||IsInt||IsKeyword||IsNumber||IsObj||IsPtr||IsString||Log||MemGetStats||Mod||MouseClick||MouseClickDrag||MouseDown||MouseGetCursor||MouseGetPos||MouseMove||MouseUp||MouseWheel||MsgBox||Number||ObjCreate||ObjCreateInterface||ObjEvent||ObjGet||ObjName||OnAutoItExitRegister||OnAutoItExitUnRegister||Ping||PixelChecksum||PixelGetColor||PixelSearch||ProcessClose||ProcessExists||ProcessGetStats||ProcessList||ProcessSetPriority||ProcessWait||ProcessWaitClose||ProgressOff||ProgressOn||ProgressSet||Ptr||Random||RegDelete||RegEnumKey||RegEnumVal||RegRead||RegWrite||Round||Run||RunAs||RunAsWait||RunWait||Send||SendKeepActive||SetError||SetExtended||ShellExecute||ShellExecuteWait||Shutdown||Sin||Sleep||SoundPlay||SoundSetWaveVolume||SplashImageOn||SplashOff||SplashTextOn||Sqrt||SRandom||StatusbarGetText||StderrRead'
$AUTOIT_CODES &= '||StdinWrite||StdioClose||StdoutRead||String||StringAddCR||StringCompare||StringFormat||StringFromASCIIArray||StringInStr||StringIsAlNum||StringIsAlpha||StringIsASCII||StringIsDigit||StringIsFloat||StringIsInt||StringIsLower||StringIsSpace||StringIsUpper||StringIsXDigit||StringLeft||StringLen||StringLower||StringMid||StringRegExp||StringRegExpReplace||StringReplace||StringReverse||StringRight||StringSplit||StringStripCR||StringStripWS||StringToASCIIArray||StringToBinary||StringTrimLeft||StringTrimRight||StringUpper||Tan||TCPAccept||TCPCloseSocket||TCPConnect||TCPListen||TCPNameToIP||TCPRecv||TCPSend||TCPShutdown||UDPShutdown||TCPStartup||UDPStartup||TimerDiff||TimerInit||ToolTip||TrayCreateItem||TrayCreateMenu||TrayGetMsg||TrayItemDelete||TrayItemGetHandle||TrayItemGetState||TrayItemGetText||TrayItemSetOnEvent||TrayItemSetState||TrayItemSetText||TraySetClick||TraySetIcon||TraySetOnEvent||TraySetPauseIcon||TraySetState||TraySetToolTip||TrayTip||UBound||UDPBind||UDPCloseSocket||UDPOpen||UDPRecv||UDPSend||VarGetType||WinActivate||WinActive||WinClose||WinExists||WinFlash||WinGetCaretPos||WinGetClassList||WinGetClientSize||WinGetHandle||WinGetPos||WinGetProcess||WinGetState||WinGetText||WinGetTitle||WinKill||WinList||WinMenuSelectItem||WinMinimizeAll||WinMinimizeAllUndo||WinMove||WinSetOnTop||WinSetState||WinSetTitle||WinSetTrans'
$AUTOIT_CODES &= '||WinWait||WinWaitActive||WinWaitClose||WinWaitNotActive'

GUI_Splash()
Create_Temp_Workstation()
GUIDelete($GUI_Splash)
GUI_Workstation()

While 1
    ImportCustomIncludes()
    Local $w_all = GUICtrlRead($GUI_Workstation_WorkArea)
    Local $w_all_one = StringReplace($w_all, @CRLF, " ")
    Local $w_words = StringSplit($w_all_one, " ", 1)
    Local $w_last_word = StringReplace($w_words[$w_words[0]], " ", "")
    Local $w_last_word_length = StringLen($w_last_word)
    If $w_last_word == "" Then GUICtrlSetData($GUI_Workstation_Suggestions, "")
    If $w_last_word == "" Then ContinueLoop
    $AUTOIT_CODE = StringSplit($AUTOIT_CODES, "||", 1)
    $AUTOIT_SUGGESTIONS = ""
    For $aic = 1 To $AUTOIT_CODE[0]
        $w_autoit_matcher = StringMid($AUTOIT_CODE[$aic], 1, $w_last_word_length)
        If StringLower($w_last_word) == StringLower($w_autoit_matcher) Then
            $AUTOIT_SUGGESTIONS &= $AUTOIT_CODE[$aic] & @CRLF
        EndIf
    Next
    If GUICtrlRead($GUI_Workstation_Suggestions) == $AUTOIT_SUGGESTIONS Then ContinueLoop
    GUICtrlSetData($GUI_Workstation_Suggestions, $AUTOIT_SUGGESTIONS)
    Sleep(100)
WEnd

Func GUI_Splash()
    If Not FileExists($DIR_TEMP) Then DirCreate($DIR_TEMP)
    FileInstall("C:\AIP\splash.gif", $DIR_TEMP & "\splash.gif", 0)
    Global $GUI_Splash = GUICreate("Starting AutoIt Portable", 401, 257, 192, 124)
    GUISetBkColor(0xFFFFFF)
    Global $splash_image = GUICtrlCreatePic($IMG_Splash, 0, 0, 400, 250)
    GUISetOnEvent($GUI_EVENT_MINIMIZE, "Close_Spash", $GUI_Splash)
    GUISetOnEvent($GUI_EVENT_CLOSE, "Close_Spash", $GUI_Splash)
    GUISetState(@SW_SHOW)
EndFunc

Func GUI_Workstation()
    Global $GUI_Workstation = GUICreate("AutoIt Portable Workstation", 801, 431, 181, 90)
    Global $File_Menu_File = GUICtrlCreateMenu("&File")
    Global $File_Menu_New = GUICtrlCreateMenuItem("New File", $File_Menu_File)
    Global $File_Menu_Open = GUICtrlCreateMenuItem("Open File", $File_Menu_File)
    Global $File_Menu_Save = GUICtrlCreateMenuItem("Save File", $File_Menu_File)
    Global $File_Menu_Exit = GUICtrlCreateMenuItem("Exit", $File_Menu_File)
    Global $File_Menu_Options = GUICtrlCreateMenu("&Script Options")
    Global $File_Menu_Runx86 = GUICtrlCreateMenuItem("Run x86", $File_Menu_Options)
    Global $File_Menu_Runx64 = GUICtrlCreateMenuItem("Run x64", $File_Menu_Options)
    Global $File_Menu_Compiler = GUICtrlCreateMenuItem("Run Compiler", $File_Menu_Options)
    Global $File_Menu_Help = GUICtrlCreateMenu("&Help")
    Global $File_Menu_About = GUICtrlCreateMenuItem("About", $File_Menu_Help)
    GUISetFont(9, 400, 0, "Arial")
    GUISetBkColor(0xB9D1EA)
    Global $GUI_Workstation_WorkArea = GUICtrlCreateEdit(@CRLF & 'MsgBox(0, "Welcome Note", "Thank you for using AutoIt Portable!")' & @CRLF, 200, 0, 600, 409, BitOR($ES_AUTOVSCROLL,$ES_WANTRETURN,$WS_VSCROLL))
    GUICtrlSetColor(-1, 0x000000)
    Global $GUI_Workstation_Suggestions = GUICtrlCreateEdit("", 0, 24, 201, 385, BitOR($ES_AUTOVSCROLL,$ES_READONLY,$ES_WANTRETURN,$WS_VSCROLL))
    GUICtrlSetFont(-1, 8, 400, 0, "Arial")
    GUICtrlSetColor(-1, 0x000000)
    GUICtrlSetBkColor(-1, 0xD7E4F2)
    Local $Label1 = GUICtrlCreateLabel("Code Suggestions:", 3, 5, 110, 19)
    GUICtrlSetFont(-1, 9, 800, 0, "Arial")
    GUICtrlSetColor(-1, 0x000000)
    GUICtrlSetOnEvent($File_Menu_New, "GUI_File_New")
    GUICtrlSetOnEvent($File_Menu_Open, "GUI_File_Open")
    GUICtrlSetOnEvent($File_Menu_Save, "GUI_File_Save")
    GUICtrlSetOnEvent($File_Menu_Exit, "Close_Workstation")
    GUICtrlSetOnEvent($File_Menu_Runx86, "GUI_Run_x86")
    GUICtrlSetOnEvent($File_Menu_Runx64, "GUI_Run_x64")
    GUICtrlSetOnEvent($File_Menu_Compiler, "GUI_Compiler")
    GUICtrlSetOnEvent($File_Menu_About, "GUI_About")
    GUISetOnEvent($GUI_EVENT_CLOSE, "Close_Workstation", $GUI_Workstation)
    GUISetState(@SW_SHOW, $GUI_Workstation)
EndFunc

Func GUI_Compiler()
    Global $GUI_Compiler = GUICreate("AICompiler GUI", 234, 447, 325, 143)
    Local $GUI_Compiler_Label1 = GUICtrlCreateLabel("App Name:", 8, 11, 57, 17)
    Local $GUI_Compiler_Label2 = GUICtrlCreateLabel("App Icon:", 8, 35, 50, 17)
    Local $GUI_Compiler_Label3 = GUICtrlCreateLabel("Product Name:", 8, 59, 75, 17)
    Local $GUI_Compiler_Label4 = GUICtrlCreateLabel("Company Name:", 8, 83, 82, 17)
    Local $GUI_Compiler_Label5 = GUICtrlCreateLabel("Copyright:", 8, 107, 51, 17)
    Local $GUI_Compiler_Label6 = GUICtrlCreateLabel("Trademarks:", 8, 131, 63, 17)
    Local $GUI_Compiler_Label7 = GUICtrlCreateLabel("File Version:", 8, 155, 61, 17)
    Local $GUI_Compiler_Label8 = GUICtrlCreateLabel("Product Version:", 8, 179, 82, 17)
    Local $GUI_Compiler_Label9 = GUICtrlCreateLabel("Description:", 8, 203, 60, 17)
    Local $GUI_Compiler_Label10 = GUICtrlCreateLabel("Comment:", 8, 227, 51, 17)
    Local $GUI_Compiler_Label11 = GUICtrlCreateLabel("Ignore Directives:", 8, 251, 87, 17)
    Local $GUI_Compiler_Label12 = GUICtrlCreateLabel("Compile For:", 8, 275, 62, 17)
    Local $GUI_Compiler_Label13 = GUICtrlCreateLabel("Compression:", 8, 299, 67, 17)
    Local $GUI_Compiler_Label14 = GUICtrlCreateLabel("Comp. w/ UPX:", 8, 323, 78, 17)
    Local $GUI_Compiler_Label15 = GUICtrlCreateLabel("Execution Level:", 8, 347, 83, 17)
    Local $GUI_Compiler_Label16 = GUICtrlCreateLabel("Compatibility:", 8, 371, 65, 17)
    Local $GUI_Compiler_Label17 = GUICtrlCreateLabel("App Type:", 8, 395, 53, 17)
    Global $GUI_Compiler_OutputFile = GUICtrlCreateInput("My App", 72, 8, 153, 21)
    Global $GUI_Compiler_IconFile = GUICtrlCreateInput($FILE_icon, 72, 32, 105, 21)
    Global $GUI_Compiler_LoadIcon_Button = GUICtrlCreateButton("Load", 184, 32, 43, 21)
    Global $GUI_Compiler_ProductName = GUICtrlCreateInput("", 88, 56, 137, 21)
    Global $GUI_Compiler_CompanyName = GUICtrlCreateInput("", 88, 80, 137, 21)
    Global $GUI_Compiler_Copyright = GUICtrlCreateInput("", 72, 104, 153, 21)
    Global $GUI_Compiler_Trademarks = GUICtrlCreateInput("", 72, 128, 153, 21)
    Global $GUI_Compiler_FileVersion = GUICtrlCreateInput("", 88, 152, 137, 21)
    Global $GUI_Compiler_ProductVersion = GUICtrlCreateInput("", 88, 176, 137, 21)
    Global $GUI_Compiler_Description = GUICtrlCreateInput("", 72, 200, 153, 21)
    Global $GUI_Compiler_Comment = GUICtrlCreateInput("", 72, 224, 153, 21)
    Global $GUI_Compiler_IgnoreDirectives = GUICtrlCreateCheckbox("Ignore", 120, 248, 65, 17)
    Global $GUI_Compiler_x86 = GUICtrlCreateCheckbox("x86", 120, 273, 49, 17)
    GUICtrlSetState(-1, $GUI_CHECKED)
    Global $GUI_Compiler_x64 = GUICtrlCreateCheckbox("x64", 176, 273, 49, 17)
    Global $GUI_Compiler_Compression = GUICtrlCreateCombo("None", 88, 296, 137, 25, BitOR($CBS_DROPDOWN,$CBS_AUTOHSCROLL))
    GUICtrlSetData($GUI_Compiler_Compression, "Low|Medium|High|Highest", "None")
    Global $GUI_Compiler_UPXCompression = GUICtrlCreateCombo("Dont Compress", 88, 320, 137, 25, BitOR($CBS_DROPDOWN,$CBS_AUTOHSCROLL))
    GUICtrlSetData($GUI_Compiler_UPXCompression, "Compress", "Dont Compress")
    Global $GUI_Compiler_ExecutionLevel = GUICtrlCreateCombo("None", 88, 344, 137, 25, BitOR($CBS_DROPDOWN,$CBS_AUTOHSCROLL))
    GUICtrlSetData($GUI_Compiler_ExecutionLevel, "AsInvoker|Highest Avail|Require Admin", "None")
    Global $GUI_Compiler_Compatibility = GUICtrlCreateCombo("All", 88, 368, 137, 25, BitOR($CBS_DROPDOWN,$CBS_AUTOHSCROLL))
    GUICtrlSetData($GUI_Compiler_Compatibility, "Windows Vista|Windows 7|Windows 8", "All")
    Global $GUI_Compiler_AppType = GUICtrlCreateCombo("Default", 88, 392, 137, 25, BitOR($CBS_DROPDOWN,$CBS_AUTOHSCROLL))
    GUICtrlSetData($GUI_Compiler_AppType, "GUI|Console", "Default")
    Global $GUI_Compiler_Compile_Button = GUICtrlCreateButton("Compile", 136, 416, 91, 25)
    GUICtrlSetOnEvent($GUI_Compiler_LoadIcon_Button, "Compiler")
    GUICtrlSetOnEvent($GUI_Compiler_Compile_Button, "Compiler")
    GUISetOnEvent($GUI_EVENT_CLOSE, "Close_Compiler", $GUI_Compiler)
    GUISetState(@SW_SHOW, $GUI_Compiler)
EndFunc

Func Close_Spash()
    TrayTip("AIP Response", "Please wait for AIP to finish initializing", 6)
EndFunc

Func GUI_File_New()
    GUICtrlSetData($GUI_Workstation_WorkArea, "")
EndFunc

Func GUI_File_Open()
    Local $f_open_script = FileOpenDialog("Open AutoIt Script", @ScriptDir, "au3 (*.au3)|All (*.*)", 1, $Last_Opened, $GUI_Workstation)
    $Last_Opened = StringTrimLeft($f_open_script, StringInStr($f_open_script, "\", $STR_NOCASESENSE, -1))
    Local $f_open_script_Script = FileRead($f_open_script)
    GUICtrlSetData($GUI_Workstation_WorkArea, $f_open_script_Script)
EndFunc

Func GUI_File_Save()
    Local $f_save_script = FileSaveDialog("Save AutoIt Script", @ScriptDir, "au3 (*.au3)|All (*.*)", 0, $Last_Opened, $GUI_Workstation)
    $Last_Opened = StringTrimLeft($f_save_script, StringInStr($f_save_script, "\", $STR_NOCASESENSE, -1))
    Local $f_script = GUICtrlRead($GUI_Workstation_WorkArea)
    If FileExists($f_save_script) Then FileDelete($f_save_script)
    _FileCreate($f_save_script)
    Local $f_save_script_Open = FileOpen($f_save_script, $FO_APPEND)
    FileWrite($f_save_script_Open, $f_script)
    FileClose($f_save_script_Open)
EndFunc

Func GUI_Run_x86()
    Local $f_script = GUICtrlRead($GUI_Workstation_WorkArea)
    If FileExists($FILE_TEMP_EXE) Then FileDelete($FILE_TEMP_EXE)
    If FileExists($FILE_TEMP) Then FileDelete($FILE_TEMP)
    _FileCreate($FILE_TEMP)
    Local $FILE_TEMP_Open = FileOpen($FILE_TEMP, $FO_APPEND)
    FileWrite($FILE_TEMP_Open, $f_script)
    FileClose($FILE_TEMP_Open)
    RunWait($DIR_TEMP & '/Aut2exe.exe /in "' & $FILE_TEMP & '" /out "' & $FILE_TEMP_EXE & '" /icon "' & $FILE_icon & '" /comp 0 /nopack /x86')
    FileDelete($FILE_TEMP)
    Run($FILE_TEMP_EXE)
EndFunc

Func GUI_Run_x64()
    Local $f_script = GUICtrlRead($GUI_Workstation_WorkArea)
    If FileExists($FILE_TEMP_EXE) Then FileDelete($FILE_TEMP_EXE)
    If FileExists($FILE_TEMP) Then FileDelete($FILE_TEMP)
    _FileCreate($FILE_TEMP)
    Local $FILE_TEMP_Open = FileOpen($FILE_TEMP, $FO_APPEND)
    FileWrite($FILE_TEMP_Open, $f_script)
    FileClose($FILE_TEMP_Open)
    RunWait($DIR_TEMP & '/Aut2exe.exe /in "' & $FILE_TEMP & '" /out "' & $FILE_TEMP_EXE & '" /icon "' & $FILE_icon & '" /comp 0 /nopack /x64')
    FileDelete($FILE_TEMP)
    Run($FILE_TEMP_EXE)
EndFunc

Func GUI_About()
    MsgBox(0, "About AIP", "AutoIt Portable was made by zelles to help people who need AutoIt on the fly." & @CRLF & "Currently running version: 0.0.1")
EndFunc

Func Close_Workstation()
    GUIDelete($GUI_Workstation)
    If FileExists($DIR_TEMP) Then DirRemove($DIR_TEMP, 1)
    Exit
EndFunc

Func Compiler($f_data)
    ; Unintergrated commands: /ansi /unicode /originalfilename "" /internalname ""
    If Not FileExists($DIR_complier_output) Then DirCreate($DIR_complier_output)
    Local $f_script = GUICtrlRead($GUI_Workstation_WorkArea)
    If FileExists($FILE_TEMP) Then FileDelete($FILE_TEMP)
    _FileCreate($FILE_TEMP)
    Local $FILE_TEMP_Open = FileOpen($FILE_TEMP, $FO_APPEND)
    FileWrite($FILE_TEMP_Open, $f_script)
    FileClose($FILE_TEMP_Open)
    Local $Compiler_Script_x86 = $DIR_TEMP & '/Aut2exe.exe'
    Local $Compiler_Script_x64 = $DIR_TEMP & '/Aut2exe.exe'
    $Compiler_Script_x86 &= ' /in "' & $FILE_TEMP & '"'
    $Compiler_Script_x64 &= ' /in "' & $FILE_TEMP & '"'
    Local $f_OutputFile = GUICtrlRead($GUI_Compiler_OutputFile)
    $Compiler_Script_x86 &= ' /out "' & $DIR_complier_output & '\' & $f_OutputFile & ' x86.exe"'
    $Compiler_Script_x64 &= ' /out "' & $DIR_complier_output & '\' & $f_OutputFile & ' x64.exe"'
    Switch GUICtrlRead($GUI_Compiler_IconFile)
        Case ""
            $Compiler_Script_x86 &= ' /icon "' & $FILE_icon & '"'
            $Compiler_Script_x64 &= ' /icon "' & $FILE_icon & '"'
        Case Else
            If FileExists(GUICtrlRead($GUI_Compiler_IconFile)) Then
                $Compiler_Script_x86 &= ' /icon "' & GUICtrlRead($GUI_Compiler_IconFile) & '"'
                $Compiler_Script_x64 &= ' /icon "' & GUICtrlRead($GUI_Compiler_IconFile) & '"'
            Else
                $Compiler_Script_x86 &= ' /icon "' & $FILE_icon & '"'
                $Compiler_Script_x64 &= ' /icon "' & $FILE_icon & '"'
            EndIf
    EndSwitch
    $Compiler_Script_x86 &= ' /x86'
    $Compiler_Script_x64 &= ' /x64'
    Switch GUICtrlRead($GUI_Compiler_Compression)
        Case "None"
            $Compiler_Script_x86 &= ' /comp 0'
            $Compiler_Script_x64 &= ' /comp 0'
        Case "Low"
            $Compiler_Script_x86 &= ' /comp 1'
            $Compiler_Script_x64 &= ' /comp 1'
        Case "Medium"
            $Compiler_Script_x86 &= ' /comp 2'
            $Compiler_Script_x64 &= ' /comp 2'
        Case "High"
            $Compiler_Script_x86 &= ' /comp 3'
            $Compiler_Script_x64 &= ' /comp 3'
        Case "Highest"
            $Compiler_Script_x86 &= ' /comp 4'
            $Compiler_Script_x64 &= ' /comp 4'
    EndSwitch
    Switch GUICtrlRead($GUI_Compiler_IgnoreDirectives)
        Case $GUI_CHECKED
            $Compiler_Script_x86 &= ' /ignoredirectives'
            $Compiler_Script_x64 &= ' /ignoredirectives'
    EndSwitch
    Switch GUICtrlRead($GUI_Compiler_UPXCompression)
        Case "Dont Compress"
            $Compiler_Script_x86 &= ' /nopack'
            $Compiler_Script_x64 &= ' /nopack'
        Case "Compress"
            $Compiler_Script_x86 &= ' /pack'
            $Compiler_Script_x64 &= ' /pack'
    EndSwitch
    Switch GUICtrlRead($GUI_Compiler_AppType)
        Case "GUI"
            $Compiler_Script_x86 &= ' /gui'
            $Compiler_Script_x64 &= ' /gui'
        Case "Console"
            $Compiler_Script_x86 &= ' /console'
            $Compiler_Script_x64 &= ' /console'
    EndSwitch
    Switch GUICtrlRead($GUI_Compiler_ExecutionLevel)
        Case "None"
            $Compiler_Script_x86 &= ' /execlevel none'
            $Compiler_Script_x64 &= ' /execlevel none'
        Case "AsInvoker"
            $Compiler_Script_x86 &= ' /execlevel asinvoker'
            $Compiler_Script_x64 &= ' /execlevel asinvoker'
        Case "Highest Avail"
            $Compiler_Script_x86 &= ' /execlevel highestavailable'
            $Compiler_Script_x64 &= ' /execlevel highestavailable'
        Case "Require Admin"
            $Compiler_Script_x86 &= ' /execlevel requireadministrator'
            $Compiler_Script_x64 &= ' /execlevel requireadministrator'
    EndSwitch
    Switch GUICtrlRead($GUI_Compiler_Compatibility)
        Case "Windows Vista"
            $Compiler_Script_x86 &= ' /compatibility vista'
            $Compiler_Script_x64 &= ' /compatibility vista'
        Case "Windows 7"
            $Compiler_Script_x86 &= ' /compatibility win7'
            $Compiler_Script_x64 &= ' /compatibility win7'
        Case "Windows 8"
            $Compiler_Script_x86 &= ' /compatibility win8'
            $Compiler_Script_x64 &= ' /compatibility win8'
    EndSwitch
    Switch GUICtrlRead($GUI_Compiler_Comment)
        Case ""
            $Compiler_Script_x86 &= ' /comments "Compiled with AutoIt Portable by zelles."'
            $Compiler_Script_x64 &= ' /comments "Compiled with AutoIt Portable by zelles."'
        Case Else
            $Compiler_Script_x86 &= ' /comments "' & GUICtrlRead($GUI_Compiler_Comment) & '"'
            $Compiler_Script_x64 &= ' /comments "' & GUICtrlRead($GUI_Compiler_Comment) & '"'
    EndSwitch
    Switch GUICtrlRead($GUI_Compiler_CompanyName)
        Case ""
            $Compiler_Script_x86 &= ' /companyname "None"'
            $Compiler_Script_x64 &= ' /companyname "None"'
        Case Else
            $Compiler_Script_x86 &= ' /companyname "' & GUICtrlRead($GUI_Compiler_CompanyName) & '"'
            $Compiler_Script_x64 &= ' /companyname "' & GUICtrlRead($GUI_Compiler_CompanyName) & '"'
    EndSwitch
    Switch GUICtrlRead($GUI_Compiler_Description)
        Case ""
            $Compiler_Script_x86 &= ' /filedescription "None"'
            $Compiler_Script_x64 &= ' /filedescription "None"'
        Case Else
            $Compiler_Script_x86 &= ' /filedescription "' & GUICtrlRead($GUI_Compiler_Description) & '"'
            $Compiler_Script_x64 &= ' /filedescription "' & GUICtrlRead($GUI_Compiler_Description) & '"'
    EndSwitch
    Switch GUICtrlRead($GUI_Compiler_Copyright)
        Case ""
            $Compiler_Script_x86 &= ' /legalcopyright ' & @YEAR
            $Compiler_Script_x64 &= ' /legalcopyright ' & @YEAR
        Case Else
            $Compiler_Script_x86 &= ' /legalcopyright "' & GUICtrlRead($GUI_Compiler_Copyright) & '"'
            $Compiler_Script_x64 &= ' /legalcopyright "' & GUICtrlRead($GUI_Compiler_Copyright) & '"'
    EndSwitch
    Switch GUICtrlRead($GUI_Compiler_Trademarks)
        Case ""
            $nothing = 0
        Case Else
            $Compiler_Script_x86 &= ' /legaltrademarks "' & GUICtrlRead($GUI_Compiler_Trademarks) & '"'
            $Compiler_Script_x64 &= ' /legaltrademarks "' & GUICtrlRead($GUI_Compiler_Trademarks) & '"'
    EndSwitch
    Switch GUICtrlRead($GUI_Compiler_ProductName)
        Case ""
            $nothing = 0
        Case Else
            $Compiler_Script_x86 &= ' /productname "' & GUICtrlRead($GUI_Compiler_ProductName) & '"'
            $Compiler_Script_x64 &= ' /productname "' & GUICtrlRead($GUI_Compiler_ProductName) & '"'
    EndSwitch
    Switch GUICtrlRead($GUI_Compiler_FileVersion)
        Case ""
            $Compiler_Script_x86 &= ' /fileversion "0.0.0.1"'
            $Compiler_Script_x64 &= ' /fileversion "0.0.0.1"'
        Case Else
            $Compiler_Script_x86 &= ' /fileversion "' & GUICtrlRead($GUI_Compiler_FileVersion) & '"'
            $Compiler_Script_x64 &= ' /fileversion "' & GUICtrlRead($GUI_Compiler_FileVersion) & '"'
    EndSwitch
    Switch GUICtrlRead($GUI_Compiler_ProductVersion)
        Case ""
            $Compiler_Script_x86 &= ' /productversion "3.3.12.0"'
            $Compiler_Script_x64 &= ' /productversion "3.3.12.0"'
        Case Else
            $Compiler_Script_x86 &= ' /productversion "' & GUICtrlRead($GUI_Compiler_ProductVersion) & '"'
            $Compiler_Script_x64 &= ' /productversion "' & GUICtrlRead($GUI_Compiler_ProductVersion) & '"'
    EndSwitch

    If GUICtrlRead($GUI_Compiler_x86) = $GUI_CHECKED Then
        RunWait($Compiler_Script_x86)
    EndIf
    If GUICtrlRead($GUI_Compiler_x64) = $GUI_CHECKED Then
        RunWait($Compiler_Script_x64)
    EndIf
    FileDelete($FILE_TEMP)
    GUIDelete($GUI_Compiler)
    MsgBox(0, "AIP Response", "The compiler is finished. Check script directory for files.")
EndFunc

Func Close_Compiler()
    GUIDelete($GUI_Compiler)
EndFunc

Func ImportCustomIncludes()
    If Not FileExists(@ScriptDir & "\custom-includes") Then DirCreate(@ScriptDir & "\custom-includes")
    Local $Importer = FileFindFirstFile(@ScriptDir & "\custom-includes\*.au3")
    Local $IncludeFile = ""
    While 1
        $IncludeFile = FileFindNextFile($Importer)
        If @error Then ExitLoop
        If FileExists($DIR_includes & "\" & $IncludeFile) Then ContinueLoop
        FileCopy(@ScriptDir & "\custom-includes\" & $IncludeFile, $DIR_includes & "\" & $IncludeFile)
        $AUTOIT_CODES &= '<' & $IncludeFile & '>'
    WEnd
EndFunc

Func Create_Temp_Workstation()
    If Not FileExists($DIR_TEMP) Then DirCreate($DIR_TEMP)
    If Not FileExists($DIR_includes) Then DirCreate($DIR_includes)
    FileInstall("C:\AIP\Icon.ico", $DIR_TEMP & "\Icon.ico", 0)
    FileInstall("C:\AIP\Aut2exe.exe", $DIR_TEMP & "\Aut2exe.exe", 0)
    FileInstall("C:\AIP\upx.exe", $DIR_TEMP & "\upx.exe", 0)
    FileInstall("C:\AIP\includes\APIComConstants.au3", $DIR_includes & "\APIComConstants.au3", 0)
    FileInstall("C:\AIP\includes\APIConstants.au3", $DIR_includes & "\APIConstants.au3", 0)
    FileInstall("C:\AIP\includes\APIDiagConstants.au3", $DIR_includes & "\APIDiagConstants.au3", 0)
    FileInstall("C:\AIP\includes\APIDlgConstants.au3", $DIR_includes & "\APIDlgConstants.au3", 0)
    FileInstall("C:\AIP\includes\APIErrorsConstants.au3", $DIR_includes & "\APIErrorsConstants.au3", 0)
    FileInstall("C:\AIP\includes\APIFilesConstants.au3", $DIR_includes & "\APIFilesConstants.au3", 0)
    FileInstall("C:\AIP\includes\APIGdiConstants.au3", $DIR_includes & "\APIGdiConstants.au3", 0)
    FileInstall("C:\AIP\includes\APILocaleConstants.au3", $DIR_includes & "\APILocaleConstants.au3", 0)
    FileInstall("C:\AIP\includes\APIMiscConstants.au3", $DIR_includes & "\APIMiscConstants.au3", 0)
    FileInstall("C:\AIP\includes\APIProcConstants.au3", $DIR_includes & "\APIProcConstants.au3", 0)
    FileInstall("C:\AIP\includes\APIRegConstants.au3", $DIR_includes & "\APIRegConstants.au3", 0)
    FileInstall("C:\AIP\includes\APIResConstants.au3", $DIR_includes & "\APIResConstants.au3", 0)
    FileInstall("C:\AIP\includes\APIShellExConstants.au3", $DIR_includes & "\APIShellExConstants.au3", 0)
    FileInstall("C:\AIP\includes\APIShPathConstants.au3", $DIR_includes & "\APIShPathConstants.au3", 0)
    FileInstall("C:\AIP\includes\APISysConstants.au3", $DIR_includes & "\APISysConstants.au3", 0)
    FileInstall("C:\AIP\includes\APIThemeConstants.au3", $DIR_includes & "\APIThemeConstants.au3", 0)
    FileInstall("C:\AIP\includes\Array.au3", $DIR_includes & "\Array.au3", 0)
    FileInstall("C:\AIP\includes\AutoItConstants.au3", $DIR_includes & "\AutoItConstants.au3", 0)
    FileInstall("C:\AIP\includes\AVIConstants.au3", $DIR_includes & "\AVIConstants.au3", 0)
    FileInstall("C:\AIP\includes\BorderConstants.au3", $DIR_includes & "\BorderConstants.au3", 0)
    FileInstall("C:\AIP\includes\ButtonConstants.au3", $DIR_includes & "\ButtonConstants.au3", 0)
    FileInstall("C:\AIP\includes\Clipboard.au3", $DIR_includes & "\Clipboard.au3", 0)
    FileInstall("C:\AIP\includes\Color.au3", $DIR_includes & "\Color.au3", 0)
    FileInstall("C:\AIP\includes\ColorConstants.au3", $DIR_includes & "\ColorConstants.au3", 0)
    FileInstall("C:\AIP\includes\ComboConstants.au3", $DIR_includes & "\ComboConstants.au3", 0)
    FileInstall("C:\AIP\includes\Constants.au3", $DIR_includes & "\Constants.au3", 0)
    FileInstall("C:\AIP\includes\Crypt.au3", $DIR_includes & "\Crypt.au3", 0)
    FileInstall("C:\AIP\includes\Date.au3", $DIR_includes & "\Date.au3", 0)
    FileInstall("C:\AIP\includes\DateTimeConstants.au3", $DIR_includes & "\DateTimeConstants.au3", 0)
    FileInstall("C:\AIP\includes\Debug.au3", $DIR_includes & "\Debug.au3", 0)
    FileInstall("C:\AIP\includes\DirConstants.au3", $DIR_includes & "\DirConstants.au3", 0)
    FileInstall("C:\AIP\includes\EditConstants.au3", $DIR_includes & "\EditConstants.au3", 0)
    FileInstall("C:\AIP\includes\EventLog.au3", $DIR_includes & "\EventLog.au3", 0)
    FileInstall("C:\AIP\includes\Excel.au3", $DIR_includes & "\Excel.au3", 0)
    FileInstall("C:\AIP\includes\ExcelConstants.au3", $DIR_includes & "\ExcelConstants.au3", 0)
    FileInstall("C:\AIP\includes\File.au3", $DIR_includes & "\File.au3", 0)
    FileInstall("C:\AIP\includes\FileConstants.au3", $DIR_includes & "\FileConstants.au3", 0)
    FileInstall("C:\AIP\includes\FontConstants.au3", $DIR_includes & "\FontConstants.au3", 0)
    FileInstall("C:\AIP\includes\FrameConstants.au3", $DIR_includes & "\FrameConstants.au3", 0)
    FileInstall("C:\AIP\includes\FTPEx.au3", $DIR_includes & "\FTPEx.au3", 0)
    FileInstall("C:\AIP\includes\GDIPlus.au3", $DIR_includes & "\GDIPlus.au3", 0)
    FileInstall("C:\AIP\includes\GDIPlusConstants.au3", $DIR_includes & "\GDIPlusConstants.au3", 0)
    FileInstall("C:\AIP\includes\GuiAVI.au3", $DIR_includes & "\GuiAVI.au3", 0)
    FileInstall("C:\AIP\includes\GuiButton.au3", $DIR_includes & "\GuiButton.au3", 0)
    FileInstall("C:\AIP\includes\GuiComboBox.au3", $DIR_includes & "\GuiComboBox.au3", 0)
    FileInstall("C:\AIP\includes\GuiComboBoxEx.au3", $DIR_includes & "\GuiComboBoxEx.au3", 0)
    FileInstall("C:\AIP\includes\GUIConstants.au3", $DIR_includes & "\GUIConstants.au3", 0)
    FileInstall("C:\AIP\includes\GUIConstantsEx.au3", $DIR_includes & "\GUIConstantsEx.au3", 0)
    FileInstall("C:\AIP\includes\GuiDateTimePicker.au3", $DIR_includes & "\GuiDateTimePicker.au3", 0)
    FileInstall("C:\AIP\includes\GuiEdit.au3", $DIR_includes & "\GuiEdit.au3", 0)
    FileInstall("C:\AIP\includes\GuiHeader.au3", $DIR_includes & "\GuiHeader.au3", 0)
    FileInstall("C:\AIP\includes\GuiImageList.au3", $DIR_includes & "\GuiImageList.au3", 0)
    FileInstall("C:\AIP\includes\GuiIPAddress.au3", $DIR_includes & "\GuiIPAddress.au3", 0)
    FileInstall("C:\AIP\includes\GuiListBox.au3", $DIR_includes & "\GuiListBox.au3", 0)
    FileInstall("C:\AIP\includes\GuiListView.au3", $DIR_includes & "\GuiListView.au3", 0)
    FileInstall("C:\AIP\includes\GuiMenu.au3", $DIR_includes & "\GuiMenu.au3", 0)
    FileInstall("C:\AIP\includes\GuiMonthCal.au3", $DIR_includes & "\GuiMonthCal.au3", 0)
    FileInstall("C:\AIP\includes\GuiReBar.au3", $DIR_includes & "\GuiReBar.au3", 0)
    FileInstall("C:\AIP\includes\GuiRichEdit.au3", $DIR_includes & "\GuiRichEdit.au3", 0)
    FileInstall("C:\AIP\includes\GuiScrollBars.au3", $DIR_includes & "\GuiScrollBars.au3", 0)
    FileInstall("C:\AIP\includes\GuiSlider.au3", $DIR_includes & "\GuiSlider.au3", 0)
    FileInstall("C:\AIP\includes\GuiStatusBar.au3", $DIR_includes & "\GuiStatusBar.au3", 0)
    FileInstall("C:\AIP\includes\GuiTab.au3", $DIR_includes & "\GuiTab.au3", 0)
    FileInstall("C:\AIP\includes\GuiToolbar.au3", $DIR_includes & "\GuiToolbar.au3", 0)
    FileInstall("C:\AIP\includes\GuiToolTip.au3", $DIR_includes & "\GuiToolTip.au3", 0)
    FileInstall("C:\AIP\includes\GuiTreeView.au3", $DIR_includes & "\GuiTreeView.au3", 0)
    FileInstall("C:\AIP\includes\HeaderConstants.au3", $DIR_includes & "\HeaderConstants.au3", 0)
    FileInstall("C:\AIP\includes\IE.au3", $DIR_includes & "\IE.au3", 0)
    FileInstall("C:\AIP\includes\ImageListConstants.au3", $DIR_includes & "\ImageListConstants.au3", 0)
    FileInstall("C:\AIP\includes\Inet.au3", $DIR_includes & "\Inet.au3", 0)
    FileInstall("C:\AIP\includes\InetConstants.au3", $DIR_includes & "\InetConstants.au3", 0)
    FileInstall("C:\AIP\includes\IPAddressConstants.au3", $DIR_includes & "\IPAddressConstants.au3", 0)
    FileInstall("C:\AIP\includes\ListBoxConstants.au3", $DIR_includes & "\ListBoxConstants.au3", 0)
    FileInstall("C:\AIP\includes\ListViewConstants.au3", $DIR_includes & "\ListViewConstants.au3", 0)
    FileInstall("C:\AIP\includes\Math.au3", $DIR_includes & "\Math.au3", 0)
    FileInstall("C:\AIP\includes\Memory.au3", $DIR_includes & "\Memory.au3", 0)
    FileInstall("C:\AIP\includes\MemoryConstants.au3", $DIR_includes & "\MemoryConstants.au3", 0)
    FileInstall("C:\AIP\includes\MenuConstants.au3", $DIR_includes & "\MenuConstants.au3", 0)
    FileInstall("C:\AIP\includes\Misc.au3", $DIR_includes & "\Misc.au3", 0)
    FileInstall("C:\AIP\includes\MsgBoxConstants.au3", $DIR_includes & "\MsgBoxConstants.au3", 0)
    FileInstall("C:\AIP\includes\NamedPipes.au3", $DIR_includes & "\NamedPipes.au3", 0)
    FileInstall("C:\AIP\includes\NetShare.au3", $DIR_includes & "\NetShare.au3", 0)
    FileInstall("C:\AIP\includes\NTSTATUSConstants.au3", $DIR_includes & "\NTSTATUSConstants.au3", 0)
    FileInstall("C:\AIP\includes\Process.au3", $DIR_includes & "\Process.au3", 0)
    FileInstall("C:\AIP\includes\ProcessConstants.au3", $DIR_includes & "\ProcessConstants.au3", 0)
    FileInstall("C:\AIP\includes\ProgressConstants.au3", $DIR_includes & "\ProgressConstants.au3", 0)
    FileInstall("C:\AIP\includes\RebarConstants.au3", $DIR_includes & "\RebarConstants.au3", 0)
    FileInstall("C:\AIP\includes\RichEditConstants.au3", $DIR_includes & "\RichEditConstants.au3", 0)
    FileInstall("C:\AIP\includes\ScreenCapture.au3", $DIR_includes & "\ScreenCapture.au3", 0)
    FileInstall("C:\AIP\includes\ScrollBarConstants.au3", $DIR_includes & "\ScrollBarConstants.au3", 0)
    FileInstall("C:\AIP\includes\ScrollBarsConstants.au3", $DIR_includes & "\ScrollBarsConstants.au3", 0)
    FileInstall("C:\AIP\includes\Security.au3", $DIR_includes & "\Security.au3", 0)
    FileInstall("C:\AIP\includes\SecurityConstants.au3", $DIR_includes & "\SecurityConstants.au3", 0)
    FileInstall("C:\AIP\includes\SendMessage.au3", $DIR_includes & "\SendMessage.au3", 0)
    FileInstall("C:\AIP\includes\SliderConstants.au3", $DIR_includes & "\SendMessage.au3", 0)
    FileInstall("C:\AIP\includes\Sound.au3", $DIR_includes & "\Sound.au3", 0)
    FileInstall("C:\AIP\includes\SQLite.au3", $DIR_includes & "\SQLite.au3", 0)
    FileInstall("C:\AIP\includes\SQLite.dll.au3", $DIR_includes & "\SQLite.dll.au3", 0)
    FileInstall("C:\AIP\includes\StaticConstants.au3", $DIR_includes & "\StaticConstants.au3", 0)
    FileInstall("C:\AIP\includes\StatusBarConstants.au3", $DIR_includes & "\StatusBarConstants.au3", 0)
    FileInstall("C:\AIP\includes\String.au3", $DIR_includes & "\String.au3", 0)
    FileInstall("C:\AIP\includes\StringConstants.au3", $DIR_includes & "\StringConstants.au3", 0)
    FileInstall("C:\AIP\includes\StructureConstants.au3", $DIR_includes & "\StructureConstants.au3", 0)
    FileInstall("C:\AIP\includes\TabConstants.au3", $DIR_includes & "\TabConstants.au3", 0)
    FileInstall("C:\AIP\includes\Timers.au3", $DIR_includes & "\Timers.au3", 0)
    FileInstall("C:\AIP\includes\ToolbarConstants.au3", $DIR_includes & "\ToolbarConstants.au3", 0)
    FileInstall("C:\AIP\includes\ToolTipConstants.au3", $DIR_includes & "\ToolTipConstants.au3", 0)
    FileInstall("C:\AIP\includes\TrayConstants.au3", $DIR_includes & "\TrayConstants.au3", 0)
    FileInstall("C:\AIP\includes\TreeViewConstants.au3", $DIR_includes & "\TreeViewConstants.au3", 0)
    FileInstall("C:\AIP\includes\UDFGlobalID.au3", $DIR_includes & "\UDFGlobalID.au3", 0)
    FileInstall("C:\AIP\includes\UpDownConstants.au3", $DIR_includes & "\UpDownConstants.au3", 0)
    FileInstall("C:\AIP\includes\Visa.au3", $DIR_includes & "\Visa.au3", 0)
    FileInstall("C:\AIP\includes\WinAPI.au3", $DIR_includes & "\WinAPI.au3", 0)
    FileInstall("C:\AIP\includes\WinAPICom.au3", $DIR_includes & "\WinAPICom.au3", 0)
    FileInstall("C:\AIP\includes\WinAPIConstants.au3", $DIR_includes & "\WinAPIConstants.au3", 0)
    FileInstall("C:\AIP\includes\WinAPIDiag.au3", $DIR_includes & "\WinAPIDiag.au3", 0)
    FileInstall("C:\AIP\includes\WinAPIDlg.au3", $DIR_includes & "\WinAPIDlg.au3", 0)
    FileInstall("C:\AIP\includes\WinAPIError.au3", $DIR_includes & "\WinAPIError.au3", 0)
    FileInstall("C:\AIP\includes\WinAPIEx.au3", $DIR_includes & "\WinAPIEx.au3", 0)
    FileInstall("C:\AIP\includes\WinAPIFiles.au3", $DIR_includes & "\WinAPIFiles.au3", 0)
    FileInstall("C:\AIP\includes\WinAPIGdi.au3", $DIR_includes & "\WinAPIGdi.au3", 0)
    FileInstall("C:\AIP\includes\WinAPIInternals.au3", $DIR_includes & "\WinAPIInternals.au3", 0)
    FileInstall("C:\AIP\includes\WinAPIlangConstants.au3", $DIR_includes & "\WinAPIlangConstants.au3", 0)
    FileInstall("C:\AIP\includes\WinAPILocale.au3", $DIR_includes & "\WinAPILocale.au3", 0)
    FileInstall("C:\AIP\includes\WinAPIMisc.au3", $DIR_includes & "\WinAPIMisc.au3", 0)
    FileInstall("C:\AIP\includes\WinAPIProc.au3", $DIR_includes & "\WinAPIProc.au3", 0)
    FileInstall("C:\AIP\includes\WinAPIReg.au3", $DIR_includes & "\WinAPIReg.au3", 0)
    FileInstall("C:\AIP\includes\WinAPIRes.au3", $DIR_includes & "\WinAPIRes.au3", 0)
    FileInstall("C:\AIP\includes\WinAPIShellEx.au3", $DIR_includes & "\WinAPIShellEx.au3", 0)
    FileInstall("C:\AIP\includes\WinAPIShPath.au3", $DIR_includes & "\WinAPIShPath.au3", 0)
    FileInstall("C:\AIP\includes\WinAPISys.au3", $DIR_includes & "\WinAPISys.au3", 0)
    FileInstall("C:\AIP\includes\WinAPIsysinfoConstants.au3", $DIR_includes & "\WinAPIsysinfoConstants.au3", 0)
    FileInstall("C:\AIP\includes\WinAPITheme.au3", $DIR_includes & "\WinAPITheme.au3", 0)
    FileInstall("C:\AIP\includes\WinAPIvkeysConstants.au3", $DIR_includes & "\WinAPIvkeysConstants.au3", 0)
    FileInstall("C:\AIP\includes\WindowsConstants.au3", $DIR_includes & "\WindowsConstants.au3", 0)
    FileInstall("C:\AIP\includes\WinNet.au3", $DIR_includes & "\WinNet.au3", 0)
    FileInstall("C:\AIP\includes\Word.au3", $DIR_includes & "\Word.au3", 0)
    FileInstall("C:\AIP\includes\WordConstants.au3", $DIR_includes & "\WordConstants.au3", 0)
EndFunc

Version 0.0.4 Download:

Windows binaries and source code can be found at https://github.com/zelles/AutoIt-Portable

Share this post


Link to post
Share on other sites

Your binary is redistributing AutoIt and the UDFs, why? Even Jos and I don't do that for our Portable flavours (mine is now outdated since SciTE and all tools are portable). Secondly, you're loops are declaring variables and you're using Global inside functions, which in itself is going to cause you problems at a later stage.


_AdapterConnections()_AlwaysRun()_AppMon()_AppMonEx()_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: 04/09/2015

Share this post


Link to post
Share on other sites

Your binary is redistributing AutoIt and the UDFs, why? Even Jos and I don't do that for our Portable flavours (mine is now outdated since SciTE and all tools are portable). Secondly, you're loops are declaring variables and you're using Global inside functions, which in itself is going to cause you problems at a later stage.

 

It only packs AutoIt2exe.exe, upx.exe and basic UDF's... Most of the AutoIt files are not needed. Also it doesn't write all the extra junk in the registry.

Share this post


Link to post
Share on other sites

#19 ·  Posted (edited)

I'm with Jos, and would love to see examples of all the "extra junk" in the registry you keep referring to, if you're using the zip files.

Edited by JLogan3o13

√-1 2^3 ∑ π, and it was delicious!

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  
Followers 0

  • Similar Content

    • Marc
      By Marc
      Hi Folks,
      I've been very fond of portable software. Some of the portable programs are quite large, so to make the using fancier, I started to compress the portable applications into a WinRar SFX Archive which extracts the software to the tempdir, starts the software and afterward deletes the whole temp Dir.
      But it got cumbersome to manually extract the icon from the exe, make all necessary settings in the WinRar GUI - so I wrote this script. Nothing spectacular, but (in my eyes) very useful. After that, I added some other options to make it a little more versatile.
      Features:
      if we have a 32Bit and a 64Bit version, it can launch the correct Version (32Bit or 64Bit) fitting to the system the SFX is started on (contains a small exe file "universal_launcher.exe" which expects two parameters  for the 32Bit.exe and 64Bit.exe, checks the current system for 64Bit and then runs the correct file). Powerbasic Sourcecode of the exe file is included, of course. automatically extracts the icon from the chosen exe and uses it as icon for the SFX if the chosen exe file has a version number in it, the version is put in the resulting SFX's filename can just extract the files to a user-chosen directory OR can just extract the files to the program files directory (and, optionally, create a desktop shortcut) OR extract the files to a temp directory and run an exe Have fun with it
      best regards,
      Marc

      MakeSFX.zip
    • sree161
      By sree161
      Hi,
      i have a code which generates two numeric outputs.i have to save them in excel.
      Is there any way to export them to specific cells in excel???
    • TotalAuto
      By TotalAuto
      Howdy All
      I've gone around and around in circles wasting hours trying to fix this problem to no avail so I thought I would try posting for help given there are some real smart people in this forum.
      Background
      I have 5 separate .au3 scripts that all do different basic tasks. For example:
      1.au3 = opens Chrome browser to obtain information from a specific website then closes
      2.au3 = opens an Excel workbook to run a macro then saves and closes
      3.au3 = Open two seperate workbooks and transfers data from one to the other then saves and closes
      4.au3 = .......etc
      5.au3 = .......etc
      These 5 separate scripts, doing completely different tasks, need to each run once per day at 5 different designated times within a day and then close. For example:
      1.au3 = 10am
      2.au3 = 12pm
      3.au3 = 2pm
      4.au3 = 4pm
      5.au3 = 5pm
      Problem
      I can not get these different scripts to reliably run at their designated times. When I manually run these scripts individually by using 'Go F5' they work perfectly. If I convert these scripts to an .exe and manually run each one they work about 98% of time.
      How can I schedule these different .au3 files or associated .exe files to reliably run each day at different times?
      Attempts To Fix The Issue
      1. I have tried converting each .au3 script into their own .exe file and use Window's Task Scheduler to run these .exe files at their designated time but the success rate  of running each .exe in full, to completion, without error is very low at about 30%. Things that commonly go wrong include a browser not opening but movement still continues on the desk top. Other times things just do not happen at all.
      2. I have Windows 7 64 bit and have tried creating and running both (x86) and (x64) .exe files but again reliability problems exist;
      3. I have also tried moving each .exe file to the My Documents folder as I read someone that keeping your files on your desktop ties your files to individual Windows user profiles which can cause AutoIt operating errors. Not sure if this is correct but thought I would try it anyway. It did not fix my issue.
      4. I installed a program called AlwaysUp which supposedly always reliably runs in the background and will reliably execute your AutoIt script or .exe files. Still have significant reliability issues.
      Therefore, can someone please provide advice on how I can get my 5 different .au3 files to run at 5 designated times through the day, every day, without fail? Overtime I will be creating more and more different .au3 files to run certain tasks throughout the day and do not want to create one large AutoIt file that continually runs and attempts to do all the different tasks itself.
      Any help is very appreciated.
      Thanks
      Dan
       
       
    • hugomito
      By hugomito
      Hi all,
      I built an AutoIt application that interacts with several other applications/software. Now, it's turn to interfact with Visual Studio Team Services (VSTS).
      Does anyone has a blog, demo, script to share?
      Thanks!
    • Viki
      By Viki
      This is my first time here so please dont bombard me that what a silly question I am asking!!
      I have 500 rows (A1:A500) in a spreadsheet and I just want to copy one by one row and then paste into another application and then press enter, loop should repeat this until finishes all 500 rows.
      I have looked at clipget(), clip(put() but dont know how to select next row in next turn. I also looked at Array to store but again no luck. Can some guide me please..