diff --git a/GBM/Forms/frmMain.vb b/GBM/Forms/frmMain.vb
index 503441f..cd10986 100644
--- a/GBM/Forms/frmMain.vb
+++ b/GBM/Forms/frmMain.vb
@@ -394,84 +394,96 @@ Public Class frmMain
Exit Sub
End If
- 'Increment Timer
- iRestoreTimeOut += 1
+ If oSettings.AutoMark Or oSettings.AutoRestore Then
+ 'Increment Timer
+ iRestoreTimeOut += 1
- 'Check backup files
- For Each de As DictionaryEntry In slRestoreData
- oBackup = DirectCast(de.Value, clsBackup)
+ 'Check backup files
+ For Each de As DictionaryEntry In slRestoreData
+ oBackup = DirectCast(de.Value, clsBackup)
- 'Check if backup file is ready to restore
- If oBackup.CheckSum <> String.Empty Then
- sFileName = oSettings.BackupFolder & Path.DirectorySeparatorChar & oBackup.FileName
- If mgrHash.Generate_SHA256_Hash(sFileName) <> oBackup.CheckSum Then
- sNotReady.Add(de.Key)
- bFinished = False
- End If
- Else
- sNoCheckSum.Add(de.Key)
- End If
-
- 'Check if the restore location exists, if not we assume the game is not installed and should be auto-marked.
- If oBackup.AbsolutePath Then
- sExtractPath = oBackup.RestorePath
- Else
- hshGames = mgrMonitorList.DoListGetbyName(de.Key)
- If hshGames.Count = 1 Then
- oGame = DirectCast(hshGames(0), clsGame)
- If oGame.ProcessPath <> String.Empty Then
- oBackup.RelativeRestorePath = oGame.ProcessPath & Path.DirectorySeparatorChar & oBackup.RestorePath
+ 'Check if backup file is ready to restore
+ If oBackup.CheckSum <> String.Empty Then
+ sFileName = oSettings.BackupFolder & Path.DirectorySeparatorChar & oBackup.FileName
+ If mgrHash.Generate_SHA256_Hash(sFileName) <> oBackup.CheckSum Then
+ sNotReady.Add(de.Key)
+ bFinished = False
End If
+ Else
+ sNoCheckSum.Add(de.Key)
End If
- sExtractPath = oBackup.RelativeRestorePath
- End If
- If Not Directory.Exists(sExtractPath) Then
- If oSettings.AutoMark Then
- If mgrManifest.DoGlobalManifestCheck(de.Key, mgrSQLite.Database.Local) Then
- mgrManifest.DoManifestUpdateByName(de.Value, mgrSQLite.Database.Local)
- Else
- mgrManifest.DoManifestAdd(de.Value, mgrSQLite.Database.Local)
- End If
- End If
- sNotInstalled.Add(de.Key)
- End If
- Next
-
- 'Remove any backup files that are not ready
- For Each s As String In sNotReady
- slRestoreData.Remove(s)
- UpdateLog(mgrCommon.FormatString(frmMain_RestoreNotReady, s), False, ToolTipIcon.Info, True)
- Next
-
- 'Remove any backup files that should not be automatically restored
- For Each s As String In sNotInstalled
- slRestoreData.Remove(s)
- If oSettings.AutoMark Then
- UpdateLog(mgrCommon.FormatString(frmMain_AutoMark, s), False, ToolTipIcon.Info, True)
- Else
- UpdateLog(mgrCommon.FormatString(frmMain_NoAutoMark, s), False, ToolTipIcon.Info, True)
- End If
- Next
- For Each s As String In sNoCheckSum
- slRestoreData.Remove(s)
- UpdateLog(mgrCommon.FormatString(frmMain_NoCheckSum, s), False, ToolTipIcon.Info, True)
- Next
-
- 'Automatically restore backup files
- If oSettings.AutoRestore Then
- If slRestoreData.Count > 0 Then
- hshRestore = New Hashtable
- For Each de As DictionaryEntry In slRestoreData
+ 'Check if the restore location exists, if not we assume the game is not installed and should be auto-marked.
+ If oBackup.AbsolutePath Then
+ sExtractPath = oBackup.RestorePath
+ Else
hshGames = mgrMonitorList.DoListGetbyName(de.Key)
If hshGames.Count = 1 Then
oGame = DirectCast(hshGames(0), clsGame)
- hshRestore.Add(oGame, de.Value)
- Else
- UpdateLog(mgrCommon.FormatString(frmMain_AutoRestoreFailure, de.Key), False, ToolTipIcon.Info, True)
+ If oGame.ProcessPath <> String.Empty Then
+ oBackup.RelativeRestorePath = oGame.ProcessPath & Path.DirectorySeparatorChar & oBackup.RestorePath
+ End If
End If
- Next
- RunRestore(hshRestore)
+ sExtractPath = oBackup.RelativeRestorePath
+ End If
+
+ If Not Directory.Exists(sExtractPath) Then
+ If oSettings.AutoMark Then
+ If mgrManifest.DoGlobalManifestCheck(de.Key, mgrSQLite.Database.Local) Then
+ mgrManifest.DoManifestUpdateByName(de.Value, mgrSQLite.Database.Local)
+ Else
+ mgrManifest.DoManifestAdd(de.Value, mgrSQLite.Database.Local)
+ End If
+ End If
+ sNotInstalled.Add(de.Key)
+ End If
+ Next
+
+ 'Remove any backup files that are not ready
+ For Each s As String In sNotReady
+ slRestoreData.Remove(s)
+ UpdateLog(mgrCommon.FormatString(frmMain_RestoreNotReady, s), False, ToolTipIcon.Info, True)
+ Next
+
+ 'Remove any backup files that should not be automatically restored
+ For Each s As String In sNotInstalled
+ slRestoreData.Remove(s)
+ If oSettings.AutoMark Then
+ UpdateLog(mgrCommon.FormatString(frmMain_AutoMark, s), False, ToolTipIcon.Info, True)
+ Else
+ UpdateLog(mgrCommon.FormatString(frmMain_NoAutoMark, s), False, ToolTipIcon.Info, True)
+ End If
+ Next
+ For Each s As String In sNoCheckSum
+ slRestoreData.Remove(s)
+ UpdateLog(mgrCommon.FormatString(frmMain_NoCheckSum, s), False, ToolTipIcon.Info, True)
+ Next
+
+ 'Automatically restore backup files
+ If oSettings.AutoRestore Then
+ If slRestoreData.Count > 0 Then
+ hshRestore = New Hashtable
+ For Each de As DictionaryEntry In slRestoreData
+ hshGames = mgrMonitorList.DoListGetbyName(de.Key)
+ If hshGames.Count = 1 Then
+ oGame = DirectCast(hshGames(0), clsGame)
+ hshRestore.Add(oGame, de.Value)
+ Else
+ UpdateLog(mgrCommon.FormatString(frmMain_AutoRestoreFailure, de.Key), False, ToolTipIcon.Info, True)
+ End If
+ Next
+ RunRestore(hshRestore)
+ End If
+ End If
+
+ 'Shutdown if we are finished
+ If bFinished Then
+ tmRestoreCheck.Stop()
+ End If
+
+ 'Time out after 15 minutes
+ If iRestoreTimeOut = 15 Then
+ tmRestoreCheck.Stop()
End If
End If
@@ -481,16 +493,6 @@ Public Class frmMain
UpdateNotifier(slRestoreData.Count, oSettings.AutoRestore)
End If
End If
-
- 'Shutdown if we are finished
- If bFinished Then
- tmRestoreCheck.Stop()
- End If
-
- 'Time out after 15 minutes
- If iRestoreTimeOut = 15 Then
- tmRestoreCheck.Stop()
- End If
End Sub
'Functions handling the display of game information
diff --git a/GBM/Forms/frmSettings.Designer.vb b/GBM/Forms/frmSettings.Designer.vb
index 70c342a..ae7e7ab 100644
--- a/GBM/Forms/frmSettings.Designer.vb
+++ b/GBM/Forms/frmSettings.Designer.vb
@@ -54,7 +54,6 @@ Partial Class frmSettings
Me.nudSupressBackupThreshold = New System.Windows.Forms.NumericUpDown()
Me.chkSupressBackup = New System.Windows.Forms.CheckBox()
Me.chkBackupConfirm = New System.Windows.Forms.CheckBox()
- Me.chkCheckSum = New System.Windows.Forms.CheckBox()
Me.chkOverwriteWarning = New System.Windows.Forms.CheckBox()
Me.grpBackupHandling = New System.Windows.Forms.GroupBox()
Me.chkAutoRestore = New System.Windows.Forms.CheckBox()
@@ -82,9 +81,10 @@ Partial Class frmSettings
'chkMonitorOnStartup
'
Me.chkMonitorOnStartup.AutoSize = True
- Me.chkMonitorOnStartup.Location = New System.Drawing.Point(6, 65)
+ Me.chkMonitorOnStartup.Location = New System.Drawing.Point(8, 80)
+ Me.chkMonitorOnStartup.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
Me.chkMonitorOnStartup.Name = "chkMonitorOnStartup"
- Me.chkMonitorOnStartup.Size = New System.Drawing.Size(146, 17)
+ Me.chkMonitorOnStartup.Size = New System.Drawing.Size(192, 21)
Me.chkMonitorOnStartup.TabIndex = 2
Me.chkMonitorOnStartup.Text = "Start monitoring at launch"
Me.chkMonitorOnStartup.UseVisualStyleBackColor = True
@@ -94,9 +94,11 @@ Partial Class frmSettings
Me.grpStartup.Controls.Add(Me.chkStartWindows)
Me.grpStartup.Controls.Add(Me.chkStartToTray)
Me.grpStartup.Controls.Add(Me.chkMonitorOnStartup)
- Me.grpStartup.Location = New System.Drawing.Point(6, 12)
+ Me.grpStartup.Location = New System.Drawing.Point(8, 15)
+ Me.grpStartup.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
Me.grpStartup.Name = "grpStartup"
- Me.grpStartup.Size = New System.Drawing.Size(354, 90)
+ Me.grpStartup.Padding = New System.Windows.Forms.Padding(4, 4, 4, 4)
+ Me.grpStartup.Size = New System.Drawing.Size(472, 111)
Me.grpStartup.TabIndex = 0
Me.grpStartup.TabStop = False
Me.grpStartup.Text = "Startup"
@@ -104,9 +106,10 @@ Partial Class frmSettings
'chkStartWindows
'
Me.chkStartWindows.AutoSize = True
- Me.chkStartWindows.Location = New System.Drawing.Point(6, 19)
+ Me.chkStartWindows.Location = New System.Drawing.Point(8, 23)
+ Me.chkStartWindows.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
Me.chkStartWindows.Name = "chkStartWindows"
- Me.chkStartWindows.Size = New System.Drawing.Size(117, 17)
+ Me.chkStartWindows.Size = New System.Drawing.Size(148, 21)
Me.chkStartWindows.TabIndex = 0
Me.chkStartWindows.Text = "Start with Windows"
Me.chkStartWindows.UseVisualStyleBackColor = True
@@ -114,9 +117,10 @@ Partial Class frmSettings
'chkStartToTray
'
Me.chkStartToTray.AutoSize = True
- Me.chkStartToTray.Location = New System.Drawing.Point(6, 42)
+ Me.chkStartToTray.Location = New System.Drawing.Point(8, 52)
+ Me.chkStartToTray.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
Me.chkStartToTray.Name = "chkStartToTray"
- Me.chkStartToTray.Size = New System.Drawing.Size(115, 17)
+ Me.chkStartToTray.Size = New System.Drawing.Size(152, 21)
Me.chkStartToTray.TabIndex = 1
Me.chkStartToTray.Text = "Start to system tray"
Me.chkStartToTray.UseVisualStyleBackColor = True
@@ -124,18 +128,20 @@ Partial Class frmSettings
'chkAutoSaveLog
'
Me.chkAutoSaveLog.AutoSize = True
- Me.chkAutoSaveLog.Location = New System.Drawing.Point(6, 204)
+ Me.chkAutoSaveLog.Location = New System.Drawing.Point(8, 251)
+ Me.chkAutoSaveLog.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
Me.chkAutoSaveLog.Name = "chkAutoSaveLog"
- Me.chkAutoSaveLog.Size = New System.Drawing.Size(231, 17)
+ Me.chkAutoSaveLog.Size = New System.Drawing.Size(300, 21)
Me.chkAutoSaveLog.TabIndex = 7
Me.chkAutoSaveLog.Text = "Autosave log when max length is exceeded"
Me.chkAutoSaveLog.UseVisualStyleBackColor = True
'
'btnOptionalFields
'
- Me.btnOptionalFields.Location = New System.Drawing.Point(110, 38)
+ Me.btnOptionalFields.Location = New System.Drawing.Point(147, 47)
+ Me.btnOptionalFields.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
Me.btnOptionalFields.Name = "btnOptionalFields"
- Me.btnOptionalFields.Size = New System.Drawing.Size(134, 23)
+ Me.btnOptionalFields.Size = New System.Drawing.Size(179, 28)
Me.btnOptionalFields.TabIndex = 6
Me.btnOptionalFields.Text = "Choose &Optional Fields..."
Me.btnOptionalFields.UseVisualStyleBackColor = True
@@ -143,9 +149,10 @@ Partial Class frmSettings
'chkTimeTracking
'
Me.chkTimeTracking.AutoSize = True
- Me.chkTimeTracking.Location = New System.Drawing.Point(6, 19)
+ Me.chkTimeTracking.Location = New System.Drawing.Point(8, 23)
+ Me.chkTimeTracking.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
Me.chkTimeTracking.Name = "chkTimeTracking"
- Me.chkTimeTracking.Size = New System.Drawing.Size(122, 17)
+ Me.chkTimeTracking.Size = New System.Drawing.Size(158, 21)
Me.chkTimeTracking.TabIndex = 4
Me.chkTimeTracking.Text = "Enable time tracking"
Me.chkTimeTracking.UseVisualStyleBackColor = True
@@ -153,9 +160,10 @@ Partial Class frmSettings
'chkSync
'
Me.chkSync.AutoSize = True
- Me.chkSync.Location = New System.Drawing.Point(6, 42)
+ Me.chkSync.Location = New System.Drawing.Point(8, 52)
+ Me.chkSync.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
Me.chkSync.Name = "chkSync"
- Me.chkSync.Size = New System.Drawing.Size(98, 17)
+ Me.chkSync.Size = New System.Drawing.Size(126, 21)
Me.chkSync.TabIndex = 5
Me.chkSync.Text = "Enable syncing"
Me.chkSync.UseVisualStyleBackColor = True
@@ -163,9 +171,10 @@ Partial Class frmSettings
'chkShowDetectionTips
'
Me.chkShowDetectionTips.AutoSize = True
- Me.chkShowDetectionTips.Location = New System.Drawing.Point(6, 181)
+ Me.chkShowDetectionTips.Location = New System.Drawing.Point(8, 223)
+ Me.chkShowDetectionTips.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
Me.chkShowDetectionTips.Name = "chkShowDetectionTips"
- Me.chkShowDetectionTips.Size = New System.Drawing.Size(159, 17)
+ Me.chkShowDetectionTips.Size = New System.Drawing.Size(205, 21)
Me.chkShowDetectionTips.TabIndex = 3
Me.chkShowDetectionTips.Text = "Show detection notifications"
Me.chkShowDetectionTips.UseVisualStyleBackColor = True
@@ -176,18 +185,21 @@ Partial Class frmSettings
Me.grpFolderOptions.Controls.Add(Me.lblBackupFolder)
Me.grpFolderOptions.Controls.Add(Me.txtBackupFolder)
Me.grpFolderOptions.Controls.Add(Me.chkCreateFolder)
- Me.grpFolderOptions.Location = New System.Drawing.Point(6, 12)
+ Me.grpFolderOptions.Location = New System.Drawing.Point(8, 15)
+ Me.grpFolderOptions.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
Me.grpFolderOptions.Name = "grpFolderOptions"
- Me.grpFolderOptions.Size = New System.Drawing.Size(354, 70)
+ Me.grpFolderOptions.Padding = New System.Windows.Forms.Padding(4, 4, 4, 4)
+ Me.grpFolderOptions.Size = New System.Drawing.Size(472, 86)
Me.grpFolderOptions.TabIndex = 1
Me.grpFolderOptions.TabStop = False
Me.grpFolderOptions.Text = "Folders"
'
'btnBackupFolder
'
- Me.btnBackupFolder.Location = New System.Drawing.Point(313, 17)
+ Me.btnBackupFolder.Location = New System.Drawing.Point(417, 21)
+ Me.btnBackupFolder.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
Me.btnBackupFolder.Name = "btnBackupFolder"
- Me.btnBackupFolder.Size = New System.Drawing.Size(27, 20)
+ Me.btnBackupFolder.Size = New System.Drawing.Size(36, 25)
Me.btnBackupFolder.TabIndex = 2
Me.btnBackupFolder.Text = "..."
Me.btnBackupFolder.UseVisualStyleBackColor = True
@@ -195,25 +207,28 @@ Partial Class frmSettings
'lblBackupFolder
'
Me.lblBackupFolder.AutoSize = True
- Me.lblBackupFolder.Location = New System.Drawing.Point(6, 20)
+ Me.lblBackupFolder.Location = New System.Drawing.Point(8, 25)
+ Me.lblBackupFolder.Margin = New System.Windows.Forms.Padding(4, 0, 4, 0)
Me.lblBackupFolder.Name = "lblBackupFolder"
- Me.lblBackupFolder.Size = New System.Drawing.Size(79, 13)
+ Me.lblBackupFolder.Size = New System.Drawing.Size(103, 17)
Me.lblBackupFolder.TabIndex = 0
Me.lblBackupFolder.Text = "Backup Folder:"
'
'txtBackupFolder
'
- Me.txtBackupFolder.Location = New System.Drawing.Point(91, 17)
+ Me.txtBackupFolder.Location = New System.Drawing.Point(121, 21)
+ Me.txtBackupFolder.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
Me.txtBackupFolder.Name = "txtBackupFolder"
- Me.txtBackupFolder.Size = New System.Drawing.Size(216, 20)
+ Me.txtBackupFolder.Size = New System.Drawing.Size(287, 22)
Me.txtBackupFolder.TabIndex = 1
'
'chkCreateFolder
'
Me.chkCreateFolder.AutoSize = True
- Me.chkCreateFolder.Location = New System.Drawing.Point(9, 43)
+ Me.chkCreateFolder.Location = New System.Drawing.Point(12, 53)
+ Me.chkCreateFolder.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
Me.chkCreateFolder.Name = "chkCreateFolder"
- Me.chkCreateFolder.Size = New System.Drawing.Size(186, 17)
+ Me.chkCreateFolder.Size = New System.Drawing.Size(247, 21)
Me.chkCreateFolder.TabIndex = 3
Me.chkCreateFolder.Text = "Create a sub-folder for each game"
Me.chkCreateFolder.UseVisualStyleBackColor = True
@@ -221,9 +236,10 @@ Partial Class frmSettings
'btnSave
'
Me.btnSave.DialogResult = System.Windows.Forms.DialogResult.OK
- Me.btnSave.Location = New System.Drawing.Point(384, 321)
+ Me.btnSave.Location = New System.Drawing.Point(512, 395)
+ Me.btnSave.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
Me.btnSave.Name = "btnSave"
- Me.btnSave.Size = New System.Drawing.Size(75, 23)
+ Me.btnSave.Size = New System.Drawing.Size(100, 28)
Me.btnSave.TabIndex = 5
Me.btnSave.Text = "&Save"
Me.btnSave.UseVisualStyleBackColor = True
@@ -231,9 +247,10 @@ Partial Class frmSettings
'btnCancel
'
Me.btnCancel.DialogResult = System.Windows.Forms.DialogResult.Cancel
- Me.btnCancel.Location = New System.Drawing.Point(465, 321)
+ Me.btnCancel.Location = New System.Drawing.Point(620, 395)
+ Me.btnCancel.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
Me.btnCancel.Name = "btnCancel"
- Me.btnCancel.Size = New System.Drawing.Size(75, 23)
+ Me.btnCancel.Size = New System.Drawing.Size(100, 28)
Me.btnCancel.TabIndex = 6
Me.btnCancel.Text = "&Cancel"
Me.btnCancel.UseVisualStyleBackColor = True
@@ -242,9 +259,11 @@ Partial Class frmSettings
'
Me.grp7zGeneral.Controls.Add(Me.cboCompression)
Me.grp7zGeneral.Controls.Add(Me.lblCompression)
- Me.grp7zGeneral.Location = New System.Drawing.Point(6, 12)
+ Me.grp7zGeneral.Location = New System.Drawing.Point(8, 15)
+ Me.grp7zGeneral.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
Me.grp7zGeneral.Name = "grp7zGeneral"
- Me.grp7zGeneral.Size = New System.Drawing.Size(354, 50)
+ Me.grp7zGeneral.Padding = New System.Windows.Forms.Padding(4, 4, 4, 4)
+ Me.grp7zGeneral.Size = New System.Drawing.Size(472, 62)
Me.grp7zGeneral.TabIndex = 0
Me.grp7zGeneral.TabStop = False
Me.grp7zGeneral.Text = "General"
@@ -253,84 +272,94 @@ Partial Class frmSettings
'
Me.cboCompression.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList
Me.cboCompression.FormattingEnabled = True
- Me.cboCompression.Location = New System.Drawing.Point(110, 17)
+ Me.cboCompression.Location = New System.Drawing.Point(147, 21)
+ Me.cboCompression.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
Me.cboCompression.Name = "cboCompression"
- Me.cboCompression.Size = New System.Drawing.Size(238, 21)
+ Me.cboCompression.Size = New System.Drawing.Size(316, 24)
Me.cboCompression.TabIndex = 1
'
'lblCompression
'
Me.lblCompression.AutoSize = True
- Me.lblCompression.Location = New System.Drawing.Point(6, 20)
+ Me.lblCompression.Location = New System.Drawing.Point(8, 25)
+ Me.lblCompression.Margin = New System.Windows.Forms.Padding(4, 0, 4, 0)
Me.lblCompression.Name = "lblCompression"
- Me.lblCompression.Size = New System.Drawing.Size(70, 13)
+ Me.lblCompression.Size = New System.Drawing.Size(94, 17)
Me.lblCompression.TabIndex = 0
Me.lblCompression.Text = "Compression:"
'
'btn7zLocation
'
- Me.btn7zLocation.Location = New System.Drawing.Point(313, 41)
+ Me.btn7zLocation.Location = New System.Drawing.Point(417, 50)
+ Me.btn7zLocation.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
Me.btn7zLocation.Name = "btn7zLocation"
- Me.btn7zLocation.Size = New System.Drawing.Size(27, 20)
+ Me.btn7zLocation.Size = New System.Drawing.Size(36, 25)
Me.btn7zLocation.TabIndex = 5
Me.btn7zLocation.Text = "..."
Me.btn7zLocation.UseVisualStyleBackColor = True
'
'txt7zLocation
'
- Me.txt7zLocation.Location = New System.Drawing.Point(110, 41)
+ Me.txt7zLocation.Location = New System.Drawing.Point(147, 50)
+ Me.txt7zLocation.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
Me.txt7zLocation.Name = "txt7zLocation"
- Me.txt7zLocation.Size = New System.Drawing.Size(197, 20)
+ Me.txt7zLocation.Size = New System.Drawing.Size(261, 22)
Me.txt7zLocation.TabIndex = 4
'
'lblLocation
'
Me.lblLocation.AutoSize = True
- Me.lblLocation.Location = New System.Drawing.Point(6, 44)
+ Me.lblLocation.Location = New System.Drawing.Point(8, 54)
+ Me.lblLocation.Margin = New System.Windows.Forms.Padding(4, 0, 4, 0)
Me.lblLocation.Name = "lblLocation"
- Me.lblLocation.Size = New System.Drawing.Size(89, 13)
+ Me.lblLocation.Size = New System.Drawing.Size(117, 17)
Me.lblLocation.TabIndex = 4
Me.lblLocation.Text = "Custom Location:"
'
'txt7zArguments
'
- Me.txt7zArguments.Location = New System.Drawing.Point(110, 15)
+ Me.txt7zArguments.Location = New System.Drawing.Point(147, 18)
+ Me.txt7zArguments.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
Me.txt7zArguments.Name = "txt7zArguments"
- Me.txt7zArguments.Size = New System.Drawing.Size(238, 20)
+ Me.txt7zArguments.Size = New System.Drawing.Size(316, 22)
Me.txt7zArguments.TabIndex = 3
'
'lblArguments
'
Me.lblArguments.AutoSize = True
- Me.lblArguments.Location = New System.Drawing.Point(6, 20)
+ Me.lblArguments.Location = New System.Drawing.Point(8, 25)
+ Me.lblArguments.Margin = New System.Windows.Forms.Padding(4, 0, 4, 0)
Me.lblArguments.Name = "lblArguments"
- Me.lblArguments.Size = New System.Drawing.Size(98, 13)
+ Me.lblArguments.Size = New System.Drawing.Size(131, 17)
Me.lblArguments.TabIndex = 2
Me.lblArguments.Text = "Custom Arguments:"
'
'lbl7zCopyright
'
Me.lbl7zCopyright.AutoEllipsis = True
- Me.lbl7zCopyright.Location = New System.Drawing.Point(9, 34)
+ Me.lbl7zCopyright.Location = New System.Drawing.Point(12, 42)
+ Me.lbl7zCopyright.Margin = New System.Windows.Forms.Padding(4, 0, 4, 0)
Me.lbl7zCopyright.Name = "lbl7zCopyright"
- Me.lbl7zCopyright.Size = New System.Drawing.Size(339, 17)
+ Me.lbl7zCopyright.Size = New System.Drawing.Size(452, 21)
Me.lbl7zCopyright.TabIndex = 8
Me.lbl7zCopyright.TextAlign = System.Drawing.ContentAlignment.MiddleLeft
'
'lbl7zProduct
'
Me.lbl7zProduct.AutoEllipsis = True
- Me.lbl7zProduct.Location = New System.Drawing.Point(9, 17)
+ Me.lbl7zProduct.Location = New System.Drawing.Point(12, 21)
+ Me.lbl7zProduct.Margin = New System.Windows.Forms.Padding(4, 0, 4, 0)
Me.lbl7zProduct.Name = "lbl7zProduct"
- Me.lbl7zProduct.Size = New System.Drawing.Size(339, 17)
+ Me.lbl7zProduct.Size = New System.Drawing.Size(452, 21)
Me.lbl7zProduct.TabIndex = 7
Me.lbl7zProduct.TextAlign = System.Drawing.ContentAlignment.MiddleLeft
'
'btnDefaults
'
- Me.btnDefaults.Location = New System.Drawing.Point(12, 321)
+ Me.btnDefaults.Location = New System.Drawing.Point(16, 395)
+ Me.btnDefaults.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
Me.btnDefaults.Name = "btnDefaults"
- Me.btnDefaults.Size = New System.Drawing.Size(110, 23)
+ Me.btnDefaults.Size = New System.Drawing.Size(147, 28)
Me.btnDefaults.TabIndex = 4
Me.btnDefaults.Text = "Set &Defaults"
Me.btnDefaults.UseVisualStyleBackColor = True
@@ -341,38 +370,41 @@ Partial Class frmSettings
Me.pnlBackup.Controls.Add(Me.nudSupressBackupThreshold)
Me.pnlBackup.Controls.Add(Me.chkSupressBackup)
Me.pnlBackup.Controls.Add(Me.chkBackupConfirm)
- Me.pnlBackup.Controls.Add(Me.chkCheckSum)
Me.pnlBackup.Controls.Add(Me.chkOverwriteWarning)
Me.pnlBackup.Controls.Add(Me.grpBackupHandling)
Me.pnlBackup.Controls.Add(Me.grpFolderOptions)
- Me.pnlBackup.Location = New System.Drawing.Point(180, 0)
+ Me.pnlBackup.Location = New System.Drawing.Point(240, 0)
+ Me.pnlBackup.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
Me.pnlBackup.Name = "pnlBackup"
- Me.pnlBackup.Size = New System.Drawing.Size(367, 314)
+ Me.pnlBackup.Size = New System.Drawing.Size(489, 386)
Me.pnlBackup.TabIndex = 3
'
'lblMinutes
'
Me.lblMinutes.AutoSize = True
- Me.lblMinutes.Location = New System.Drawing.Point(286, 251)
+ Me.lblMinutes.Location = New System.Drawing.Point(381, 281)
+ Me.lblMinutes.Margin = New System.Windows.Forms.Padding(4, 0, 4, 0)
Me.lblMinutes.Name = "lblMinutes"
- Me.lblMinutes.Size = New System.Drawing.Size(43, 13)
+ Me.lblMinutes.Size = New System.Drawing.Size(57, 17)
Me.lblMinutes.TabIndex = 14
Me.lblMinutes.Text = "minutes"
'
'nudSupressBackupThreshold
'
- Me.nudSupressBackupThreshold.Location = New System.Drawing.Point(229, 249)
+ Me.nudSupressBackupThreshold.Location = New System.Drawing.Point(305, 278)
+ Me.nudSupressBackupThreshold.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
Me.nudSupressBackupThreshold.Maximum = New Decimal(New Integer() {999, 0, 0, 0})
Me.nudSupressBackupThreshold.Name = "nudSupressBackupThreshold"
- Me.nudSupressBackupThreshold.Size = New System.Drawing.Size(51, 20)
+ Me.nudSupressBackupThreshold.Size = New System.Drawing.Size(68, 22)
Me.nudSupressBackupThreshold.TabIndex = 13
'
'chkSupressBackup
'
Me.chkSupressBackup.AutoSize = True
- Me.chkSupressBackup.Location = New System.Drawing.Point(6, 250)
+ Me.chkSupressBackup.Location = New System.Drawing.Point(8, 280)
+ Me.chkSupressBackup.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
Me.chkSupressBackup.Name = "chkSupressBackup"
- Me.chkSupressBackup.Size = New System.Drawing.Size(217, 17)
+ Me.chkSupressBackup.Size = New System.Drawing.Size(282, 21)
Me.chkSupressBackup.TabIndex = 12
Me.chkSupressBackup.Text = "Backup only when session time exceeds"
Me.chkSupressBackup.UseVisualStyleBackColor = True
@@ -380,29 +412,21 @@ Partial Class frmSettings
'chkBackupConfirm
'
Me.chkBackupConfirm.AutoSize = True
- Me.chkBackupConfirm.Location = New System.Drawing.Point(6, 180)
+ Me.chkBackupConfirm.Location = New System.Drawing.Point(8, 222)
+ Me.chkBackupConfirm.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
Me.chkBackupConfirm.Name = "chkBackupConfirm"
- Me.chkBackupConfirm.Size = New System.Drawing.Size(160, 17)
+ Me.chkBackupConfirm.Size = New System.Drawing.Size(208, 21)
Me.chkBackupConfirm.TabIndex = 9
Me.chkBackupConfirm.Text = "Disable backup confirmation"
Me.chkBackupConfirm.UseVisualStyleBackColor = True
'
- 'chkCheckSum
- '
- Me.chkCheckSum.AutoSize = True
- Me.chkCheckSum.Location = New System.Drawing.Point(6, 227)
- Me.chkCheckSum.Name = "chkCheckSum"
- Me.chkCheckSum.Size = New System.Drawing.Size(195, 17)
- Me.chkCheckSum.TabIndex = 11
- Me.chkCheckSum.Text = "Verify backup files with a checksum"
- Me.chkCheckSum.UseVisualStyleBackColor = True
- '
'chkOverwriteWarning
'
Me.chkOverwriteWarning.AutoSize = True
- Me.chkOverwriteWarning.Location = New System.Drawing.Point(6, 204)
+ Me.chkOverwriteWarning.Location = New System.Drawing.Point(8, 251)
+ Me.chkOverwriteWarning.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
Me.chkOverwriteWarning.Name = "chkOverwriteWarning"
- Me.chkOverwriteWarning.Size = New System.Drawing.Size(139, 17)
+ Me.chkOverwriteWarning.Size = New System.Drawing.Size(178, 21)
Me.chkOverwriteWarning.TabIndex = 10
Me.chkOverwriteWarning.Text = "Show overwrite warning"
Me.chkOverwriteWarning.UseVisualStyleBackColor = True
@@ -412,11 +436,11 @@ Partial Class frmSettings
Me.grpBackupHandling.Controls.Add(Me.chkAutoRestore)
Me.grpBackupHandling.Controls.Add(Me.chkRestoreNotify)
Me.grpBackupHandling.Controls.Add(Me.chkAutoMark)
- Me.grpBackupHandling.Location = New System.Drawing.Point(6, 88)
- Me.grpBackupHandling.Margin = New System.Windows.Forms.Padding(2, 2, 2, 2)
+ Me.grpBackupHandling.Location = New System.Drawing.Point(8, 108)
+ Me.grpBackupHandling.Margin = New System.Windows.Forms.Padding(3, 2, 3, 2)
Me.grpBackupHandling.Name = "grpBackupHandling"
- Me.grpBackupHandling.Padding = New System.Windows.Forms.Padding(2, 2, 2, 2)
- Me.grpBackupHandling.Size = New System.Drawing.Size(354, 87)
+ Me.grpBackupHandling.Padding = New System.Windows.Forms.Padding(3, 2, 3, 2)
+ Me.grpBackupHandling.Size = New System.Drawing.Size(472, 107)
Me.grpBackupHandling.TabIndex = 8
Me.grpBackupHandling.TabStop = False
Me.grpBackupHandling.Text = "Backup Handling"
@@ -424,10 +448,10 @@ Partial Class frmSettings
'chkAutoRestore
'
Me.chkAutoRestore.AutoSize = True
- Me.chkAutoRestore.Location = New System.Drawing.Point(8, 41)
- Me.chkAutoRestore.Margin = New System.Windows.Forms.Padding(2, 2, 2, 2)
+ Me.chkAutoRestore.Location = New System.Drawing.Point(11, 50)
+ Me.chkAutoRestore.Margin = New System.Windows.Forms.Padding(3, 2, 3, 2)
Me.chkAutoRestore.Name = "chkAutoRestore"
- Me.chkAutoRestore.Size = New System.Drawing.Size(190, 17)
+ Me.chkAutoRestore.Size = New System.Drawing.Size(248, 21)
Me.chkAutoRestore.TabIndex = 9
Me.chkAutoRestore.Text = "Automatically restore new backups"
Me.chkAutoRestore.UseVisualStyleBackColor = True
@@ -435,10 +459,10 @@ Partial Class frmSettings
'chkRestoreNotify
'
Me.chkRestoreNotify.AutoSize = True
- Me.chkRestoreNotify.Location = New System.Drawing.Point(8, 19)
- Me.chkRestoreNotify.Margin = New System.Windows.Forms.Padding(2, 2, 2, 2)
+ Me.chkRestoreNotify.Location = New System.Drawing.Point(11, 23)
+ Me.chkRestoreNotify.Margin = New System.Windows.Forms.Padding(3, 2, 3, 2)
Me.chkRestoreNotify.Name = "chkRestoreNotify"
- Me.chkRestoreNotify.Size = New System.Drawing.Size(216, 17)
+ Me.chkRestoreNotify.Size = New System.Drawing.Size(281, 21)
Me.chkRestoreNotify.TabIndex = 8
Me.chkRestoreNotify.Text = "Display notifications about new backups"
Me.chkRestoreNotify.UseVisualStyleBackColor = True
@@ -446,9 +470,10 @@ Partial Class frmSettings
'chkAutoMark
'
Me.chkAutoMark.AutoSize = True
- Me.chkAutoMark.Location = New System.Drawing.Point(8, 63)
+ Me.chkAutoMark.Location = New System.Drawing.Point(11, 78)
+ Me.chkAutoMark.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
Me.chkAutoMark.Name = "chkAutoMark"
- Me.chkAutoMark.Size = New System.Drawing.Size(321, 17)
+ Me.chkAutoMark.Size = New System.Drawing.Size(424, 21)
Me.chkAutoMark.TabIndex = 5
Me.chkAutoMark.Text = "Automatically mark new backups as restored when appropriate"
Me.chkAutoMark.UseVisualStyleBackColor = True
@@ -458,9 +483,10 @@ Partial Class frmSettings
Me.pnl7z.Controls.Add(Me.grp7zAdvanced)
Me.pnl7z.Controls.Add(Me.grp7zInformation)
Me.pnl7z.Controls.Add(Me.grp7zGeneral)
- Me.pnl7z.Location = New System.Drawing.Point(180, 0)
+ Me.pnl7z.Location = New System.Drawing.Point(240, 0)
+ Me.pnl7z.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
Me.pnl7z.Name = "pnl7z"
- Me.pnl7z.Size = New System.Drawing.Size(367, 314)
+ Me.pnl7z.Size = New System.Drawing.Size(489, 386)
Me.pnl7z.TabIndex = 2
'
'grp7zAdvanced
@@ -470,9 +496,11 @@ Partial Class frmSettings
Me.grp7zAdvanced.Controls.Add(Me.txt7zLocation)
Me.grp7zAdvanced.Controls.Add(Me.txt7zArguments)
Me.grp7zAdvanced.Controls.Add(Me.lblLocation)
- Me.grp7zAdvanced.Location = New System.Drawing.Point(6, 68)
+ Me.grp7zAdvanced.Location = New System.Drawing.Point(8, 84)
+ Me.grp7zAdvanced.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
Me.grp7zAdvanced.Name = "grp7zAdvanced"
- Me.grp7zAdvanced.Size = New System.Drawing.Size(354, 73)
+ Me.grp7zAdvanced.Padding = New System.Windows.Forms.Padding(4, 4, 4, 4)
+ Me.grp7zAdvanced.Size = New System.Drawing.Size(472, 90)
Me.grp7zAdvanced.TabIndex = 2
Me.grp7zAdvanced.TabStop = False
Me.grp7zAdvanced.Text = "Advanced"
@@ -481,9 +509,11 @@ Partial Class frmSettings
'
Me.grp7zInformation.Controls.Add(Me.lbl7zProduct)
Me.grp7zInformation.Controls.Add(Me.lbl7zCopyright)
- Me.grp7zInformation.Location = New System.Drawing.Point(6, 146)
+ Me.grp7zInformation.Location = New System.Drawing.Point(8, 180)
+ Me.grp7zInformation.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
Me.grp7zInformation.Name = "grp7zInformation"
- Me.grp7zInformation.Size = New System.Drawing.Size(354, 63)
+ Me.grp7zInformation.Padding = New System.Windows.Forms.Padding(4, 4, 4, 4)
+ Me.grp7zInformation.Size = New System.Drawing.Size(472, 78)
Me.grp7zInformation.TabIndex = 1
Me.grp7zInformation.TabStop = False
Me.grp7zInformation.Text = "Utility Information"
@@ -494,9 +524,10 @@ Partial Class frmSettings
Me.pnlGeneral.Controls.Add(Me.grpGameData)
Me.pnlGeneral.Controls.Add(Me.chkShowDetectionTips)
Me.pnlGeneral.Controls.Add(Me.grpStartup)
- Me.pnlGeneral.Location = New System.Drawing.Point(180, 0)
+ Me.pnlGeneral.Location = New System.Drawing.Point(240, 0)
+ Me.pnlGeneral.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
Me.pnlGeneral.Name = "pnlGeneral"
- Me.pnlGeneral.Size = New System.Drawing.Size(367, 314)
+ Me.pnlGeneral.Size = New System.Drawing.Size(489, 386)
Me.pnlGeneral.TabIndex = 1
'
'grpGameData
@@ -504,9 +535,11 @@ Partial Class frmSettings
Me.grpGameData.Controls.Add(Me.chkTimeTracking)
Me.grpGameData.Controls.Add(Me.chkSync)
Me.grpGameData.Controls.Add(Me.btnOptionalFields)
- Me.grpGameData.Location = New System.Drawing.Point(6, 106)
+ Me.grpGameData.Location = New System.Drawing.Point(8, 130)
+ Me.grpGameData.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
Me.grpGameData.Name = "grpGameData"
- Me.grpGameData.Size = New System.Drawing.Size(354, 69)
+ Me.grpGameData.Padding = New System.Windows.Forms.Padding(4, 4, 4, 4)
+ Me.grpGameData.Size = New System.Drawing.Size(472, 85)
Me.grpGameData.TabIndex = 1
Me.grpGameData.TabStop = False
Me.grpGameData.Text = "Game Data"
@@ -514,16 +547,18 @@ Partial Class frmSettings
'lstSettings
'
Me.lstSettings.FormattingEnabled = True
- Me.lstSettings.Location = New System.Drawing.Point(12, 12)
+ Me.lstSettings.ItemHeight = 16
+ Me.lstSettings.Location = New System.Drawing.Point(16, 15)
+ Me.lstSettings.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
Me.lstSettings.Name = "lstSettings"
- Me.lstSettings.Size = New System.Drawing.Size(162, 303)
+ Me.lstSettings.Size = New System.Drawing.Size(215, 372)
Me.lstSettings.TabIndex = 0
'
'frmSettings
'
- Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
+ Me.AutoScaleDimensions = New System.Drawing.SizeF(8.0!, 16.0!)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
- Me.ClientSize = New System.Drawing.Size(554, 361)
+ Me.ClientSize = New System.Drawing.Size(739, 444)
Me.Controls.Add(Me.pnlBackup)
Me.Controls.Add(Me.lstSettings)
Me.Controls.Add(Me.btnDefaults)
@@ -532,6 +567,7 @@ Partial Class frmSettings
Me.Controls.Add(Me.pnlGeneral)
Me.Controls.Add(Me.pnl7z)
Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle
+ Me.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
Me.MaximizeBox = False
Me.MinimizeBox = False
Me.Name = "frmSettings"
@@ -599,7 +635,6 @@ Partial Class frmSettings
Friend WithEvents nudSupressBackupThreshold As NumericUpDown
Friend WithEvents chkSupressBackup As CheckBox
Friend WithEvents chkBackupConfirm As CheckBox
- Friend WithEvents chkCheckSum As CheckBox
Friend WithEvents chkOverwriteWarning As CheckBox
Friend WithEvents grpBackupHandling As GroupBox
Friend WithEvents chkAutoMark As CheckBox
diff --git a/GBM/Forms/frmSettings.vb b/GBM/Forms/frmSettings.vb
index f2335aa..d5cd44d 100644
--- a/GBM/Forms/frmSettings.vb
+++ b/GBM/Forms/frmSettings.vb
@@ -4,7 +4,6 @@ Imports System.IO
Public Class frmSettings
Dim bShutdown As Boolean = False
Dim bSyncSettingsChanged As Boolean = False
- Dim bCheckSumDisabled As Boolean = False
Dim eCurrentSyncFields As clsGame.eOptionalSyncFields
Private oSettings As mgrSettings
@@ -63,12 +62,6 @@ Public Class frmSettings
oSettings.Custom7zArguments = txt7zArguments.Text.Trim
oSettings.Custom7zLocation = txt7zLocation.Text.Trim
- 'We need to clear all checksums its turned off
- If chkCheckSum.Checked = False And oSettings.CheckSum = True Then
- bCheckSumDisabled = True
- End If
- oSettings.CheckSum = chkCheckSum.Checked
-
'Turning syncing from off to on is the same as changing the backup folder
If chkSync.Checked = True And oSettings.Sync = False Then
bSyncSettingsChanged = True
@@ -108,7 +101,6 @@ Public Class frmSettings
If ValidateSettings() Then
oSettings.SaveSettings()
If bSyncSettingsChanged Then mgrMonitorList.HandleBackupLocationChange(Settings)
- If bCheckSumDisabled Then mgrManifest.DoManifestHashWipe()
Return True
Else
Return False
@@ -184,7 +176,6 @@ Public Class frmSettings
chkAutoMark.Checked = oSettings.AutoMark
txtBackupFolder.Text = oSettings.BackupFolder
chkSync.Checked = oSettings.Sync
- chkCheckSum.Checked = oSettings.CheckSum
chkTimeTracking.Checked = oSettings.TimeTracking
chkSupressBackup.Checked = oSettings.SupressBackup
nudSupressBackupThreshold.Value = oSettings.SupressBackupThreshold
@@ -283,7 +274,6 @@ Public Class frmSettings
'Set Form Text
lblMinutes.Text = frmSettings_lblMinutes
chkSupressBackup.Text = frmSettings_chkSupressBackup
- chkCheckSum.Text = frmSettings_chkCheckSum
grpBackupHandling.Text = frmSettings_grpBackupHandling
chkRestoreNotify.Text = frmSettings_chkRestoreNotify
chkAutoRestore.Text = frmSettings_chkAutoRestore
diff --git a/GBM/Managers/mgrBackup.vb b/GBM/Managers/mgrBackup.vb
index 46b4699..567d922 100644
--- a/GBM/Managers/mgrBackup.vb
+++ b/GBM/Managers/mgrBackup.vb
@@ -242,10 +242,10 @@ Public Class mgrBackup
'Write Main Manifest
If bBackupCompleted Then
- If oSettings.CheckSum Then
- RaiseEvent UpdateLog(mgrCommon.FormatString(mgrBackup_GenerateHash, oGame.Name), False, ToolTipIcon.Info, True)
- sHash = mgrHash.Generate_SHA256_Hash(sBackupFile)
- End If
+
+ 'Generate checksum for new backup
+ RaiseEvent UpdateLog(mgrCommon.FormatString(mgrBackup_GenerateHash, oGame.Name), False, ToolTipIcon.Info, True)
+ sHash = mgrHash.Generate_SHA256_Hash(sBackupFile)
If Not DoManifestUpdate(oGame, sBackupFile, dTimeStamp, sHash) Then
RaiseEvent UpdateLog(mgrCommon.FormatString(mgrBackup_ErrorManifestFailure, oGame.Name), True, ToolTipIcon.Error, True)
diff --git a/GBM/Managers/mgrRestore.vb b/GBM/Managers/mgrRestore.vb
index 7677806..9b91118 100644
--- a/GBM/Managers/mgrRestore.vb
+++ b/GBM/Managers/mgrRestore.vb
@@ -183,23 +183,22 @@ Public Class mgrRestore
End If
'Check file integrity
- If oSettings.CheckSum Then
- If oBackupInfo.CheckSum <> String.Empty Then
- sHash = mgrHash.Generate_SHA256_Hash(sBackupFile)
- If sHash <> oBackupInfo.CheckSum Then
- RaiseEvent UpdateLog(mgrCommon.FormatString(mgrRestore_ErrorFailedCheck, oBackupInfo.Name), False, ToolTipIcon.Info, True)
- If mgrCommon.ShowMessage(mgrRestore_ConfirmFailedCheck, oBackupInfo.Name, MsgBoxStyle.YesNo) = MsgBoxResult.No Then
- RaiseEvent UpdateLog(mgrRestore_ErrorCheckAbort, False, ToolTipIcon.Info, True)
- Return False
- End If
- Else
- RaiseEvent UpdateLog(mgrCommon.FormatString(mgrRestore_Verified, oBackupInfo.Name), False, ToolTipIcon.Info, True)
+ If oBackupInfo.CheckSum <> String.Empty Then
+ sHash = mgrHash.Generate_SHA256_Hash(sBackupFile)
+ If sHash <> oBackupInfo.CheckSum Then
+ RaiseEvent UpdateLog(mgrCommon.FormatString(mgrRestore_ErrorFailedCheck, oBackupInfo.Name), False, ToolTipIcon.Info, True)
+ If mgrCommon.ShowMessage(mgrRestore_ConfirmFailedCheck, oBackupInfo.Name, MsgBoxStyle.YesNo) = MsgBoxResult.No Then
+ RaiseEvent UpdateLog(mgrRestore_ErrorCheckAbort, False, ToolTipIcon.Info, True)
+ Return False
End If
Else
- RaiseEvent UpdateLog(mgrCommon.FormatString(mgrRestore_NoVerify, oBackupInfo.Name), False, ToolTipIcon.Info, True)
+ RaiseEvent UpdateLog(mgrCommon.FormatString(mgrRestore_Verified, oBackupInfo.Name), False, ToolTipIcon.Info, True)
End If
+ Else
+ RaiseEvent UpdateLog(mgrCommon.FormatString(mgrRestore_NoVerify, oBackupInfo.Name), False, ToolTipIcon.Info, True)
End If
+
Return True
End Function
diff --git a/GBM/Managers/mgrSQLite.vb b/GBM/Managers/mgrSQLite.vb
index 9744430..3990d8c 100644
--- a/GBM/Managers/mgrSQLite.vb
+++ b/GBM/Managers/mgrSQLite.vb
@@ -72,7 +72,7 @@ Public Class mgrSQLite
'Add Tables (Settings)
sSql = "CREATE TABLE settings (SettingsID INTEGER NOT NULL PRIMARY KEY, MonitorOnStartup BOOLEAN NOT NULL, StartToTray BOOLEAN NOT NULL, ShowDetectionToolTips BOOLEAN NOT NULL, " &
"DisableConfirmation BOOLEAN NOT NULL, CreateSubFolder BOOLEAN NOT NULL, ShowOverwriteWarning BOOLEAN NOT NULL, RestoreOnLaunch BOOLEAN NOT NULL, " &
- "BackupFolder TEXT NOT NULL, Sync BOOLEAN NOT NULL, CheckSum BOOLEAN NOT NULL, StartWithWindows BOOLEAN NOT NULL, TimeTracking BOOLEAN NOT NULL, " &
+ "BackupFolder TEXT NOT NULL, Sync BOOLEAN NOT NULL, StartWithWindows BOOLEAN NOT NULL, TimeTracking BOOLEAN NOT NULL, " &
"SupressBackup BOOLEAN NOT NULL, SupressBackupThreshold INTEGER NOT NULL, CompressionLevel INTEGER NOT NULL, Custom7zArguments TEXT, " &
"Custom7zLocation TEXT, SyncFields INTEGER NOT NULL, AutoSaveLog BOOLEAN NOT NULL, AutoRestore BOOLEAN NOT NULL, AutoMark BOOLEAN NOT NULL);"
@@ -606,8 +606,21 @@ Public Class mgrSQLite
'Backup DB before starting
BackupDB("v98")
+ 'Remove checksum field
+ sSQL = "CREATE TABLE settings_new (SettingsID INTEGER NOT NULL PRIMARY KEY, MonitorOnStartup BOOLEAN NOT NULL, StartToTray BOOLEAN NOT NULL, ShowDetectionToolTips BOOLEAN NOT NULL, " &
+ "DisableConfirmation BOOLEAN NOT NULL, CreateSubFolder BOOLEAN NOT NULL, ShowOverwriteWarning BOOLEAN NOT NULL, RestoreOnLaunch BOOLEAN NOT NULL, " &
+ "BackupFolder TEXT NOT NULL, Sync BOOLEAN NOT NULL, StartWithWindows BOOLEAN NOT NULL, TimeTracking BOOLEAN NOT NULL, " &
+ "SupressBackup BOOLEAN NOT NULL, SupressBackupThreshold INTEGER NOT NULL, CompressionLevel INTEGER NOT NULL, Custom7zArguments TEXT, " &
+ "Custom7zLocation TEXT, SyncFields INTEGER NOT NULL, AutoSaveLog BOOLEAN NOT NULL);"
+ sSQL &= "INSERT INTO settings_new (SettingsID, MonitorOnStartup, StartToTray, ShowDetectionToolTips, DisableConfirmation, CreateSubFolder, " &
+ "ShowOverwriteWarning, RestoreOnLaunch, BackupFolder, Sync, StartWithWindows, TimeTracking, SupressBackup, SupressBackupThreshold, " &
+ "CompressionLevel, Custom7zArguments, Custom7zLocation, SyncFields, AutoSaveLog) " &
+ "SELECT SettingsID, MonitorOnStartup, StartToTray, ShowDetectionToolTips, DisableConfirmation, CreateSubFolder, " &
+ "ShowOverwriteWarning, RestoreOnLaunch, BackupFolder, Sync, StartWithWindows, TimeTracking, SupressBackup, SupressBackupThreshold, " &
+ "CompressionLevel, Custom7zArguments, Custom7zLocation, SyncFields, AutoSaveLog FROM settings;" &
+ "DROP TABLE settings; ALTER TABLE settings_new RENAME TO settings;"
'Add new field(s)
- sSQL = "ALTER TABLE monitorlist ADD COLUMN CleanFolder BOOLEAN NOT NULL DEFAULT 0;"
+ sSQL &= "ALTER TABLE monitorlist ADD COLUMN CleanFolder BOOLEAN NOT NULL DEFAULT 0;"
sSQL &= "ALTER TABLE settings ADD COLUMN AutoRestore BOOLEAN NOT NULL DEFAULT 0;"
sSQL &= "ALTER TABLE settings ADD COLUMN AutoMark BOOLEAN NOT NULL DEFAULT 0;"
sSQL &= "PRAGMA user_version=101"
diff --git a/GBM/Managers/mgrSettings.vb b/GBM/Managers/mgrSettings.vb
index 8bab6e1..73da1f9 100644
--- a/GBM/Managers/mgrSettings.vb
+++ b/GBM/Managers/mgrSettings.vb
@@ -12,7 +12,6 @@ Public Class mgrSettings
Private bAutoRestore As Boolean = False
Private bAutoMark As Boolean = False
Private bSync As Boolean = True
- Private bCheckSum As Boolean = True
Private bTimeTracking As Boolean = True
Private bSupressBackup As Boolean = False
Private iSupressBackupThreshold As Integer = 10
@@ -122,15 +121,6 @@ Public Class mgrSettings
End Set
End Property
- Property CheckSum As Boolean
- Get
- Return bCheckSum
- End Get
- Set(value As Boolean)
- bCheckSum = value
- End Set
- End Property
-
Property TimeTracking As Boolean
Get
Return bTimeTracking
@@ -269,7 +259,7 @@ Public Class mgrSettings
oDatabase.RunParamQuery(sSQL, New Hashtable)
sSQL = "INSERT INTO settings VALUES (1, @MonitorOnStartup, @StartToTray, @ShowDetectionToolTips, @DisableConfirmation, "
- sSQL &= "@CreateSubFolder, @ShowOverwriteWarning, @RestoreOnLaunch, @BackupFolder, @Sync, @CheckSum, @StartWithWindows, "
+ sSQL &= "@CreateSubFolder, @ShowOverwriteWarning, @RestoreOnLaunch, @BackupFolder, @Sync, @StartWithWindows, "
sSQL &= "@TimeTracking, @SupressBackup, @SupressBackupThreshold, @CompressionLevel, @Custom7zArguments, @Custom7zLocation, "
sSQL &= "@SyncFields, @AutoSaveLog, @AutoRestore, @AutoMark)"
@@ -282,7 +272,6 @@ Public Class mgrSettings
hshParams.Add("RestoreOnLaunch", RestoreOnLaunch)
hshParams.Add("BackupFolder", BackupFolder)
hshParams.Add("Sync", Sync)
- hshParams.Add("CheckSum", CheckSum)
hshParams.Add("StartWithWindows", StartWithWindows)
hshParams.Add("TimeTracking", TimeTracking)
hshParams.Add("SupressBackup", SupressBackup)
@@ -317,7 +306,6 @@ Public Class mgrSettings
RestoreOnLaunch = CBool(dr("RestoreOnLaunch"))
BackupFolder = CStr(dr("BackupFolder"))
Sync = CBool(dr("Sync"))
- CheckSum = CBool(dr("CheckSum"))
StartWithWindows = CBool(dr("StartWithWindows"))
TimeTracking = CBool(dr("TimeTracking"))
SupressBackup = CBool(dr("SupressBackup"))
diff --git a/GBM/My Project/Resources.Designer.vb b/GBM/My Project/Resources.Designer.vb
index 571a768..af33cec 100644
--- a/GBM/My Project/Resources.Designer.vb
+++ b/GBM/My Project/Resources.Designer.vb
@@ -3453,15 +3453,6 @@ Namespace My.Resources
End Get
End Property
- '''
- ''' Looks up a localized string similar to Verify backup files with a checksum.
- '''
- Friend ReadOnly Property frmSettings_chkCheckSum() As String
- Get
- Return ResourceManager.GetString("frmSettings_chkCheckSum", resourceCulture)
- End Get
- End Property
-
'''
''' Looks up a localized string similar to Create a sub-folder for each game.
'''
diff --git a/GBM/My Project/Resources.resx b/GBM/My Project/Resources.resx
index 4d31c70..f795a3a 100644
--- a/GBM/My Project/Resources.resx
+++ b/GBM/My Project/Resources.resx
@@ -1075,9 +1075,6 @@
Disable backup confirmation
-
- Verify backup files with a checksum
-
Create a sub-folder for each game