Click here to Skip to main content
12,957,526 members (58,982 online)
Rate this:
Please Sign up or sign in to vote.
See more:
I am trying to display waiting message which is actually a form while long process is running in some different file. Issue i am facing is the form get disappeared once the process gets started but its still active and running the process

My code:
 Dim objWait As New frmWaitupdate
    Dim strReply As String
    Dim ischange As Boolean
    Dim obj1 As New MyBO.UpdateSchemaBO()
    ischange = obj1.CheckSchemaChanges(Application.ProductVersion.ToString())
    If ischange = True Then
        lblMsg.Text = "Schema changes found please wait  Please wait."
        Me.Visible = True
        strReply = obj1.UpdateSchema(Me)
        If strReply <> "" Then
            MessageBox.Show(strReply, "abc")
            MessageBox.Show("Schema updated successfully", "abc")
        End If

    ElseIf ischange = False Then
        MessageBox.Show("No schema changes found", "abc")

        End If
    End If

As the process goes in UpdateSchema() which takes around 30-45 sec to finish the form gets disappear.Is there any way to keep the form intact on screen until my process gets complete??
Posted 27-Feb-13 21:00pm
Updated 27-Feb-13 21:02pm

1 solution

Rate this: bad
Please Sign up or sign in to vote.

Solution 1

Your problem is that your long-running code is running on the UI (startup) thread and preventing any windows messages from being processed, like WM_PAINT which causes your windows to repaint themselves.

Your solution is to move the long-running code to a background thread. You can do this in a number of different ways, like using the Thread class, the Task Parallel Library, the BackgroundWorker (suggested!) component, or what have you.

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

    Print Answers RSS
Top Experts
Last 24hrsThis month
OriginalGriff 6,994
CHill60 3,550
Maciej Los 3,312
ppolymorphe 2,170
Jochen Arndt 1,973

Advertise | Privacy | Mobile
Web02 | 2.8.170525.1 | Last Updated 28 Feb 2013
Copyright © CodeProject, 1999-2017
All Rights Reserved. Terms of Service
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100