Add TimerAutostart for delayed indexing thread start

Introduce TimerAutostart to delay Nachindexierung thread start by 30s, allowing Windream drive to become available before processing. Update status messages to reflect waiting period. Add event handler for timer tick to start threads after delay. Minor designer layout adjustments. Remove obsolete database binary files.
This commit is contained in:
OlgunR
2026-03-04 14:03:09 +01:00
parent a92b685727
commit 4d201411f6
9 changed files with 22 additions and 7 deletions

View File

@@ -69,6 +69,7 @@ Partial Class frmNIHauptseite
Me.TBTC_MOVE_RENAMEBindingSource = New System.Windows.Forms.BindingSource(Me.components)
Me.TBTC_MOVE_RENAMETableAdapter = New ToolCollection.MyDatasetTableAdapters.TBTC_MOVE_RENAMETableAdapter()
Me.TableAdapterManager1 = New ToolCollection.MyDatasetTableAdapters.TableAdapterManager()
Me.TimerAutostart = New System.Windows.Forms.Timer(Me.components)
Me.tcmain.SuspendLayout()
Me.tpMain.SuspendLayout()
Me.StatusStrip1.SuspendLayout()
@@ -121,7 +122,7 @@ Partial Class frmNIHauptseite
Me.tpMain.Location = New System.Drawing.Point(4, 22)
Me.tpMain.Name = "tpMain"
Me.tpMain.Padding = New System.Windows.Forms.Padding(3)
Me.tpMain.Size = New System.Drawing.Size(766, 521)
Me.tpMain.Size = New System.Drawing.Size(769, 521)
Me.tpMain.TabIndex = 0
Me.tpMain.Text = "Hauptseite"
Me.tpMain.UseVisualStyleBackColor = True
@@ -143,7 +144,7 @@ Partial Class frmNIHauptseite
Me.StatusStrip1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.tslblStatus})
Me.StatusStrip1.Location = New System.Drawing.Point(3, 496)
Me.StatusStrip1.Name = "StatusStrip1"
Me.StatusStrip1.Size = New System.Drawing.Size(760, 22)
Me.StatusStrip1.Size = New System.Drawing.Size(763, 22)
Me.StatusStrip1.TabIndex = 45
Me.StatusStrip1.Text = "StatusStrip1"
'
@@ -504,6 +505,9 @@ Partial Class frmNIHauptseite
Me.TableAdapterManager1.TBTC_MOVE_RENAMETableAdapter = Me.TBTC_MOVE_RENAMETableAdapter
Me.TableAdapterManager1.UpdateOrder = ToolCollection.MyDatasetTableAdapters.TableAdapterManager.UpdateOrderOption.InsertUpdateDelete
'
'TimerAutostart
'
'
'frmNIHauptseite
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
@@ -587,4 +591,5 @@ Partial Class frmNIHauptseite
Friend WithEvents btnEdit As Button
Friend WithEvents btnStartProfile As Button
Friend WithEvents pnlFooter As Panel
Friend WithEvents TimerAutostart As Timer
End Class

View File

@@ -120,9 +120,6 @@
<metadata name="StatusStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>248, 56</value>
</metadata>
<metadata name="StatusStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>248, 56</value>
</metadata>
<data name="Label6.Text" xml:space="preserve">
<value>Es wird empfohlen, das Intervall nicht auf weniger als 30 Minuten zu setzen, da der nächste Nachindexierungsdurchlauf nur gestartet werden kann, wenn der vorherige beendet wurde. Wenn zu erwarten ist, dass viele Dokumente nachindexiert werden sollen, sollte der Intervall für diesen Durchlauf entsprechend hoch gesetzt werden ( &gt; 2 Stunden).</value>
</data>
@@ -162,6 +159,9 @@
<metadata name="TableAdapterManager1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>984, 56</value>
</metadata>
<metadata name="TimerAutostart.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>1161, 56</value>
</metadata>
<metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>132</value>
</metadata>

View File

@@ -120,18 +120,28 @@ Public Class frmNIHauptseite
End If
If AUTOSTART_FIH Then
Start_NachindexierungThreads()
My.Settings.vNIRunning = True
My.Settings.Save()
Me.btnStartProfile.Enabled = False
_Logger.Info("AUTOSTART_FIH = True - Nachindexierung wird gestartet.")
AUTOSTART_FIH = False
_Logger.Info("AUTOSTART_FIH = True - Warte 30s auf Windream-Laufwerk.")
Me.lblStatus.Text = "(Status: Autostart ist aktiv. Warte 30s auf Windream-Laufwerk...)"
Me.tslblStatus.Text = "Status: Autostart ist aktiv. Warte 30s auf Windream-Laufwerk..."
Me.tslblStatus.Visible = True
TimerAutostart.Interval = 30000
TimerAutostart.Start()
Else
_Logger.Info("Nachindexierung Hauptformular wurde geladen - Nachindexierungslauf wird NICHT gestartet.")
End If
End Sub
Private Sub TimerAutostart_Tick(sender As Object, e As EventArgs) Handles TimerAutostart.Tick
TimerAutostart.Stop()
_Logger.Info("Startverzögerung abgelaufen - Nachindexierung wird gestartet.")
Start_NachindexierungThreads()
End Sub
Private Sub LoadProfilesIntoGrid()
ClassNIProfile.Init()