#include <WindowsConstants.au3>
#include <StaticConstants.au3>
#include <SendMessage.au3> ;Needed for _SendMessage function.
#include <ProgressConstants.au3>
#include <GUIConstantsEx.au3>
Global $hSplash
Func _SplashTextProgress($sText)
SplashOff() ;Turn previous splash text screens off.
$hSplash = GUICreate("", 500, 150, -1, -1, BitOR($WS_POPUP, $WS_BORDER), BitOR($WS_EX_TOPMOST, $WS_EX_WINDOWEDGE, $WS_EX_TOOLWINDOW))
$iProgressBar = GUICtrlCreateProgress(30, 100, 440, 35, $PBS_MARQUEE) ;A Marquee progress bar.
_SendMessage(GUICtrlGetHandle(-1), $PBM_SETMARQUEE, True, 80) ;last parameter is update time in ms. Sends message to run the Marquee progress bar.
$iMessage = GUICtrlCreateLabel($sText, 0, 20, 500, 50, $SS_CENTER)
GUICtrlSetFont(-1, 16, 500, 0, "Courier New")
GUISetState(@SW_SHOW)
Return SetExtended($iProgressBar, $hSplash)
EndFunc
$hProgressSplash = _SplashTextProgress("Внимание! Идет установка компонетов. Ждите...")
MsgBox(4096, "Отчет", "Установка DirectX", 5)
RunWait('"DirectX\Unzip\DXSETUP.exe" /silent')
MsgBox(4096, "Отчет", "DirectX установлен", 3)
Switch @OSVersion
Case "WIN_7"
Switch @OSArch
Case "X86"
MsgBox(4096, "Отчет", "Установка обновления времени для Windows 7 x32", 5)
RunWait('"Time\Windows6.1-KB2570791-x86.msu" /quiet')
Case "X64"
MsgBox(4096, "Отчет", "Установка обновления времени для Windows 7 x64", 5)
RunWait('"Time\Windows6.1-KB2570791-x64.msu" /quiet')
EndSwitch
Case "WIN_XP"
MsgBox(4096, "Отчет", "Установка обновления времени для ОС Windows 7 x64", 5)
RunWait('"Time\WindowsXP-KB2570791-x86-RUS.exe" /quiet')
EndSwitch
MsgBox(4096, "Отчет", "Обновление времени установлено", 3)
Switch @OSVersion
Case "WIN_7"
MsgBox(4096, "Отчет", "Установка фреймворка для Windows 7", 5)
RunWait('"Net. Framework\dotNetFx40_Full_x86_x64.exe" -c -aiq /quiet /norestart')
MsgBox(4096, "Отчет", "Фреймворк 4.0 установлен", 3)
RunWait('"Net. Framework\dotNetFx45_Full_x86_x64.exe" -c -aiq /quiet /norestart')
MsgBox(4096, "Отчет", "Фреймворк 4.5 установлен", 3)
RunWait('"Net. Framework\NDP451-KB2858728-x86-x64-AllOS-ENU.exe" -c -aiq /quiet /norestart')
MsgBox(4096, "Отчет", "Фреймворк 4.5.1 установлен", 3)
Case "WIN_XP"
MsgBox(4096, "Отчет", "Установка фреймворка для Windows XP", 5)
RunWait('"Net. Framework\dotnetfx35setup.exe" -c -aiq /quiet /norestart')
MsgBox(4096, "Отчет", "Фреймворк 3.5 установлен", 3)
RunWait('"Net. Framework\dotNetFx40_Full_x86_x64.exe" -c -aiq /quiet /norestart')
MsgBox(4096, "Отчет", "Фреймворк 4.0 установлен", 3)
EndSwitch
MsgBox(4096, "Отчет", "Установка фреймворков закончена", 3)
Switch @OSArch
Case "X86"
MsgBox(4096, "Отчет", "Установка пакета MS Vusal C++ для x32 ОС", 5)
RunWait('"Microsoft Visual C++\VCRHyb86.exe" -c /S')
MsgBox(4096, "Отчет", "Библиотеки C++ установлены", 3)
Case "X64"
MsgBox(4096, "Отчет", "Установка пакета MS Vusal C++ для x64 ОС", 5)
RunWait('"Microsoft Visual C++\VCRHyb64.exe" -c /S')
MsgBox(4096, "Отчет", "Библиотеки C++ установлены", 3)
EndSwitch
GUIDelete($hSplash)
GUICreate('Завершение установки', 420, 100)
GUICtrlCreateLabel("Установка завершена. Компьютер будет перезагруженч ерез 10 секунд.",20,20)
GUISetState(@SW_SHOW)
Sleep(10000)
Shutdown(2)