File performer 1.1 beta

« Older   Newer »
  Share  
Lahace
CAT_IMG Posted on 29/6/2010, 11:10     +1   -1




ecco la versione aggiornata di FilePerformer

per chi non lo sapesse questo programa permette di eseguire qualsiasi file (nella maniera impostata dalla shell).

aggiunto :
possibilitą di cambiare file nella lista premendo ALT+UP o ALT+DOWN

source:

SPOILER (click to view)
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>
#include <Constants.au3>
#include <GuiComboBoxEx.au3>
#include <GuiImageList.au3>
#include <Array.au3>
Opt("TrayMenuMode", 1)
$dat = ""
$Debug_CB = False
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, 100)
$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)
$exit = TrayCreateItem("Esci")
Global $irs = IniReadSection($fpdir, "Exec")

If IsArray($irs) Then
       $datTot = $irs[0][0]
       For $i = 1 To $irs[0][0]
               Assign("data" & $i , $irs[$i][0])
               $dat &= "|" & $irs[$i][0]
       Next
       GUICtrlSetData($Combo1, $dat)
EndIf

GUISetState(@SW_SHOW)
HotKeySet("!e", "_ExecProcByHotKey")
HotKeySet("!{UP}", "_Trayup")
HotKeySet("!{DOWN}", "_Traydown")

While 1
       $nMsg = GUIGetMsg()
       Switch TrayGetMsg()
               Case $exit
                       Exit
               Case $TRAY_EVENT_PRIMARYDOUBLE
                       GUISetState()
       EndSwitch
       Switch $nMsg
               Case $GUI_EVENT_CLOSE
                       Exit
               Case -4
                       GUISetState(@SW_HIDE)
               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("Executed : " & $read)
                               Else
                                       ShellExecute($read)
                                       _LogWrite("Executed : " & $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("Executed : " & $read)
                       Else
                               ShellExecute($read)
                               _LogWrite("Executed : " & $read)
                       EndIf
               EndIf
       EndIf
EndFunc   ;==>_ExecProcByHotKey

Func _Trayup()
       $search = _ArraySearch($irs, GUICtrlRead($Combo1))
       If ($search - 1) <= 0 Then
               $search = $irs[0][0] + 1
       EndIf
       GUICtrlSetData($Combo1, $irs[$search - 1][0])
       TrayTip("File Impostato: ", $irs[$search - 1][0], 5)
EndFunc   ;==>_Trayup

Func _Traydown()
       $search = _ArraySearch($irs, GUICtrlRead($Combo1))
       If $search = $irs[0][0] Then
               $search = 0
       EndIf
       GUICtrlSetData($Combo1, $irs[$search + 1][0])
       TrayTip("File Impostato: ", $irs[$search + 1][0], 5)
EndFunc   ;==>_Traydown


Func _RefreshCombo()
       GUICtrlDelete($Combo1)
       $Combo1 = GUICtrlCreateCombo("", 80, 20, 216, 25)
       $irs = IniReadSection($fpdir , "Exec")
       $dat = ""
       If IsArray($irs) Then
               $datTot = $irs[0][0]
               For $i = 1 To $irs[0][0]
                       Assign("data" & $i , $irs[$i][0])
                       $dat &= "|" & $irs[$i][0]
               Next
               GUICtrlSetData($Combo1, $dat)
       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   ;==>_Settings

Func _LogWrite($snt)
       If IniRead($fpdir, "Sett", "Log", "0") = 0 Then
               Return 0
       EndIf
       FileWrite(@ScriptDir & "\Etc\Fp.log", _NowTime() & " > " & $snt & @CRLF)
EndFunc   ;==>_LogWrite

Func _GetIcon($file, $ReturnType = 0)
       $FileType = StringSplit($file, ".")
       $FileType = $FileType[UBound($FileType) - 1]
       $FileParam = RegRead("HKEY_CLASSES_ROOT\." & $FileType, "")
       $DefaultIcon = RegRead("HKEY_CLASSES_ROOT\" & $FileParam & "\DefaultIcon", "")

       If Not @error Then
               $IconSplit = StringSplit($DefaultIcon, ",")
               ReDim $IconSplit[3]
               $Iconfile = $IconSplit[1]
               $IconID = $IconSplit[2]
       Else
               $Iconfile = @SystemDir & "\shell32.dll"
               $IconID = -219
       EndIf

       If $ReturnType = 0 Then
               Return $Iconfile
       Else
               Return $IconID
       EndIf
EndFunc   ;==>_GetIcon


link MF : www.mediafire.com/?jt5hnlk2myt
link MU : www.megaupload.com/?d=GDXQKH0Z
 
Top
0 replies since 29/6/2010, 11:10   75 views
  Share