I have a need to copy a large database where it runs for about 4 to 5 minutes, so I wish to use a ProgressBar. I wish to use the ProgressBar in Marguee Mode. Once the routines are done I wish to either notify the user or simply exit the program. Here's the problem. If I simply call the routines to copy the records the ProgressBar won't move. I realize that it's because the focus is on the copies and not the UI so that won't work. So then I tried to use a thread and then the ProgressBar worked. The problem with this however is that I have to know when the job is done so I can notify the user. So I tried using the Thread.Join method and once again the ProgressBar stopped. Next I tried using the Do While Thread.IsAlive, and once again the ProgressBar wouldn't run. Are there any simply solutions to this? Thanks in advance.