Public Sub New() InitializeComponents() ReadFiles() End Sub Private Sub ReadFiles() Dim loThread as System.Threading.Thread = new System.Threading.Thread(AddressOf _readfiles()) loThread.Start() End Sub Private Sub _ReadFiles() ... here some code to scan files Dim loDelegate as _dlg_updateprogress = New _dlg_updateprogress(AddressOf _on_updateprogress) Dim loForm as System.Windows.Forms.Form = Me.FindForm() lcProgressState = String.Format("Loading {0}%",lnProcentValue) loForm.Invoke(loDelegate,New Object(){lcProgressState}) End Sub Delegate Sub _dlg_updateprogress(ByVal tcProgressState as String) Private Sub _on_updateprogress(ByVal tcProgressState as String) Me.lblProgress.Text = tcProgressState End Sub>Hi All,