FilePerformer 1.0 BETA

« Older   Newer »
  Share  
Lahace
CAT_IMG Posted on 10/3/2010, 17:04     +1   -1




Ecco FilePerformer 1.0 BETA

questo programma permette di avviare alcuni file semplicemente con un click! basta aggiungerli ad una lista e premere un bottone per far si che si avvii come la shell comanda

nelle prossime versioni:
-scorrimento file con TrayTip
e... altre idee verranno xD

è una beta quindi probabilmente ha qualche bug... vi chiedo quindi 2 cose:
1- aiutarmi a vedere per quei bug (se ci sono xD)
2- aiutatemi a migliorare il programma (possibilmente trovate una sostituzione al combo box xD)

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>

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


in allegato un file avi

Edited by Lahace - 15/3/2010, 19:50

Download attachment
Load.avi ( Number of downloads: 6 )

 
Top
-Anubi-
CAT_IMG Posted on 10/3/2010, 17:12     +1   -1




Bello, ma perchè _RunDOS("start http://creativecommons.org/licenses/by-nc-nd/2.5/it/")

e non shell execute ?
 
Top
Lahace
CAT_IMG Posted on 10/3/2010, 17:17     +1   -1




mmm fa più stile rundos xD
 
Top
-Anubi-
CAT_IMG Posted on 10/3/2010, 17:18     +1   -1




xD
 
Top
3 replies since 10/3/2010, 17:04   51 views
  Share