; by Benjamin C. und Ritzelrocker04 ==> RDv2017.au3

#include <GUIConstants.au3>

;$var = IniRead("C:\Temp\myfile.ini", "section2", "key", "NotFound") ; Beispiel aus Hilfe

$var1 = IniRead(@ScriptDir & "\RD.ini", "Settings", "sichern", "NotFound")
$var2 = IniRead(@ScriptDir & "\RD.ini", "Settings", "sichernUaus", "NotFound")
;GUICtrlSetState($rb_SichernUaus, $var1)

$GUI = GUICreate("Running Disk v 2.0.17", 315, 150, -1, 180, $WS_OVERLAPPEDWINDOW + $WS_VISIBLE + $WS_CLIPSIBLINGS)
$gb_All = GUICtrlCreateGroup("", 8, 1, 300, 112)
$avi = GUICtrlCreateAvi("RDsys\RD.avi", -1, 24, 10, 100, 100, BitOR($ACS_TRANSPARENT,$ACS_AUTOPLAY))
$gb_EigeneDateien = GUICtrlCreateGroup("Eigene Dateien", 144, 13, 145, 90)
$bn_Close = GUICtrlCreateButton("&Beenden", 229, 120, 75, 25, 0)
$bn_OK = GUICtrlCreateButton("&OK", 149, 120, 75, 25, 0)
	GUICtrlSetState(-1,$GUI_DEFBUTTON)
$rb_Sichern = GUICtrlCreateRadio("&sichern", 150, 40, 113, 17)
	;GUICtrlSetState($rb_Sichern, $GUI_CHECKED)
$rb_SichernUaus = GUICtrlCreateRadio("&nach sichern den PC ausschalten", 150, 65, 113, 33, BitOR($BS_AUTORADIOBUTTON,$BS_MULTILINE))
	GUICtrlCreateGroup("", -99, -99, 1, 1) 											 ; ==> BitOR($BS_AUTORADIOBUTTON,
	
	GUICtrlSetState($rb_Sichern, $var1)
	GUICtrlSetState($rb_SichernUaus, $var2)
	
;$GUI_UNCHECKED Markierung in Radio oder Checkbox wird entfernt 
;$GUI_CHECKED Radio oder Checkbox wird markiert 

	GUISetState(@SW_SHOW)

While 1
	$nMsg = GUIGetMsg()
	If $nMsg <> 0 Then
		$Sichern = GUICtrlRead($rb_Sichern)
		Select
			Case $nMsg = $GUI_EVENT_CLOSE Or $nMsg = $bn_Close
				Exit
			Case $nMsg = $bn_OK
				If FileExists("E:\$Backup$\$EigeneDateien$\EigeneDateien-0" & @WDAY & ".zip ") Then
					$ExistsFileWahl = MsgBox(32+4, "Löschen", 'Möchten Sie die bereits existierende Datei  "EigeneDateien-0' & @WDAY & '.zip"  löschen ? ')
					If $ExistsFileWahl = 6 Then
						FileDelete("E:\$Backup$\$EigeneDateien$\EigeneDateien-0" & @WDAY & ".zip ")			
					EndIf
				EndIf
				If $Sichern = 1 Then
					$_Userwahlsich = MsgBox(32+4, " Sichern", "Möchten Sie nach der Sicherung weiterarbeiten ? ")
					If $_Userwahlsich = 7 Then
						MsgBox(48, " Sichern", " ...es wurden keine Daten gesichert ! ")
						Exit
					EndIf
						$Methode = "Sichern"
						IniWrite(@ScriptDir & "\RD.ini", "Settings", "sichern", "1")
						IniWrite(@ScriptDir & "\RD.ini", "Settings", "sichernUaus", "0")
						_SichernFunc1()
						MsgBox(64, " Sichern", " Sicherung abgeschlossen ! ")
						Exit
				Else
					$_Userwahlout = MsgBox(32+4, " Sichern & Ausschalten", "Möchten Sie nach der Sicherung den PC automatisch ausschalten ? ")
					If $_Userwahlout = 7 Then
						MsgBox(48, " Sichern & Ausschalten", " ...es wurden keine Daten gesichert ! ")
						Exit
					EndIf
						$Methode = "Sichern & Ausschalten"
						IniWrite(@ScriptDir & "\RD.ini", "Settings", "sichern", "0")
						IniWrite(@ScriptDir & "\RD.ini", "Settings", "sichernUaus", "1")
						_SichernFunc1()
						Shutdown(9)
				EndIf
				ExitLoop
		EndSelect
	EndIf
WEnd

Func _SichernFunc1()
	
	RunWait(@ComSpec & ' /c ' & "RDsys\7za.exe a -tzip " & "E:\$Backup$\$EigeneDateien$\EigeneDateien-0" & @WDAY & ".zip " & '"C:\Dokumente und Einstellungen\XP-Home\Eigene Dateien"',@ScriptDir ,@SW_MINIMIZE)
	$logfile = FileOpen("RD.log", 1)
	
If $logfile = -1 Then
    MsgBox(0, "Error", " Die Datei RD.log konnte nicht geöffnet werden.", 3)
    Exit
EndIf

	FileWriteLine($logfile, "Letzte Sicherung (" & $Methode & ") der Eigenen Dateien am : " & @YEAR & "-" & @MON & "-" & @MDAY & " um " & @HOUR & ":" & @MIN & ":" & @SEC & " Uhr")
	FileClose($logfile)
	SoundSetWaveVolume(50)
	SoundPlay("RDsys\Success.wav", 1)
	
EndFunc


