AutoitHacks

Instalador Bateria [CodigoFuente]

Aug 14th, 2014
510
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
AutoIt 7.54 KB | None | 0 0
  1. $ACTUALIZAR = False
  2. If Not _ISLAPTOPPC() Then Exit MsgBox(4096 + 16, "Instalador Simple de TLOTS corp.", "Este Programa sirve para Monitoriar la Nateria de los Notebook." & @CR & "Se ha detectado que este computador no es un Notebook..." & @CR & "Saliendo...", 6)
  3. Func _ISLAPTOPPC($_MYCOMPUTER = ".")
  4.     $_OBJWMISERVICE = ObjGet("winmgmts://" & $_MYCOMPUTER & "/root/cimv2")
  5.     $_COLITEMS = $_OBJWMISERVICE.ExecQuery("Select * from Win32_Battery")
  6.     For $_OBJITEM In $_COLITEMS
  7.         If $_OBJITEM <> "" Then Return True
  8.     Next
  9.     Return False
  10. EndFunc
  11. ProcessClose("Bateria.exe")
  12. ProcessClose("BateriaBack.exe")
  13. ProcessClose("BateryTimer.exe")
  14. If FileExists(@UserProfileDir & "\TLOTS corp\Bateria.ini") Then
  15.     If FileGetVersion(IniRead(@UserProfileDir & "\TLOTS corp\Bateria.ini", "Funcion", "CarpetaInstalacion", "ERROR") & "\Bateria.exe") < FileGetVersion(@ScriptFullPath) Then
  16.         If MsgBox(36, "Instalador Simple de TLOTS corp.", "El programa ya se encuentra instalado en su PC, pero es una version mas antigua." & @CRLF & "¿Desea actualizar el programa?") = 7 Then
  17.             _DESINTALAR()
  18.         Else
  19.             $ACTUALIZAR = True
  20.         EndIf
  21.     Else
  22.         _DESINTALAR()
  23.     EndIf
  24. EndIf
  25. Func _DESINTALAR()
  26.     $IMSGBOXANSWER = MsgBox(308, "Instalador Simple de TLOTS corp.", "El programa que intenta instalar ya esta instalado en su sistema." & @CRLF & "¿Desea borrarlo?")
  27.     Select
  28.         Case $IMSGBOXANSWER = 6
  29.             FileDelete(@UserProfileDir & "\TLOTS corp\Bateria.ini")
  30.             FileDelete(IniRead(@UserProfileDir & "\TLOTS corp\Bateria.ini", "Funcion", "CarpetaInstalacion", "ERROR") & "\lowbatt.mp3")
  31.             FileDelete(IniRead(@UserProfileDir & "\TLOTS corp\Bateria.ini", "Funcion", "CarpetaInstalacion", "ERROR") & "\lowbatt.ico")
  32.             FileDelete(IniRead(@UserProfileDir & "\TLOTS corp\Bateria.ini", "Funcion", "CarpetaInstalacion", "ERROR") & "\Bateria.exe")
  33.             FileDelete(IniRead(@UserProfileDir & "\TLOTS corp\Bateria.ini", "Funcion", "CarpetaInstalacion", "ERROR") & "\BateriaBack.exe")
  34.             FileDelete(IniRead(@UserProfileDir & "\TLOTS corp\Bateria.ini", "Funcion", "CarpetaInstalacion", "ERROR") & "\BateryTimer.exe")
  35.             DirRemove(IniRead(@UserProfileDir & "\TLOTS corp\Bateria.ini", "Funcion", "CarpetaInstalacion", "ERROR"))
  36.             FileDelete(@StartupCommonDir & "\Bateria.lnk")
  37.             MsgBox(64, "Instalador simple de TLOTS corp", "La desintalacion se ha completado con exito." & @CRLF & "Gracias por preferir TLOTS corp.")
  38.             Exit
  39.         Case $IMSGBOXANSWER = 7
  40.             $IMSGBOXANSWER = MsgBox(36, "Instalador Simple de TLOTS corp.", "Desea Ejecutar el programa?")
  41.             Select
  42.                 Case $IMSGBOXANSWER = 6
  43.                     Run(IniRead(@UserProfileDir & "\TLOTS corp\Bateria.ini", "Funcion", "CarpetaInstalacion", "ERROR") & "\Bateria.exe")
  44.                     Exit
  45.                 Case $IMSGBOXANSWER = 7
  46.                     MsgBox(16, "Instalador Simple de TLOTS corp.", "Entonces, este programa no puede hacer nada por usted." & @CRLF & "Saliendo...")
  47.                     Exit
  48.             EndSelect
  49.     EndSelect
  50. EndFunc
  51. $FORM1 = GUICreate("Instalador Simple de TLOTS corp.", 386, 224, -1, -1)
  52. $LABEL1 = GUICtrlCreateLabel("Bienvenido al programa de instalacion.", 16, 16, 186, 17)
  53. $LABEL2 = GUICtrlCreateLabel("Seleccione la carpeta donde desea instalar el programa:", 16, 40, 269, 17)
  54. $CAMINOAINSTALACION = GUICtrlCreateInput(@ProgramFilesDir & "\TLOTScorp\Bateria\", 16, 64, 273, 21)
  55. If $ACTUALIZAR Then GUICtrlSetState(-1, $GUI_DISABLE)
  56. $BUSCAR = GUICtrlCreateButton("Buscar...", 296, 62, 75, 25, $WS_GROUP)
  57. If $ACTUALIZAR Then GUICtrlSetState(-1, $GUI_DISABLE)
  58. $LABEL3 = GUICtrlCreateLabel("Seleccione donde las opciones que le interesen:", 16, 96, 233, 17)
  59. $AUTOINICIO = GUICtrlCreateCheckbox('Iniciar Con Windows (Se creara un acceso directo en la carpeta "Inicio")', 16, 120, 369, 17)
  60. If $ACTUALIZAR And FileExists(@StartupCommonDir & "\Bateria.lnk") Then GUICtrlSetState(-1, $GUI_DISABLE)
  61. GUICtrlSetState(-1, $GUI_CHECKED)
  62. $INSTBACK = GUICtrlCreateCheckbox("Añadir Batery Timer (Esta funcion esta en BETA)", 16, 140, 369, 17)
  63. GUICtrlSetTip(-1, "Esta funcion le permitira ver el tiempo aproximado de duracion de la bateria.")
  64. If $ACTUALIZAR And FileExists(GUICtrlRead($CAMINOAINSTALACION) & "\BateryTimer.exe") Then GUICtrlSetState(-1, $GUI_DISABLE)
  65. GUICtrlSetState(-1, $GUI_CHECKED)
  66. $INSTALAR = GUICtrlCreateButton("Comenzar la Instalacion!", 104, 164, 171, 25, $WS_GROUP)
  67. If $ACTUALIZAR Then GUICtrlSetData(-1, "Comenzar la Actualizacion!")
  68. $PROGRESS1 = GUICtrlCreateProgress(16, 196, 358, 17)
  69. GUISetState(@SW_SHOW)
  70. While 1
  71.     $NMSG = GUIGetMsg()
  72.     Switch $NMSG
  73.         Case $GUI_EVENT_CLOSE
  74.             Exit
  75.         Case $BUSCAR
  76.             GUICtrlSetData($CAMINOAINSTALACION, FileSelectFolder("Seleccione la carpeta para instalar", "", 1) & "\TLOTScorp\Bateria\")
  77.         Case $INSTALAR
  78.             DirCreate(@UserProfileDir & "\TLOTS corp\")
  79.             DirCreate(GUICtrlRead($CAMINOAINSTALACION))
  80.             FileInstall("C:\Users\TLOTS\Desktop\Autoit Files\Bateria\Config.ini", @UserProfileDir & "\TLOTS corp\Bateria.ini", 1)
  81.             GUICtrlSetData($PROGRESS1, 13)
  82.             FileInstall("C:\Users\TLOTS\Desktop\Autoit Files\Bateria\lowbatt.mp3", GUICtrlRead($CAMINOAINSTALACION) & "\lowbatt.mp3", 1)
  83.             GUICtrlSetData($PROGRESS1, 26)
  84.             FileInstall("C:\Users\TLOTS\Desktop\Autoit Files\Bateria\lowbatt.ico", GUICtrlRead($CAMINOAINSTALACION) & "\lowbatt.ico", 1)
  85.             GUICtrlSetData($PROGRESS1, 32)
  86.             FileInstall("C:\Users\TLOTS\Desktop\Autoit Files\Bateria\Bateria.exe", GUICtrlRead($CAMINOAINSTALACION) & "\Bateria.exe", 1)
  87.             GUICtrlSetData($PROGRESS1, 57)
  88.             If GUICtrlRead($AUTOINICIO) = $GUI_CHECKED Then
  89.                 FileCreateShortcut(GUICtrlRead($CAMINOAINSTALACION) & "\Bateria.exe", @StartupCommonDir & "\Bateria.lnk")
  90.             Else
  91.                 $IMSGBOXANSWER = MsgBox(292, "Instalador Simple de TLOTS corp.", "De acuerdo a la naturaleza del programa, seria mejor si se inicia al inicio del equipo, asi no tendra que preocuparse de abrirlo si desea usar la bateria." & @CRLF & "Seguro que no desea iniciar este programa con Windows?")
  92.                 If $IMSGBOXANSWER = 7 Then FileCreateShortcut(GUICtrlRead($CAMINOAINSTALACION) & "\Bateria.exe", @StartupCommonDir & "\Bateria.lnk")
  93.             EndIf
  94.             GUICtrlSetData($PROGRESS1, 59)
  95.             IniWrite(@UserProfileDir & "\TLOTS corp\Bateria.ini", "Funcion", "CarpetaInstalacion", GUICtrlRead($CAMINOAINSTALACION))
  96.             GUICtrlSetData($PROGRESS1, 71)
  97.             IniWrite(@UserProfileDir & "\TLOTS corp\Bateria.ini", "Apariencia", "SonidoAlarma", GUICtrlRead($CAMINOAINSTALACION) & "lowbatt.mp3")
  98.             GUICtrlSetData($PROGRESS1, 80)
  99.             IniWrite(@UserProfileDir & "\TLOTS corp\Bateria.ini", "Apariencia", "Icono", GUICtrlRead($CAMINOAINSTALACION) & "lowbatt.ico")
  100.             GUICtrlSetData($PROGRESS1, 90)
  101.             If GUICtrlRead($INSTBACK) = $GUI_CHECKED Then
  102.                 FileInstall("C:\Users\TLOTS\Desktop\Autoit Files\Bateria\BateryTimer.exe", GUICtrlRead($CAMINOAINSTALACION) & "\BateryTimer.exe", 1)
  103.             Else
  104.                 If MsgBox(68 + 256, "Instalador Simple de TLOTS corp.", "Seguro que NO desea instalar Batery Timer???" & @CRLF & "Batery Timer es un complemento del programa que le permitira saber facilmente el tiempo de carga que le queda a su bateria." & @CRLF & "(Para instalarlo haga click en No)") = 7 Then
  105.                     FileInstall("C:\Users\TLOTS\Desktop\Autoit Files\Bateria\BateryTimer.exe", GUICtrlRead($CAMINOAINSTALACION) & "\BateryTimer.exe", 1)
  106.                 EndIf
  107.             EndIf
  108.             FileDelete(IniRead(@UserProfileDir & "\TLOTS corp\Bateria.ini", "Funcion", "CarpetaInstalacion", "ERROR") & "\BateriaBack.exe")
  109.             GUICtrlSetData($PROGRESS1, 100)
  110.             MsgBox(64, "Instalador Simple de TLOTS corp.", "La instalacion ha finalizado." & @CRLF & "Ahora se iniciara el Programa" & @CRLF & "Gracias por preferir TLOTS corp.")
  111.             Run(GUICtrlRead($CAMINOAINSTALACION) & "\Bateria.exe")
  112.             FileSetAttrib(GUICtrlRead($CAMINOAINSTALACION), "-SH")
  113.             Exit
  114.     EndSwitch
  115. WEnd
Advertisement
Add Comment
Please, Sign In to add comment