Остановить поиск, запущенный в отдельном потоке - Visual Basic .NET

Узнай цену своей работы

Формулировка задачи:

Всем доброго дня.
Листинг программы
  1. Imports System.Threading
  2. Public Class Form1
  3. Public Class Param
  4. Private _Fold As String
  5. Private _Mask As String
  6. Public Property Fold As String
  7. Get
  8. Return _Fold
  9. End Get
  10. Set(value As String)
  11. _Fold = value.ToString
  12. End Set
  13. End Property
  14. Public Property Mask As String
  15. Get
  16. Return _Mask
  17. End Get
  18. Set(value As String)
  19. _Mask = value.ToString
  20. End Set
  21. End Property
  22. End Class
  23. Private Delegate Sub Add_Range(ByVal T As String)
  24. Private Sub Write_2_lst(ByVal T As String)
  25. If Not (InvokeRequired) Then
  26. ListBox1.Items.Add(T)
  27. Else
  28. Invoke(New Add_Range(AddressOf Write_2_lst), T)
  29. End If
  30. End Sub
  31. Private Sub Search(p As Param)
  32. Dim Dirs() As String
  33. Dim files() As String
  34. Try
  35. files = System.IO.Directory.GetFiles(p.Fold, p.Mask)
  36. For i = 0 To files.Length - 1
  37. Write_2_lst(files(i))
  38. Next
  39. Catch
  40. End Try
  41. Try
  42. Dirs = System.IO.Directory.GetDirectories(p.Fold, "*", IO.SearchOption.TopDirectoryOnly)
  43. If Not Dirs Is Nothing Then
  44. For Each cdir In Dirs
  45. Dim p1 As New Param
  46. p1.Fold = cdir
  47. p1.Mask = p.Mask
  48. Search(p1)
  49. Next
  50. End If
  51. Catch
  52. End Try
  53. End Sub
  54. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
  55. Dim p As New Param
  56. p.Fold = "C:"
  57. p.Mask = "*.png"
  58. Dim th As New Thread(AddressOf Search)
  59. th.Start(p)
  60. End Sub
  61. End Class
Код взят от сюда:Поиск файлов по папке и подпапкам (поправить код) Как мне остановить поиск? Заранее благодарю.

Решение задачи: «Остановить поиск, запущенный в отдельном потоке»

textual
Листинг программы
  1.     Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
  2.         p.Fold = TextBox7.Text
  3.         p.Mask = TextBox8.Text
  4.         'th.Suspend()
  5.         th.Abort()
  6.     End Sub

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 4 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут