;---------------------------------------------------------------------------------
;AutoIt Version: 3.3.2.0 
;Author: ynbIpb 
;Script Function: Trial Reset DAEMON Tools Pro Advanced Edition v.0.4 (29.12.2009) 
;---------------------------------------------------------------------------------
#include <Date.au3> 
;защита от запуска двух копий 
If WinExists(@ScriptName) Then Exit 
AutoItWinSetTitle(@ScriptName)
$my_title = "DT Loader v.0.4 (29.12.2009) for DAEMON Tools Pro"
$MsgBox1 = "Обнаружено, что лоадер запущен не из папки DAEMON Tools! Продолжение работы не возможно..."
$MsgBox2 = "Программа DAEMON Tools Уже запущена!"
; если ini файла нет, создаём его
If Not FileExists(@ScriptDir & "\dt_loader.ini") Then
$first_time = _NowCalc() ; в формате: ГГГГ/ММ/ДД ЧЧ:ММ:СС
$inifile = FileOpen (@ScriptDir & "\dt_loader.ini", 32+2); режим Unicode UTF16 и запись с удалением имеющегося
; пишем в ини файл текущие дату и время 
FileWrite ($inifile, "[time]"&@CRLF&"installtime="&$first_time)
FileClose ($inifile)
EndIf
$ini_time = IniRead (@ScriptDir & "\dt_loader.ini", "time", "installtime", "" )
; проверяем где мы находимся. 
If Not FileExists(@ScriptDir & "\DTPro.exe") Then 
MsgBox(16, $my_title, $MsgBox1&@CRLF&@CRLF&"© ynbIpb - forum.ru-board.com") 
Exit 
EndIf 
If ProcessExists ("DTPro.exe") Then 
MsgBox( 64, $my_title, $MsgBox2&@CRLF&@CRLF&"© ynbIpb - forum.ru-board.com") 
Exit 
EndIf

; добавляем к времени из ини файла +10 минут 
$New_time_string = _DateAdd ( 'n', 10, $ini_time)
;разбиваем на части... 
$new_year = StringMid($New_time_string, 1, 4); выделяем Год. 
$new_month = StringMid($New_time_string, 6, 2); выделяем Месяц. 
$new_day = StringMid($New_time_string, 9, 2); выделяем День 
$new_hour = StringMid($New_time_string, 12, 2); выделяем Час 
$new_minute = StringMid($New_time_string, 15, 2); выделяем Минуту 
$new_second = StringMid($New_time_string, 18, 2); выделяем Секунду 

; фиксируем текущие системные время и дату 
$current_time = _NowCalc() ; в формате: ГГГГ/ММ/ДД ЧЧ:ММ:СС 
$timer_begin = TimerInit() ; врубаем таймер 
; меняем системную дату на дату из ини файла +10 минут 
;--------------важно ---------- 
_SetDate($new_day,$new_month,$new_year)
_SetTime($new_hour, $new_minute, $new_second); время
;--------------важно ---------- 
; запускаем демона 
Run (@ScriptDir & "\DTPro.exe") 
sleep(100) 

WinWait ("DAEMON Tools Pro Advanced Edition", "", 20) 
If WinExists("DAEMON Tools Pro Advanced Edition", "") Then
_timeback()
WinSetTitle ("DAEMON Tools Pro Advanced Edition", "", "DAEMON Tools Pro Advanced Ru-Board Edition" )
Else
_timeback()
EndIf 
 
;---------- Функция возврата времени ------------- 
Func _timeback() 
$timer_end = Ceiling (TimerDiff ($timer_begin)); читаем сколько натикало в таймере и сразу же округляем 
$timer_end /= 1000 ; переводим из милисекунд в секунды 
Global $timer_end_s = Ceiling ($timer_end); опять округляем 
Global $new_current_time = _DateAdd ( 's', $timer_end_s, $current_time); формируется новая текущая дата: ГГГГ/ММ/ДД ЧЧ:ММ:СС 
; разбиваем полученную строку на переменные... 
$year = StringMid( $new_current_time, 1, 4); выделяем Год. 
$month = StringMid( $new_current_time, 6, 2); выделяем Месяц. 
$day = StringMid( $new_current_time, 9, 2); выделяем День 
$hour = StringMid( $new_current_time, 12, 2); выделяем Час 
$minute = StringMid( $new_current_time, 15, 2); выделяем Минуту 
$second = StringMid( $new_current_time, 18, 2); выделяем Секунду 
_SetDate($day, $month, $year); дата 
_SetTime($hour, $minute, $second); время 
EndFunc 
;---------- Функция возврата времени ------------- 

