Code : Tout sélectionner
#Region ;**** Directives created by AutoIt3Wrapper_GUI ****
#AutoIt3Wrapper_Icon=#SOURCE\# RESSOURCES\ICONES\appicon.ico
#AutoIt3Wrapper_Outfile=C:\Users\C3D\Desktop\DEPANN49 SERVEUR.exe
#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
#include <Constants.au3>
#include <GUIConstants.au3>
#include <GDIPlus.au3>
#include <WinAPI.au3>
#include <WindowsConstants.au3>
#include <ButtonConstants.au3>
#include <StaticConstants.au3>
#include <ProgressConstants.au3>
#include <AVIConstants.au3>
Dim $ConfigFile ;Configuration File
Dim $ImageFile ;Image to be shown. Must be BMP,GIF or JPG
Dim $ImageWidth ;Width of the image to display in pixels
Dim $ImageHeight ;Height of image in pixels
Dim $ShowTime ;Length of time to display image in seconds
Dim $ShowTitle ;Determine whether or not to display the title
Dim $ShowTitleSetting ;Setting for ShowTitle
; Variables du script
$AppVersion = "0.2"
; Configuration
$DPStart = ShellExecute("serveurdp\GDP49_start.vbs")
$ZMWSCmdLineStart = "-browse -stop -closebrowser -p "
$ZMWSCmdLineStop = ShellExecute("serveurdp\GDP49_stop.vbs")
; Variables globales
Opt("TrayMenuMode", 1) ; Don't show the default tray context menu
; Recherche une sous-chaine dans le titre des fenêtre
Opt("WinTitleMatchMode", 2)
Global Const $MIM_APPLYTOSUBMENUS = 0x80000000
Global Const $MIM_BACKGROUND = 0x00000002
;TraySetIcon("shell32.dll", 21)
TraySetToolTip("Depann49 Serveur")
TrayTip("Depann49 Serveur", "Lancement du serveur dans 6 secondes...", 5, 1)
$mnuZMWSStart = TrayCreateItem("Démarrer")
TrayItemSetState($mnuZMWSStart, $TRAY_DISABLE)
$mnuZMWSStop = TrayCreateItem("Arrêter")
TrayCreateItem("")
$Appli = TrayCreateMenu("Application")
$AppliDirect = TrayCreateItem("Application Direct", $Appli)
$Gmap = TrayCreateItem("GoogleMap", $Appli)
TrayCreateItem("")
$Appli2 = TrayCreateMenu("Application Via")
$AppliOrca = TrayCreateItem("Application Via Orca", $Appli2)
$AppliSafari = TrayCreateItem("Application Via Safari", $Appli2)
$AppliChrome = TrayCreateItem("Application Via Chrome", $Appli2)
TrayCreateItem("")
$archives = TrayCreateMenu("Repertoire Archives PDF")
$archives1 = TrayCreateItem("Factures", $archives)
$archives2 = TrayCreateItem("Fiches d'intervention", $archives)
$archives3 = TrayCreateItem("Fiche d'enlevements", $archives)
$archives4 = TrayCreateItem("Repertoire Sauvegarde MySQL")
TrayCreateItem("")
$Admin = TrayCreateMenu("Administration")
$PHPMyAdmin = TrayCreateItem("PHPMyAdmin", $Admin)
$PANELADMIN = TrayCreateItem("Panel Admin", $Admin)
$sauvsql = TrayCreateItem("Sauvegarde MySQL", $Admin)
$archives5 = TrayCreateItem("Répertoire WWW", $Admin)
TrayCreateItem("")
$mnuAbout = TrayCreateItem("A propos")
$mnuQuit = TrayCreateItem("Quitter")
TrayItemSetState($mnuQuit, $TRAY_ENABLE)
;--------------------------------------------------------------------------------
; SplashScreen Progress Bar DEBUT
;--------------------------------------------------------------------------------
Opt("GUIOnEventMode", 1)
Opt("GUICloseOnESC", 0)
$cfgSplash = "1"
If $cfgSplash = "1" Then
_GDIPlus_Startup()
Const $AC_SRC_ALPHA = 1
$splashGUI = GUICreate("Splash", 500, 160, -1, -1, $WS_POPUP, $WS_EX_LAYERED + $WS_EX_TOPMOST + $WS_EX_TOOLWINDOW)
GUISetState()
$tmp = WinGetPos($splashGUI)
$splashBar = GUICreate("SplashBar", 300, 18, $tmp[0] + 120, $tmp[1] + 170, $WS_POPUP, $WS_EX_TOPMOST + $WS_EX_TOOLWINDOW)
GUISetState()
$splashBarctrl = GUICtrlCreateProgress(0, 0, 300, 18, $PBS_SMOOTH)
GUICtrlSetData($splashBarctrl, 13)
$splashTXT = GUICreate("SplashText", 300, 18, $tmp[0] + 120, $tmp[1] + 190, $WS_POPUP, $WS_EX_LAYERED + $WS_EX_TOPMOST + $WS_EX_TOOLWINDOW)
GUISetState()
$splashTXTctrl = GUICtrlCreatePic("serveurdp\images\txt01.bmp", 0, 0, 300, 18)
GUISwitch($splashGUI)
Global $splashImage = _GDIPlus_ImageLoadFromFile("serveurdp\images\logo.png")
For $i = 0 To 255 Step 5
drawPNG($i)
Next
GUISwitch($splashTXT)
Sleep(500)
GUICtrlSetData($splashBarctrl, 37)
GUICtrlSetImage($splashTXTctrl, "serveurdp\images\txt02.bmp")
EndIf
If $cfgSplash = "0" Then Sleep(200)
$etcPage = "_welcome"
$cfgRefresh = "50"
Sleep(600)
GUICtrlSetData($splashBarctrl, 75)
GUICtrlSetImage($splashTXTctrl, "serveurdp\images\txt03.bmp")
Sleep(600)
If $cfgSplash = "1" Then
GUICtrlSetImage($splashTXTctrl, "serveurdp\images\txt04.bmp")
EndIf
Sleep(200)
If $cfgSplash = "1" Then
GUICtrlSetData($splashBarctrl, 100)
GUISwitch($splashGUI)
For $i = 255 To 0 Step -5
drawPNG($i)
Next
GUIDelete($splashBar)
GUIDelete($splashGUI)
GUIDelete($splashTXT)
_GDIPlus_Shutdown()
EndIf
Sleep(200)
Func drawPNG($i)
Local $hScrDC, $hMemDC, $hBitmap, $hOld, $pSize, $tSize, $pSource, $tSource, $pBlend, $tBlend
$hScrDC = _WinAPI_GetDC(0)
$hMemDC = _WinAPI_CreateCompatibleDC($hScrDC)
$hBitmap = _GDIPlus_BitmapCreateHBITMAPFromBitmap($splashImage)
$hOld = _WinAPI_SelectObject($hMemDC, $hBitmap)
$tSize = DllStructCreate($tagSIZE)
$pSize = DllStructGetPtr($tSize)
DllStructSetData($tSize, "X", _GDIPlus_ImageGetWidth($splashImage))
DllStructSetData($tSize, "Y", _GDIPlus_ImageGetHeight($splashImage))
$tSource = DllStructCreate($tagPOINT)
$pSource = DllStructGetPtr($tSource)
$tBlend = DllStructCreate($tagBLENDFUNCTION)
$pBlend = DllStructGetPtr($tBlend)
DllStructSetData($tBlend, "Alpha", $i)
DllStructSetData($tBlend, "Format", $AC_SRC_ALPHA)
_WinAPI_UpdateLayeredWindow($splashGUI, $hScrDC, 0, $pSize, $hMemDC, $pSource, 0, $pBlend, $ULW_ALPHA)
_WinAPI_ReleaseDC(0, $hScrDC)
_WinAPI_SelectObject($hMemDC, $hOld)
_WinAPI_DeleteObject($hBitmap)
_WinAPI_DeleteDC($hMemDC)
Sleep(5)
GUISetState()
EndFunc ;==>drawPNG
;--------------------------------------------------------------------------------
; SplashScreen Progress Bar FIN
;--------------------------------------------------------------------------------
;--------------------------------------------------------------------------------
; NAVIGATEUR DEBUT
;--------------------------------------------------------------------------------
Global $oIE
Global $Term
$oIE = ObjCreate("Shell.Explorer.2")
$Asari = GUICreate("ADMINISTRATION DEPANN49", 1024, 768, -1, -1)
$Definition = GUICtrlCreateObj($oIE, 1, 1, 1024, 768)
GUISetState(@SW_SHOW)
$oIE.navigate("http://127.0.0.1:9080/")
#EndRegion ### END Koda GUI section ###
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
EndSwitch
WEnd
;--------------------------------------------------------------------------------
; NAVIGATEUR FIN
;--------------------------------------------------------------------------------
SetMenuColor(0, 0xEEBB99) ; BGR color value, '0' means the tray context menu handle itself
While 1
$Msg = TrayGetMsg()
Switch $Msg
Case $mnuZMWSStart
TrayItemSetState($mnuZMWSStart, $TRAY_CHECKED + $TRAY_DISABLE)
TrayItemSetState($mnuZMWSStop, $TRAY_ENABLE + $TRAY_DEFAULT)
ZMWSStart()
Case $mnuZMWSStop
TrayItemSetState($mnuZMWSStart, $TRAY_UNCHECKED + $TRAY_ENABLE + $TRAY_DEFAULT)
TrayItemSetState($mnuZMWSStop, $TRAY_DISABLE)
ZMWSStop()
Case $AppliDirect
ShellExecute("http://127.0.0.1:9080/")
Case $Gmap
ShellExecute("http://depann49.free.fr/googlemap2.html")
Case $AppliOrca
ShellExecute("serveurdp\udrive\_navigateurs\Orca\Orca.exe")
Case $AppliSafari
ShellExecute("serveurdp\udrive\_navigateurs\SafariPortable.exe")
Case $AppliChrome
ShellExecute("serveurdp\udrive\_navigateurs\ChromePortable\IronPortable")
Case $PHPMyAdmin
ShellExecute("http://127.0.0.1:9080/apanel/phpMyAdmin")
Case $PANELADMIN
ShellExecute("http://127.0.0.1:9080/apanel/")
Case $sauvsql
ShellExecute("http://127.0.0.1:9080/pages/sauvegarde.php")
Case $archives5
ShellExecute("serveurdp\udrive\www\")
Case $archives1
ShellExecute("serveurdp\udrive\www\archives_pdf\Factures")
Case $archives2
ShellExecute("serveurdp\udrive\www\archives_pdf\Fiches_Intervention")
Case $archives3
ShellExecute("serveurdp\udrive\www\archives_pdf\Fiches_Enlevement/")
Case $archives3
ShellExecute("serveurdp\udrive\www\archives_pdf\Fiches_Enlevement/")
Case $archives4
ShellExecute("serveurdp\udrive\www\_sauvegardes_sql\")
Case $mnuAbout
MsgBox(64, "A propos...", "Depann49 Server Manager v1.0" & @CRLF & "Version AutoIt " & $AppVersion)
Case $mnuQuit
ZMWSStop()
ExitLoop
EndSwitch
; MAJ du menu selon le serveur
UpdateMenu()
WEnd
Exit
;--------------------------------------------------------------------------------
; ZMWSStop : Stop ZMWS
;--------------------------------------------------------------------------------
Func ZMWSStop()
ShellExecute("serveurdp\GDP49_stop2.vbs")
EndFunc ;==>ZMWSStop
Func ZMWSStop2()
RunWait("serveurdp\Eject.bat")
EndFunc ;==>ZMWSStop2
;--------------------------------------------------------------------------------
; ZMWSStart : Start ZMWS
;--------------------------------------------------------------------------------
Func ZMWSStart()
ShellExecute("serveurdp\GDP49_start.vbs")
EndFunc ;==>ZMWSStart
;--------------------------------------------------------------------------------
; UpdateMenu : MAJ du menu selon l'état du serveur
;--------------------------------------------------------------------------------
Func UpdateMenu()
; MAJ des menus de la console
; Récupère l'état de la fenêtre de la console
$state = WinGetState($DPStart, "")
; Test si fenêtre visible
If BitAND($state, 2) Then ; 2 = Visible
EndIf
EndFunc ;==>UpdateMenu
; Apply the color to the menu
Func SetMenuColor($nMenuID, $nColor)
; Minimum OS are Windows98 and 2000
If @OSVersion = "WIN_95" Or @OSVersion = "WIN_NT4" Then Return
$hMenu = TrayItemGetHandle($nMenuID) ; Get the internal menu handle
$hBrush = DllCall("gdi32.dll", "hwnd", "CreateSolidBrush", "int", $nColor)
$hBrush = $hBrush[0]
Local $stMenuInfo = DllStructCreate("dword;dword;dword;uint;dword;dword;ptr")
DllStructSetData($stMenuInfo, 1, DllStructGetSize($stMenuInfo))
DllStructSetData($stMenuInfo, 2, BitOR($MIM_APPLYTOSUBMENUS, $MIM_BACKGROUND))
DllStructSetData($stMenuInfo, 5, $hBrush)
DllCall("user32.dll", "int", "SetMenuInfo", "hwnd", $hMenu, "ptr", DllStructGetPtr($stMenuInfo))
EndFunc ;==>SetMenuColor