Salve a tutti.

Come da titolo, ho sviluppato un programma in Vb.Net su piattaforma Windows 7 64bit.

Il programma lavora con un database che gira su un pc-server con SQLServer 2008 Express.

L'installazione avviene correttamente su tutti i computer che montano Windows 7 64bit; di conseguanza il programma funziona benissimo.

Il problema sorge quando installo il programma su Xp.

L'installazione avviene correttamente (richiede .Net 4.0 + Client) ma dopo aver digitato la password di accesso al db il programma non parte (resta solo la maschera di Log-In).

Se digito nuovamente la password il programma va in crash perché la connessione è aperta.
Quindi la connessione avviene correttamente ma non visualizza il form principale.

Il collegamento al db avviene correttamente perché ho notato che se digito una password errata il programma non mi fa connettere mostrandomi un MsgBox (password errata).

1) Potrebbe dipendere dal fatto che il SO dove gira Xp è a 32bit e io compilo il programma su una macchina a 64bit?
2) Il Framework richiesto non dovrebbe provvedere adattandosi alla macchina sulla quale gira il programma?
3) Manca qualche dll per Xp?
3) Quali altri test potrei fare?

Posto di seguito il messaggio di errore (GITS è il nome del programma):

================================================== ======
Le informazioni su come richiamare il debug JIT (Just-In-Time) anziché questa finestra sono riportate in fondo al messaggio.

************** Testo dell'eccezione **************

System.InvalidOperationException: Impossibile modificare la proprietà "ConnectionString".
Lo stato attuale della connessione è aperto. in System.Data.SqlClient.SqlConnection.ConnectionStri ng_Set(String value)
in System.Data.SqlClient.SqlConnection.set_Connection String(String value)
in GITS.MySQL.ConnettiSQLServer(String User, String Pwd)
in GITS.Login.txtPassword_KeyPress(Object sender, KeyPressEventArgs e)
in System.Windows.Forms.Control.OnKeyPress(KeyPressEv entArgs e)
in System.Windows.Forms.Control.ProcessKeyEventArgs(M essage& m)
in System.Windows.Forms.Control.ProcessKeyMessage(Mes sage& m)
in System.Windows.Forms.Control.WndProc(Message& m)
in System.Windows.Forms.TextBoxBase.WndProc(Message& m)
in System.Windows.Forms.TextBox.WndProc(Message& m)
in System.Windows.Forms.Control.ControlNativeWindow.O nMessage(Message& m)
in System.Windows.Forms.Control.ControlNativeWindow.W ndProc(Message& m)
in System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
************** Assembly caricati ************** mscorlib
Versione assembly: 4.0.0.0
Versione Win32: 4.0.30319.269 (RTMGDR.030319-2600)
Base di codice: file:///c:/WINDOWS/Microsoft.NET/Framework/v4.0.30319/mscorlib.dll ----------------------------------------
GITS Versione assembly: 1.0.0.0
Versione Win32: 1.0.0.0
Base di codice: file:///C:/Documents%20and%20Settings/Emanuele/Impostazioni%20locali/Apps/2.0/WV6WO06Z.X9Q/1716LZXB.BWM/gits..tion_c034dc1cc0c17aae_0001.0000_a0639631948c 4660/GITS.exe ----------------------------------------
Microsoft.VisualBasic
Versione assembly: 10.0.0.0
Versione Win32: 10.0.30319.1 built by: RTMRel
Base di codice: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/Microsoft.VisualBasic/v4.0_10.0.0.0__b03f5f7f11d50a3a/Microsoft.VisualBasic.dll ----------------------------------------
System Versione assembly: 4.0.0.0
Versione Win32: 4.0.30319.269 built by: RTMGDR
Base di codice: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Core
Versione assembly: 4.0.0.0
Versione Win32: 4.0.30319.1 built by: RTMRel
Base di codice: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll ---------------------------------------- System.Windows.Forms
Versione assembly: 4.0.0.0 Versione Win32: 4.0.30319.278 built by: RTMGDR Base di codice: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll ----------------------------------------
System.Drawing
Versione assembly: 4.0.0.0 V
ersione Win32: 4.0.30319.282 built by: RTMGDR
Base di codice: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll ----------------------------------------
System.Runtime.Remoting
Versione assembly: 4.0.0.0
Versione Win32: 4.0.30319.1 (RTMRel.030319-0100)
Base di codice: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Runtime.Remoting/v4.0_4.0.0.0__b77a5c561934e089/System.Runtime.Remoting.dll ----------------------------------------
mscorlib.resources Versione assembly: 4.0.0.0
Versione Win32: 4.0.30319.1 (RTMRel.030319-0100)
Base di codice: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/mscorlib.resources/v4.0_4.0.0.0_it_b77a5c561934e089/mscorlib.resources.dll
----------------------------------------
System.Data
Versione assembly: 4.0.0.0
Versione Win32: 4.0.30319.1 (RTMRel.030319-0100)
Base di codice: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_32/System.Data/v4.0_4.0.0.0__b77a5c561934e089/System.Data.dll
----------------------------------------
System.Configuration
Versione assembly: 4.0.0.0
Versione Win32: 4.0.30319.1 (RTMRel.030319-0100)
Base di codice: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Xml
Versione assembly: 4.0.0.0
Versione Win32: 4.0.30319.1 built by: RTMRel
Base di codice: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
System.Transactions
Versione assembly: 4.0.0.0
Versione Win32: 4.0.30319.1 (RTMRel.030319-0100)
Base di codice: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_32/System.Transactions/v4.0_4.0.0.0__b77a5c561934e089/System.Transactions.dll
----------------------------------------
System.EnterpriseServices
Versione assembly: 4.0.0.0
Versione Win32: 4.0.30319.1 (RTMRel.030319-0100)
Base di codice: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_32/System.EnterpriseServices/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.EnterpriseServices.dll ----------------------------------------
System.Data.resources
Versione assembly: 4.0.0.0
Versione Win32: 4.0.30319.1 (RTMRel.030319-0100)
Base di codice: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Data.resources/v4.0_4.0.0.0_it_b77a5c561934e089/System.Data.resources.dll ----------------------------------------
System.Windows.Forms.resources
Versione assembly: 4.0.0.0
Versione Win32: 4.0.30319.1 built by: RTMRel
Base di codice: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms.resources/v4.0_4.0.0.0_it_b77a5c561934e089/System.Windows.Forms.resources.dll
----------------------------------------
************** Debug JIT **************
Per abilitare il debug JIT, è necessario impostare il valore jitDebugging nella sezione system.windows.forms del file di configurazione dell'applicazione o del computer (machine.config). L'applicazione inoltre deve essere compilata con il debug abilitato. Ad esempio: <configuration> <system.windows.forms jitDebugging="true" /> </configuration> Quando il debug JIT è abilitato, tutte le eccezioni non gestite vengono inviate al debugger JIT registrato nel computer, anziché essere gestite da questa finestra di dialogo.
================================================== ===================

Grazie per l'aiuto.