tags:

views:

11

answers:

1

Hi:

I have detected a problem running my application under Vista 64 bits OS.

My application is developed using VB.NT 2008 and compiled as x86

I have a main form. In this form there is an option to open other form. TThis second form must return a few values to the main form. When the user click on this 2nd form, to return values, this form hangs up (2nd form hangs up)

But for what I could have known, it continues executing the rest of code that exists after to open form. I want to say that the form dialog (2nd form) is not closed (hangs up) but it the code continues being executed, because I have seen that inserts the data in the database.

EXAMPLE CODE

main form

private sub SaveData()

 Dim f As New frmxxxx
    Try
      If f.ShowDialog = Windows.Forms.DialogResult.OK Then
        serie = f.f_serie
        doc = f.fdoc      
      Else
        If Not f Is Nothing Then
          f.Dispose()
          f = Nothing
        End If
        Exit Sub
      End If
    Catch ex As Exception    
      gSaveError(Me.Name, ex.ToString)
    Finally
      If Not f Is Nothing Then
        f.Dispose()
        f = Nothing
      End If
    End Try
'From here there are code to insert data in the database
......
.....

End Sub

2nd form (frmxxxx)

Dim dtseries As DataTable
-------

  Public ReadOnly Property fserie() As String
    Get
      Return Me.cmbDocVtas.SelectedItem
    End Get
  End Property
  Public ReadOnly Property fdoc() As Boolean
    Get
      Return Me.chkAp.Checked
    End Get
  End Property


Private Sub frmXXXX_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
 Me.dtseries = Nothing
End Sub

Private Sub btOk_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btOk.Click
   Me.DialogResult = DialogResult.OK
End Sub

There is something that and it works differently in systems of 64 bits? There is incorrect code?

In other computers it works well,

The application not returns any error and any exception.

Thanks in advance for any sugestion or help

A: 

Leave the application to run, my bet is that either it'll process completely, or you'll get an error somewhere. I had something similar happening with an application I've been working on recently.

I left my app to run thinking it'll either finish what it's doing eventually or throw an error. Turns out I was getting an OutOfMemoryException later on during execution...

What you might find is that the application's taking longer to process the database information than normal. You could also use a DataReader if this is the case

HTH

Logan Young