AutoIt Portable (Final y Funcional)
Publicado: 30 Ene 2009, 22:44
Hola a todos, hacer una version portable de AutoIt fue una ambición cuando decidi aprender a usarlo ya que soy fanatico de poder llevar todas las aplicaciones que utilizo dentro de una llave USB y una vez más gracias a la ayuda que puedo encontrar en este maravilloso foro he logrado mejorar mi uso de algunas funciones de AutoIt con la consecuente mejora del Script original.
En esta ocación los archivos que contenia la primera versión no han sido modificados, lo unico que he hecho fue jugar un poco con los registros originales (los cuales se mantuvieron intactos) y gracias a la ayuda de Xpyro que me ayudo con un problema que tenia con estos.
Para lograr esto hice uso de la funcion RegWrite() y viendo los cambios en el registro he logrado hacer que luego de exportar los registros el script los modifique haciendo que los archivos se corran desde la USB, copiando al disco duro solo 1mb aproximadamente de información en vez de los 30 mb del programa original.
Tambien se exportan un par de archivos que contienen todos los scripts que cada usuario hace con su version del AutoIt, estos se copian desde su USB a su carpeta de usuario personal y cuando se cierra el portable se copian de nuevo a una carpeta de su USB.
Otra mejoría es el instalador que es proporcionado gratuitamente por www.portableapps.com con lo cual solo hay que descargar 11mb aprox para el portable.
El codigo fuente es el siguiente:
El Link de descarga es el Siguiente: http://www.megaupload.com/?d=YQYVTLL4
Que lo Disfruten y espero sus comentarios y sugerencias!!!
En esta ocación los archivos que contenia la primera versión no han sido modificados, lo unico que he hecho fue jugar un poco con los registros originales (los cuales se mantuvieron intactos) y gracias a la ayuda de Xpyro que me ayudo con un problema que tenia con estos.
Para lograr esto hice uso de la funcion RegWrite() y viendo los cambios en el registro he logrado hacer que luego de exportar los registros el script los modifique haciendo que los archivos se corran desde la USB, copiando al disco duro solo 1mb aproximadamente de información en vez de los 30 mb del programa original.
Tambien se exportan un par de archivos que contienen todos los scripts que cada usuario hace con su version del AutoIt, estos se copian desde su USB a su carpeta de usuario personal y cuando se cierra el portable se copian de nuevo a una carpeta de su USB.
Otra mejoría es el instalador que es proporcionado gratuitamente por www.portableapps.com con lo cual solo hay que descargar 11mb aprox para el portable.
El codigo fuente es el siguiente:
Código: Seleccionar todo
#NoTrayIcon
#Region ;**** Directives created by AutoIt3Wrapper_GUI ****
#AutoIt3Wrapper_icon=..\..\App\AppInfo\appicon.ico
#AutoIt3Wrapper_outfile=..\..\AutoIt3.1GTPortable.exe
#AutoIt3Wrapper_Res_Comment=Realiza tus programas sin dejar rastro
#AutoIt3Wrapper_Res_Description=AutoIt Portable
#AutoIt3Wrapper_Res_Fileversion=3.1.0.0
#AutoIt3Wrapper_Res_LegalCopyright=2009 Emmanuel González
#AutoIt3Wrapper_Res_Language=4106
#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
#include <GDIPlus.au3>
#include <GuiComboBox.au3>
#include <File.au3>
#include <Array.au3>
#include <WindowsConstants.au3>
#include <GuiConstantsEx.au3>
#include <ButtonConstants.au3>
Dim $ULW_ALPHA
;Inicio de verificacion por si ya se esta corriendo el portable
If ProcessExists("SciTE.exe") Then
MsgBox(0, "El Portable se esta corriendo en estos momentos.", "Por favor cierre el Portable antes de volver a ejecutarlo.", "15")
Exit
EndIf
;Finalizacion de verificacion
;Comienzo de configuracion de splash
Run(@ScriptDir & "\App\Portable\AutoIt3\Reg's\AutoItReg.exe", @ScriptDir & "\App\Portable\AutoIt3\Reg's\")
ProcessWaitClose("AutoItReg.exe")
FileInstall("..\..\App\Portable\AutoIt3\Reg's\Splash.png", "Data\Splash.png", 0)
Opt("MustDeclareVars", 0)
Global Const $AC_SRC_ALPHA = 1
_GDIPlus_Startup()
$pngSrc = "Data\Splash.png" ;Direccion hacia el splash
$hImage = _GDIPlus_ImageLoadFromFile($pngSrc)
$width = _GDIPlus_ImageGetWidth($hImage)
$height = _GDIPlus_ImageGetHeight($hImage)
$GUI = GUICreate("Portables by Meme1987", $width, $height, -1, -1, $WS_POPUP, $WS_EX_LAYERED)
SetBitmap($GUI, $hImage, 0)
GUIRegisterMsg($WM_NCHITTEST, "WM_NCHITTEST")
GUISetState()
GUISetState(@SW_DISABLE)
WinSetOnTop($GUI, "", 1)
For $i = 0 To 255 Step 3
SetBitmap($GUI, $hImage, $i)
Next
Sleep(1000)
For $i = 255 To 0 Step -3
SetBitmap($GUI, $hImage, $i)
Next
_WinAPI_DeleteObject($hImage)
_GDIPlus_Shutdown()
Func WM_NCHITTEST($hWnd, $iMsg, $iwParam, $ilParam)
If ($hWnd = $GUI) And ($iMsg = $WM_NCHITTEST) Then Return $HTCAPTION
EndFunc
Func SetBitmap($hGUI, $hImage, $iOpacity)
Local $hScrDC, $hMemDC, $hBitmap, $hOld, $pSize, $tSize, $pSource, $tSource, $pBlend, $tBlend
$hScrDC = _WinAPI_GetDC(0)
$hMemDC = _WinAPI_CreateCompatibleDC($hScrDC)
$hBitmap = _GDIPlus_BitmapCreateHBITMAPFromBitmap($hImage)
$hOld = _WinAPI_SelectObject($hMemDC, $hBitmap)
$tSize = DllStructCreate($tagSIZE)
$pSize = DllStructGetPtr($tSize)
DllStructSetData($tSize, "X", _GDIPlus_ImageGetWidth($hImage))
DllStructSetData($tSize, "Y", _GDIPlus_ImageGetHeight($hImage))
$tSource = DllStructCreate($tagPOINT)
$pSource = DllStructGetPtr($tSource)
$tBlend = DllStructCreate($tagBLENDFUNCTION)
$pBlend = DllStructGetPtr($tBlend)
DllStructSetData($tBlend, "Alpha", $iOpacity)
DllStructSetData($tBlend, "Format", $AC_SRC_ALPHA)
_WinAPI_UpdateLayeredWindow($hGUI, $hScrDC, 0, $pSize, $hMemDC, $pSource, 0, $pBlend, $ULW_ALPHA)
_WinAPI_ReleaseDC(0, $hScrDC)
_WinAPI_SelectObject($hMemDC, $hOld)
_WinAPI_DeleteObject($hBitmap)
_WinAPI_DeleteDC($hMemDC)
EndFunc
GUISetState(@SW_HIDE)
;Finalizacion de configuracion de splash
;Comienzo de configuracion de Portable
$import1 = Run(@ComSpec & " /c " & "regedit -s Data\Reg's\AutoIt3-I.reg", "", @SW_HIDE)
ProcessWaitClose($import1)
$import2 = Run(@ComSpec & " /c " & "regedit -s Data\Reg's\SciTE-I.reg", "", @SW_HIDE)
ProcessWaitClose($import2)
$import3 = Run(@ComSpec & " /c " & "regedit -s Data\Reg's\XpyroHelp.reg", "", @SW_HIDE)
ProcessWaitClose($import3)
RegWrite('HKEY_LOCAL_MACHINE\SOFTWARE\AutoIt v3\AutoIt', 'InstallDir', "REG_SZ", @ScriptDir & "\App\Portable\AutoIt3")
RegWrite('HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AutoIt3Script\DefaultIcon', '', 'REG_SZ', @ScriptDir & '\App\Portable\AutoIt3\Icons\filetype1.ico')
RegWrite('HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AutoIt3Script\Shell\Run\Command', '', 'REG_SZ', '"' & @ScriptDir & '\App\Portable\AutoIt3\AutoIt3.exe"' & ' "%1" %*')
RegWrite('HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AutoIt3XScript\Shell\Run\Command', '', 'REG_SZ', '"' & @ScriptDir & '\App\Portable\AutoIt3\AutoIt3.exe"' & ' "%1" %*')
RegWrite('HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AutoIt3Script\Shell\Compile\Command', '', 'REG_SZ','"' & @ScriptDir & '\App\Portable\AutoIt3\Aut2Exe\Aut2Exe.exe"' & ' /in "%l"')
RegWrite('HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AutoIt3Script\Shell\Edit\Command', '', 'REG_SZ', '"' & @ScriptDir & '\App\Portable\AutoIt3\SciTE\SciTE.exe"' & ' "%1"')
RegWrite('HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AutoIt3Script\Shell\Open\Command', '', 'REG_SZ', '"' & @ScriptDir & '\App\Portable\AutoIt3\SciTE\SciTE.exe"' & ' "%1"')
RegWrite('HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AutoIt3XScript\DefaultIcon', '', 'REG_SZ',@ScriptDir & '\App\Portable\AutoIt3\Icons\filetype3.ico')
RegWrite('HKEY_CURRENT_USER\Software\AutoIt v3\Aut2Exe', 'LastIconDir', 'REG_SZ', @ScriptDir & '\App\Portable\AutoIt3\Aut2Exe\Icons')
RegWrite('HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{1A671297-FA74-4422-80FA-6C5D8CE4DE04}\InprocServer32', '', 'REG_SZ', @ScriptDir & '\App\Portable\AutoIt3\AutoItX\AutoItX3.dll')
RegWrite('HKEY_LOCAL_MACHINE\SOFTWARE\Classes\TypeLib\{F8937E53-D444-4E71-9275-35B64210CC3B}\1.0\0\win32', '', 'REG_SZ', @ScriptDir & '\App\Portable\AutoIt3\AutoItX\AutoItX3.dll')
RegWrite('HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{3D54C6B8-D283-40E0-8FAB-C97F05947EE8}\InProcServer32', '', 'REG_SZ', @ScriptDir & '\App\Portable\AutoIt3\AutoItX\AutoItX3.dll')
RegWrite('HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\AutoItv3', 'UninstallString', 'REG_SZ', @ScriptDir & '\App\Portable\AutoIt3\Uninstall.exe')
RegWrite('HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\AutoItv3', 'DisplayIcon', 'REG_SZ', @ScriptDir & '\App\Portable\AutoIt3\AutoIt3.exe,0')
RegWrite('HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\SciTE.exe', '', 'REG_SZ', @ScriptDir & '\App\Portable\AutoIt3\SciTE\SciTE.exe')
RegWrite('HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AutoIt3Script\Shell\Tidy\Command', '', 'REG_SZ', '"' & @ScriptDir & '\App\Portable\AutoIt3\SciTE\Tidy\Tidy.exe" "%1"')
RegWrite('HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AutoIt3Script\Shell\Compile with Options\Command', '', 'REG_SZ', '"' & @ScriptDir & '\App\Portable\AutoIt3\SciTE\AutoIt3Wrapper\AutoIt3Wrapper_Gui.exe" /in "%l"')
RegWrite('HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\SciTE4AutoIt3', 'UninstallString', 'REG_SZ', @ScriptDir & '\App\Portable\AutoIt3\SciTE\uninst.exe')
RegWrite('HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\SciTE4AutoIt3', 'DisplayIcon', 'REG_SZ', @ScriptDir & '\App\Portable\AutoIt3\SciTE\SciTE.exe')
RegWrite('HKEY_CLASSES_ROOT\AutoIt3Script\DefaultIcon', '@', 'REG_SZ', @ScriptDir & '\App\Portable\AutoIt3\Icons\au3script_v10.ico')
RegWrite('HKEY_CLASSES_ROOT\AutoIt3Script\Shell\Compile\Command', '@', 'REG_SZ', '"' & @ScriptDir & '\App\Portable\AutoIt3\Aut2Exe\Aut2Exe.exe" /in "%l"')
RegWrite('HKEY_CLASSES_ROOT\AutoIt3Script\Shell\Compile with Options\Command', '@', 'REG_SZ', '"' & @ScriptDir & '\App\Portable\AutoIt3\SciTE\AutoIt3Wrapper\AutoIt3Wrapper_Gui.exe" /in "%l"')
RegWrite('HKEY_CLASSES_ROOT\AutoIt3Script\Shell\Edit\Command', '@', 'REG_SZ', '"' & @ScriptDir & '\App\Portable\AutoIt3\SciTE\SciTE.exe" "%1"')
RegWrite('HKEY_CLASSES_ROOT\AutoIt3Script\Shell\Open\Command', '@', 'REG_SZ', '"' & @ScriptDir & '\App\Portable\AutoIt3\SciTE\SciTE.exe" "%1"')
RegWrite('HKEY_CLASSES_ROOT\AutoIt3Script\Shell\Run\Command', '@', 'REG_SZ', '"' & @ScriptDir & '\App\Portable\AutoIt3\AutoIt3.exe" "%1" %*')
RegWrite('HKEY_CLASSES_ROOT\AutoIt3Script\Shell\Tidy\Command', '@', 'REG_SZ', '"' & @ScriptDir & '\App\Portable\AutoIt3\SciTE\Tidy\Tidy.exe" "%1"')
DirCreate(@ProgramFilesDir & '\AutoIt3')
FileCopy(@ScriptDir & '\App\Portable\AutoIt3\Au3Check.dat', @ProgramFilesDir & '\AutoIt3', 1)
FileCopy(@ScriptDir & '\App\Portable\AutoIt3\Au3Check.exe', @ProgramFilesDir & '\AutoIt3', 1)
FileCopy(@ScriptDir & '\Data\profile\SciTE.recent', @UserProfileDir & '\', 1)
FileCopy(@ScriptDir & '\Data\profile\SciTE.session', @UserProfileDir & '\', 1)
;~ Inicio de creacion de la GUI
;~ Icono en bandeja sin menu
Opt('TrayMenuMode', 1)
Guicreate('AutoIt GTPortable .:3.1:.', 320, 85)
GuiCtrlCreateLabel('Cierra esta ventana solo cuando termines de usar AutoIt Portable.', 10, 10, 330, 20)
GuictrlcreateLabel('(¯`·._.·[Portable by Meme1987]·._.·´¯)', 70, 60, 200, 20)
$btThanks = GUICtrlCreateButton('Agradecimientos', 110, 30, 100, 20)
$helperrorwindow = WinActivate('SciTE', 'Error while launching:')
GuiSetSTate(@SW_SHOW)
ControlSend("Program Manager","","SysListView321","{f5}")
While 1
$msg = GUIGetMsg()
$traymsg = TrayGetMsg()
Select
case $traymsg = $TRAY_EVENT_PRIMARYDOWN
GUISetState(@SW_SHOW)
GUISetState(@SW_RESTORE)
TraySetState(2)
Case $msg = $GUI_EVENT_MINIMIZE
GUISetState(@SW_HIDE)
TraySetState(1)
case $msg = $btThanks
MsgBox(0, 'Agradecimientos a:', "Sancas, Xpyro, Chefito y a la Gran comunidad de http://www.Autoit.es")
case $msg = $helperrorwindow
If WinClose('SciTE', 'Error while launching:') Then
Run(@ScriptDir & '\App\Portable\AutoIt3\AutoIt3Help.exe', @ScriptDir & '\App\Portable\AutoIt3\', @SW_SHOWNORMAL)
EndIf
Case $msg = $GUI_EVENT_CLOSE
ProcessClose('AutoIt3.exe')
ProcessClose('AutoIt3Wrapper.exe')
ProcessClose('AutoIt3Wrapper.exe')
ProcessClose('AutoIt3Help.exe')
ProcessClose('SciTE.exe')
DirRemove(@ProgramFilesDir & '\AutoIt3', 1)
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\AutoIt v3\AutoIt")
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.au3")
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.au3\PersistentHandler")
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.a3x")
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.au3\ShellNew")
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AutoIt3Script\DefaultIcon")
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AutoIt3Script\Shell\Run")
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AutoIt3Script\Shell\Run\Command")
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AutoIt3XScript\Shell\Run\Command")
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AutoIt3Script\Shell\Compile")
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AutoIt3Script\Shell\Compile\Command")
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AutoIt3Script\Shell\Edit")
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AutoIt3Script\Shell\Edit\Command")
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AutoIt3Script\Shell\Open")
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AutoIt3Script\Shell\Open\Command")
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AutoIt3XScript")
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AutoIt3XScript\DefaultIcon")
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AutoIt3XScript\Shell")
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AutoIt3XScript\Shell\Run")
RegDelete("HKEY_CURRENT_USER\Software\AutoIt v3\Aut2Exe")
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AppID\{6E8109C4-F369-415D-AF9A-2AEEFF313234}")
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AppID\AutoItX3.DLL")
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AutoItX3.Control.1")
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AutoItX3.Control.1\CLSID")
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AutoItX3.Control")
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AutoItX3.Control\CLSID")
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AutoItX3.Control\CurVer")
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{1A671297-FA74-4422-80FA-6C5D8CE4DE04}")
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{1A671297-FA74-4422-80FA-6C5D8CE4DE04}\ProgID")
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{1A671297-FA74-4422-80FA-6C5D8CE4DE04}\VersionIndependentProgID")
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{1A671297-FA74-4422-80FA-6C5D8CE4DE04}\InprocServer32")
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{1A671297-FA74-4422-80FA-6C5D8CE4DE04}\TypeLib")
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Classes\TypeLib\{F8937E53-D444-4E71-9275-35B64210CC3B}\1.0")
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Classes\TypeLib\{F8937E53-D444-4E71-9275-35B64210CC3B}\1.0\FLAGS")
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Classes\TypeLib\{F8937E53-D444-4E71-9275-35B64210CC3B}\1.0\0\win32")
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Classes\TypeLib\{F8937E53-D444-4E71-9275-35B64210CC3B}\1.0\HELPDIR")
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{3D54C6B8-D283-40E0-8FAB-C97F05947EE8}")
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{3D54C6B8-D283-40E0-8FAB-C97F05947EE8}\ProxyStubClsid")
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{3D54C6B8-D283-40E0-8FAB-C97F05947EE8}\ProxyStubClsid32")
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{3D54C6B8-D283-40E0-8FAB-C97F05947EE8}\TypeLib")
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{3D54C6B8-D283-40E0-8FAB-C97F05947EE8}\InProcServer32")
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{3D54C6B8-D283-40E0-8FAB-C97F05947EE8}")
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{3D54C6B8-D283-40E0-8FAB-C97F05947EE8}\NumMethods")
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\AutoItv3")
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\SciTE.exe")
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AutoIt3Script\Shell\Tidy\Command")
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AutoIt3Script\Shell\Compile with Options\Command")
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\SciTE4AutoIt3")
RegDelete("HKEY_CLASSES_ROOT\AutoIt3Script")
RegDelete("HKEY_CLASSES_ROOT\AutoIt3Script\DefaultIcon")
RegDelete("HKEY_CLASSES_ROOT\AutoIt3Script\Shell")
RegDelete("HKEY_CLASSES_ROOT\AutoIt3Script\Shell\Compile")
RegDelete("HKEY_CLASSES_ROOT\AutoIt3Script\Shell\Compile\Command")
RegDelete("HKEY_CLASSES_ROOT\AutoIt3Script\Shell\Compile with Options\Command")
RegDelete("HKEY_CLASSES_ROOT\AutoIt3Script\Shell\Edit")
RegDelete("HKEY_CLASSES_ROOT\AutoIt3Script\Shell\Edit\Command")
RegDelete("HKEY_CLASSES_ROOT\AutoIt3Script\Shell\Open")
RegDelete("HKEY_CLASSES_ROOT\AutoIt3Script\Shell\Open\Command")
RegDelete("HKEY_CLASSES_ROOT\AutoIt3Script\Shell\Run")
RegDelete("HKEY_CLASSES_ROOT\AutoIt3Script\Shell\Run\Command")
RegDelete("HKEY_CLASSES_ROOT\AutoIt3Script\Shell\Tidy\Command")
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\AutoIt v3")
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Management\ARPCache\AutoItv3")
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Management\ARPCache\SciTE4AutoIt3")
RegDelete("HKEY_CLASSES_ROOT\Applications\SciTE.exe")
$Unistall1 = Run(@ComSpec & " /c " & "regedit -s Data\Reg's\AutoIt3-U.reg", "", @SW_HIDE)
ProcessWaitClose($Unistall1)
$Unistall1 = Run(@ComSpec & " /c " & "regedit -s Data\Reg's\SciTE-U.reg", "", @SW_HIDE)
ProcessWaitClose($Unistall1)
DirCreate(@ScriptDir & '\Data\profile')
FileMove(@UserProfileDir & '\SciTE.recent', @ScriptDir & '\Data\profile\', 1)
FileMove(@UserProfileDir & '\SciTE.session', @ScriptDir & '\Data\profile\', 1)
ControlSend("Program Manager","","SysListView321","{f5}")
ExitLoop
EndSelect
WEnd
;Finalizacion de configuracion de Portable
Que lo Disfruten y espero sus comentarios y sugerencias!!!