CODICE
#include <ButtonConstants.au3>
#include <ComboConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <Process.au3>
#include <File.au3>
#include <Date.au3>
If Not FileExists(@ScriptDir & "\FP.ini") Then
_FileCreate(@ScriptDir & "\FP.ini")
IniWrite(@ScriptDir & "\FP.ini" , "Sett" , "key" , "1")
IniWrite(@ScriptDir & "\FP.ini" , "Sett" , "Log" , "1")
EndIf
$fpdir = @ScriptDir & "\FP.ini"
$Form1 = GUICreate("FilePerformer", 376, 165, 299, 120)
$MenuItem1 = GUICtrlCreateMenu("Opzioni")
$MenuItem2 = GUICtrlCreateMenuItem("Impostazioni...", $MenuItem1)
$MenuItem3 = GUICtrlCreateMenuItem("TOS", $MenuItem1)
$Group1 = GUICtrlCreateGroup("FPerformer", 45, 5, 281, 116)
$Combo1 = GUICtrlCreateCombo("", 80, 20, 216, 25)
$Button1 = GUICtrlCreateButton("Esegui File", 125, 50, 121, 31, $WS_GROUP)
$Button2 = GUICtrlCreateButton("Aggiungi File", 60, 85, 121, 31, $WS_GROUP)
$Button3 = GUICtrlCreateButton("Cancella File", 190, 85, 121, 31, $WS_GROUP)
$Label1 = GUICtrlCreateLabel("Copyright: LSoft. Under CC TOS", 0, 130, 156, 17)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$irs = IniReadSection($fpdir , "Exec")
If IsArray($irs) Then
$data = "Esegui File..."
For $i = 1 To $irs[0][0]
$data &= "|" & $irs[$i][0]
Next
GUICtrlSetData($Combo1 , $data , "Esegui File...")
EndIf
GUISetState(@SW_SHOW)
HotKeySet("!e" , "_ExecProcByHotKey")
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $MenuItem3
_RunDOS("start http://creativecommons.org/licenses/by-nc-nd/2.5/it/")
Case $MenuItem2
$sett = _Settings()
_LogWrite("Impostazioni Modificate : " & $sett)
Case $Button2
$file = FileOpenDialog("Seleziona File",@WorkingDir,"All(*.*)")
If $file <> "" Then
$split = StringSplit($file , "\")
IniWrite($fpdir , "Exec" , $split[$split[0]],$file)
_RefreshCombo()
_LogWrite("File Added : " & $split[$split[0]])
EndIf
Case $Button1
$read = GUICtrlRead($Combo1)
If $read <> "Esegui File..." Then
If IniRead($fpdir , "Exec" , $read , "") <> "" Then
ShellExecute(IniRead($fpdir , "Exec" , $read , ""))
_LogWrite("Ececuted : " & $read)
Else
ShellExecute($read)
_LogWrite("Ececuted : " & $read)
EndIf
EndIf
Case $Button3
$read = GUICtrlRead($Combo1)
IniDelete($fpdir , "Exec" , $read)
_RefreshCombo()
_LogWrite("Deletted : " & $read)
EndSwitch
WEnd
Func _ExecProcByHotKey()
If IniRead($fpdir , "Sett" , "Key" , "0") <> "0" Then
$read = GUICtrlRead($Combo1)
If $read <> "Esegui File..." Then
If IniRead($fpdir , "Exec" , $read , "") <> "" Then
ShellExecute(IniRead($fpdir , "Exec" , $read , ""))
_LogWrite("Ececuted : " & $read)
Else
ShellExecute($read)
_LogWrite("Ececuted : " & $read)
EndIf
EndIf
EndIf
EndFunc
Func _RefreshCombo()
GUICtrlDelete($Combo1)
$Combo1 = GUICtrlCreateCombo("", 80, 20, 216, 25)
$irs = IniReadSection($fpdir , "Exec")
If IsArray($irs) Then
$data = "Esegui File..."
For $i = 1 To $irs[0][0]
$data &= "|" & $irs[$i][0]
Next
GUICtrlSetData($Combo1 , $data , $irs[1][0])
EndIf
EndFunc
Func _Settings()
$Form2= GUICreate("Settings", 282, 257, 395, 126, -1, $WS_EX_MDICHILD, $Form1)
GUISetState(@SW_DISABLE , $Form1)
GUISwitch($Form2)
$Group2 = GUICtrlCreateGroup("Impostazioni", 5, 0, 271, 226)
$Checkbox1 = GUICtrlCreateCheckbox("Usa Alt+E per eseguire il processo selezionato", 20, 25, 236, 16)
$Checkbox2 = GUICtrlCreateCheckbox("Registra in un file log le azioni compiute", 20, 50, 216, 21)
$Avi1 = GUICtrlCreateAvi(@ScriptDir & "\Etc\load.avi", -1, 10, 200, 26, 21)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Button3 = GUICtrlCreateButton("OK", 100, 230, 76, 21, $WS_GROUP)
$Button4 = GUICtrlCreateButton("Annulla", 190, 230, 76, 21, $WS_GROUP)
GUISetState(@SW_SHOW , $Form2)
GUICtrlSetState($Avi1 , 1)
If IniRead($fpdir , "Sett" , "key" , "0") = 1 Then
GUICtrlSetState($Checkbox1 , 1)
EndIf
If IniRead($fpdir , "Sett" , "Log" , "0") = 1 Then
GUICtrlSetState($Checkbox2,1)
EndIf
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
GUISetState(@SW_ENABLE , $Form1)
GUISwitch($Form1)
GUIDelete($Form2)
GUICtrlSetState($Avi1 , 0)
Return 0
Case $Button3
$ch1 = GUICtrlRead($Checkbox1)
$ch2 = GUICtrlRead($Checkbox2)
$ret = ""
If $ch1 = 1 Then
IniWrite($fpdir , "Sett" , "Key" , "1")
$ret &= 1
Else
IniWrite($fpdir , "Sett" , "Key" , "0")
$ret &= 0
EndIf
If $ch2 = 1 Then
IniWrite($fpdir , "Sett" , "Log" , "1")
$ret &= 1
Else
IniWrite($fpdir , "Sett" , "Log" , "0")
$ret &= 0
EndIf
GUISetState(@SW_ENABLE , $Form1)
GUISwitch($Form1)
GUIDelete($Form2)
GUICtrlSetState($Avi1 , 0)
Return $ret
Case $Button4
GUISetState(@SW_ENABLE , $Form1)
GUISwitch($Form1)
GUIDelete($Form2)
GUICtrlSetState($Avi1 , 0)
Return 0
EndSwitch
WEnd
EndFunc
Func _LogWrite($snt)
If IniRead($fpdir , "Sett" , "Log" , "0") = 0 Then
Return 0
EndIf
FileWrite(@ScriptDir & "\Etc\Fp.log" , _NowTime() & " > " & $snt & @CRLF)
EndFunc