Jump to content
Sign in to follow this  
zelles

AutoIt Portable v 0.0.2 [Open-Source]

Recommended Posts

zelles

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
  • Like 1

Share this post


Link to post
Share on other sites
Melba23

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
zelles

Sorry about that. Thank you for letting me know.

Share this post


Link to post
Share on other sites
Jos

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                                How to post scriptsource        Forum Rules
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Share this post


Link to post
Share on other sites
zelles

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
zelles

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

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                                How to post scriptsource        Forum Rules
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Share this post


Link to post
Share on other sites
zelles

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
Jos

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                                How to post scriptsource        Forum Rules
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Share this post


Link to post
Share on other sites
zelles

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
Jos

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                                How to post scriptsource        Forum Rules
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Share this post


Link to post
Share on other sites
zelles

Run what? the ZIP file?

 

The executable files inside the zip...

Share this post


Link to post
Share on other sites
zelles

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

Share this post


Link to post
Share on other sites
zelles

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
zelles

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
guinness

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.


UDF List:

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

Updated: 22/04/2018

Share this post


Link to post
Share on other sites
zelles

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
JLogan3o13

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  

  • Similar Content

    • Miliardsto
      By Miliardsto
      Hello Im wondering if using this https://ohtejera.github.io/ImperiusAutoIt/#started
      UDF can i make that I can control my windows application with phone?
      like for example click button Start on android phone and then something would be done in my windows app?
    • 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 v1.2.zip
    • nooneclose
      By nooneclose
      How do I properly convert this to Autoit? This is a VBA macro that I recorded in Excel.
       ActiveSheet.Outline.ShowLevels RowLevels:=2 I need this to close my subtotal once it is finished. 
      any help will be greatly appreciated. 
    • iMacg3
      By iMacg3
      Hi,
      I was looking into a way to delete a registry key (not a specific value, an entire key) if it is present. I was considering using RegRead and RegDelete. However, RegRead appears to only read values, not just keys. Is there a way to delete an entire registry key if it is present? I have heard that the below function may help.
       
      #include-once ; #UDF# ======================================================================================================================= ; Title .........: Reads\Search the name of a Key\Subkey\Value ; AutoIt Version : 3.3.8.1 ; Language ......: English ; Description ...: Lists all Keys\Subkeys\Values in a specified registry key ; Author(s) .....: DXRW4E ; Notes .........: ; =============================================================================================================================== ; #CURRENT# ===================================================================================================================== ;~ _RegEnumKeyEx ;~ _RegEnumValEx ; =============================================================================================================================== #Region ;**** Global constants and vars **** Global Const $sValueTypes[12] = ["REG_NONE","REG_SZ","REG_EXPAND_SZ","REG_BINARY","REG_DWORD","REG_DWORD_BIG_ENDIAN","REG_LINK","REG_MULTI_SZ","REG_RESOURCE_LIST","REG_FULL_RESOURCE_DESCRIPTOR","REG_RESOURCE_REQUIREMENTS_LIST","REG_QWORD"] #EndRegion ;**** Global constants and vars **** ; #FUNCTION# ======================================================================================================================== ; Name...........: _RegEnumKeyEx ; Description ...: Lists all subkeys in a specified registry key ; Syntax.........: _RegEnumKeyEx($KeyName[, $iFlag = 0[, $sFilter = "*"]]) ; Parameters ....: $KeyName - The registry key to read. ; $iFlag - Optional specifies Recursion (add the flags together for multiple operations): ; |$iFlag = 0 (Default) All Key-SubKeys Recursive Mod ; |$iFlag = 1 All SubKeys Not Recursive Mod ; |$iFlag = 2 Include in ArrayList in the first element $KeyName ; |$iFlag = 16 $sFilter do Case-Sensitive matching (By Default $sFilter do Case-Insensitive matching) ; |$iFlag = 32 Disable the return the count in the first element - effectively makes the array 0-based (must use UBound() to get the size in this case). ; By Default the first element ($array[0]) contains the number of strings returned, the remaining elements ($array[1], $array[2], etc.) ; |$iFlag = 64 $sFilter is REGEXP Mod, See Pattern Parameters in StringRegExp ; |$iFlag = 128 Enum value's name (_RegEnumKeyEx Return a 2D array, maximum Array Size limit is 3999744 Key\Value) ; |$iFlag = 256 Reads a value data, this flag will be ignored if the $iFlag = 128 is not set ; $sFilter - Optional the filter to use, default is *. (Multiple filter groups such as "All "*.XXx|*.YYY|*.ZZZ") ; Search the Autoit3 helpfile for the word "WildCards" For details. ; $vFilter - Optional the filter to use for ValueName, $vFilter will be ignored if the $iFlag = 128 is not set ; default is *. (Multiple filter groups such as "All "*.XXx|*.YYY|*.ZZZ") Search the Autoit3 helpfile for the word "WildCards" For details. ; $iValueTypes - Optional, set Value Types to search (Default $iValueTypes = 0 Read All), $iValueTypes will be ignored if the $iFlag = 128 is not set ; (add the flags together for multiple operations): ; 1 = REG_SZ ; 2 = REG_EXPAND_SZ ; 3 = REG_BINARY ; 4 = REG_DWORD ; 5 = REG_DWORD_BIG_ENDIAN ; 6 = REG_LINK ; 7 = REG_MULTI_SZ ; 8 = REG_RESOURCE_LIST ; 9 = REG_FULL_RESOURCE_DESCRIPTOR ; 10 = REG_RESOURCE_REQUIREMENTS_LIST ; 11 = REG_QWORD ; Return values .: Success - Return Array List (See Remarks) ; Failure - @Error ; |1 = Invalid $sFilter ; |2 = No Key-SubKey(s) Found ; |3 = Invalid $vFilter ; |4 = No Value-Name(s) Found ; Author ........: DXRW4E ; Modified.......: ; Remarks .......: The array returned is one-dimensional and is made up as follows: ; $array[0] = Number of Key-SubKeys returned ; $array[1] = 1st Key\SubKeys ; $array[2] = 2nd Key\SubKeys ; $array[3] = 3rd Key\SubKeys ; $array[n] = nth Key\SubKeys ; ; If is set the $iFlag = 128 The array returned is 2D array and is made up as follows: ; $array[0][0] = Number of Key-SubKeys returned ; $array[1][0] = 1st Key\SubKeys ; $array[1][1] = 1st Value name ; $array[1][2] = 1st Value Type (REG_NONE or REG_SZ or REG_EXPAND_SZ ect ect) ; $array[1][3] = 1st Value Data (If is set $iFlag = 256 Else Value Data = "") ; $array[2][0] = 2nd Key\SubKeys ; $array[2][1] = 2nd Value name ; $array[2][2] = 2nd Value Type (REG_NONE or REG_SZ or REG_EXPAND_SZ ect ect) ; $array[2][3] = 2nd Value Data (If is set $iFlag = 256 Else Value Data = "") ; $array[n][0] = nth Key\SubKeys ; Related .......: _RegEnumValEx() ; Link ..........: ; Example .......: _RegEnumKeyEx("HKEY_CURRENT_USER\Software\AutoIt v3") ; Note ..........: ; =================================================================================================================================== Func _RegEnumKeyEx($KeyName, $iFlag = 0, $sFilter = "*", $vFilter = "*", $iValueTypes = 0) If StringRegExp($sFilter, StringReplace("^\s*$|\v|\\|^\||\|\||\|$", Chr(BitAND($iFlag, 64) + 28) & "\|^\||\|\||\|$", "\\\\")) Then Return SetError(1, 0, "") Local $IndexSubKey[101] = [100], $SubKeyName, $BS = "\", $sKeyList, $I = 1, $sKeyFlag = BitAND($iFlag, 1), $sKeyFilter = StringReplace($sFilter, "*", "") If BitAND($iFlag, 2) Then $sKeyList = @LF & $KeyName If Not BitAND($iFlag, 64) Then $sFilter = StringRegExpReplace(BitAND($iFlag, 16) & "(?i)(", "16\(\?\i\)|\d+", "") & StringRegExpReplace(StringRegExpReplace(StringRegExpReplace(StringRegExpReplace($sFilter, "[^*?|]+", "\\Q$0\\E"), "\\E(?=\||$)", "$0\$"), "(?<=^|\|)\\Q", "^$0"), "\*+", ".*") & ")" While $I $IndexSubKey[$I] += 1 $SubKeyName = RegEnumKey($KeyName, $IndexSubKey[$I]) If @error Then $IndexSubKey[$I] = 0 $I -= 1 $KeyName = StringLeft($KeyName, StringInStr($KeyName, "\", 1, -1) - 1) ContinueLoop EndIf If $sKeyFilter Then If StringRegExp($SubKeyName, $sFilter) Then $sKeyList &= @LF & $KeyName & $BS & $SubKeyName Else $sKeyList &= @LF & $KeyName & $BS & $SubKeyName EndIf If $sKeyFlag Then ContinueLoop $I += 1 If $I > $IndexSubKey[0] Then $IndexSubKey[0] += 100 ReDim $IndexSubKey[$IndexSubKey[0] + 1] EndIf $KeyName &= $BS & $SubKeyName WEnd If Not $sKeyList Then Return SetError(2, 0, "") If BitAND($iFlag, 128) <> 128 Then Return StringSplit(StringTrimLeft($sKeyList, 1), @LF, StringReplace(BitAND($iFlag, 32), "32", 2)) $sKeyList = _RegEnumValEx(StringSplit(StringTrimLeft($sKeyList, 1), @LF), $iFlag, $vFilter, $iValueTypes) Return SetError(@Error, 0, $sKeyList) EndFunc ; #FUNCTION# ======================================================================================================================== ; Name...........: _RegEnumValEx ; Description ...: Lists all values in a specified registry key ; Syntax.........: _RegEnumValEx($KeyName[, $iFlag = 0[, $sFilter = "*"]]) ; Parameters ....: $KeyName - The registry key to read Or one-dimensional array RegKeyList ; use _RegEnumKeyEx() to get $RegKeyList (example $RegKeyList = [3, 1st Key\SubKeys, 2st Key\SubKeys, nth Key\SubKeys]) ; |$iFlag = 16 $sFilter do Case-Sensitive matching (By Default $sFilter do Case-Insensitive matching) ; |$iFlag = 32 Disable the return the count in the first element - effectively makes the array 0-based (must use UBound() to get the size in this case). ; By Default the first element ($array[0]) contains the number of strings returned, the remaining elements ($array[1], $array[2], etc.) ; |$iFlag = 64 $sFilter is REGEXP Mod, See Pattern Parameters in StringRegExp ; |$iFlag = 256 Reads a value data ; $sFilter - Optional the filter to use, default is *. (Multiple filter groups such as "All "*.XXx|*.YYY|*.ZZZ") ; Search the Autoit3 helpfile for the word "WildCards" For details. ; $iValueTypes - Optional, set Value Types to search (Default $iValueTypes = 0 Read All) ; (add the flags together for multiple operations): ; 1 = REG_SZ ; 2 = REG_EXPAND_SZ ; 3 = REG_BINARY ; 4 = REG_DWORD ; 5 = REG_DWORD_BIG_ENDIAN ; 6 = REG_LINK ; 7 = REG_MULTI_SZ ; 8 = REG_RESOURCE_LIST ; 9 = REG_FULL_RESOURCE_DESCRIPTOR ; 10 = REG_RESOURCE_REQUIREMENTS_LIST ; 11 = REG_QWORD ; Return values .: Success - Return Array List (See Remarks) ; Failure - @Error ; |3 = Invalid $sFilter ; |4 = No Value-Name(s) Found ; Author ........: DXRW4E ; Modified.......: ; Remarks .......: The array returned is 2D array and is made up as follows: ; $array[0][0] = Number of Key-SubKeys returned ; $array[1][0] = 1st Key\SubKeys ; $array[1][1] = 1st Value name ; $array[1][2] = 1st Value Type (REG_NONE or REG_SZ or REG_EXPAND_SZ ect ect) ; $array[1][3] = 1st Value Data (If is set $iFlag = 256 Else Value Data = "") ; $array[2][0] = 2nd Key\SubKeys ; $array[2][1] = 2nd Value name ; $array[2][2] = 2nd Value Type (REG_NONE or REG_SZ or REG_EXPAND_SZ ect ect) ; $array[2][3] = 2nd Value Data (If is set $iFlag = 256 Else Value Data = "") ; $array[n][0] = nth Key\SubKeys ; Related .......: _RegEnumKeyEx() ; Link ..........: ; Example .......: _RegEnumValEx("HKEY_CURRENT_USER\Software\AutoIt v3") ; Note ..........: ; =================================================================================================================================== Func _RegEnumValEx($aKeyList, $iFlag = 0, $sFilter = "*", $iValueTypes = 0) If StringRegExp($sFilter, "\v") Then Return SetError(3, 0, "") If Not IsArray($aKeyList) Then $aKeyList = StringSplit($aKeyList, @LF) Local $aKeyValList[1954][4], $iKeyVal = Int(BitAND($iFlag, 32) = 0), $sKeyVal = 1953, $sRegEnumVal, $iRegEnumVal, $RegRead = BitAND($iFlag, 256), $vFilter = StringReplace($sFilter, "*", "") If Not BitAND($iFlag, 64) Then $sFilter = StringRegExpReplace(BitAND($iFlag, 16) & "(?i)(", "16\(\?\i\)|\d+", "") & StringRegExpReplace(StringRegExpReplace(StringRegExpReplace(StringRegExpReplace($sFilter, "[^*?|]+", "\\Q$0\\E"), "\\E(?=\||$)", "$0\$"), "(?<=^|\|)\\Q", "^$0"), "\*+", ".*") & ")" For $i = 1 To $aKeyList[0] $iRegEnumVal = 0 While 1 If $iKeyVal = $sKeyVal Then If $sKeyVal = 3999744 Then ExitLoop $sKeyVal *= 2 ReDim $aKeyValList[$sKeyVal + 1][4] EndIf $aKeyValList[$iKeyVal][0] = $aKeyList[$i] $iRegEnumVal += 1 $sRegEnumVal = RegEnumVal($aKeyList[$i], $iRegEnumVal) If @Error <> 0 Then If $iRegEnumVal = 1 And $vFilter = "" Then $iKeyVal += 1 ExitLoop EndIf $aKeyValList[$iKeyVal][2] = $sValueTypes[@Extended] If BitAND(@Extended, $iValueTypes) <> $iValueTypes Then ContinueLoop If $vFilter And Not StringRegExp($sRegEnumVal, $sFilter) Then ContinueLoop $aKeyValList[$iKeyVal][1] = $sRegEnumVal If $RegRead Then $aKeyValList[$iKeyVal][3] = RegRead($aKeyList[$i], $sRegEnumVal) $iKeyVal += 1 WEnd Next $sRegEnumVal = $iKeyVal - Int(BitAND($iFlag, 32) = 0) If Not $sRegEnumVal Or ($sRegEnumVal = 1 And $vFilter = "" And $aKeyValList[$iKeyVal - $sRegEnumVal][2] = "") Then Return SetError(4, 0, "") ReDim $aKeyValList[$iKeyVal][4] If Not BitAND($iFlag, 32) Then $aKeyValList[0][0] = $iKeyVal - 1 Return $aKeyValList EndFunc Thanks.
       
    • great77
      By great77
      ; put the root in a variable $sRoot = "C:\Project\PHexample\" Global $sCurrentTime = _NowCalc() ; We can use that variable here Global $aList = _FileListToArray($sRoot, Default, 2) If @error Then Exit ;;;;;;MsgBox(0, "Error", "_FileListToArray returned @error = " & @error) ;;;;;;;;;;;This is a loop that runs from 1 to the number of items listed in the first element of the returned  array For $i = 1 To UBound($aList) - 1     MsgBox(0, "Folder date", $sRoot & "" & $aList[$i] & @CRLF & @CRLF & FileGetTime($sRoot & "" & $aList[$i], 1, 1))     MsgBox(0, "Folder date", FileGetTime($sRoot & "" & $aList[$i], 1, 1))      $a_filenew = StringReplace(StringReplace(StringReplace(_NowCalc(), "/", ""), ":", ""), " ", "")       MsgBox(0, "Folder date", $a_filenew) $adex =  _DateDiff('D', FileGetTime($sRoot & "" & $aList[$i], 1, 1), $a_filenew)  MsgBox(0,"ade", $adex) Next I have a code as seen above, but the difference in time is returning zero. I understand that the date yyyymmddhhmmss but how can I find the difference.
      The purpose is to try find the difference in days. Any suggestion?  
×