Application crashing when moving from CE5 to CE7

MC3090 -> MC32N0 Upgrade Issues

 

Background:

Our customer has software, written in .NET 3.5 Compact C#. It sends batch orders via FTP. Currently the application runs on MC3090s, and the client wants to upgrade to MC32N0 devices.

 

Problem:

On the MC32N0s the application crashes with an Access Violation to the desktop after sending 1-9 orders. This crash does not occur on the MC3090s. The crash occurs in the netcfagl.dll, and cannot be caught in the Visual Studio 2008 debugger. The crash occurs when the Order form closes and the MainMenu form is redisplayed. The MainMenu form is displayed from Application.Run(MainMenu), and it displays the Order form with a orderForm.ShowDialog() call in a using block.

 

My Investigations:

Stepping through the code, there is no obvious line of code or command that causes the crash. The crash is apparently happening somewhere in the main event loop of the MainMenu form.

 

Right now, the application launches the Motorola MSP client to check for updates after each order is sent. If I disable launching the MSP process in the background, the application will be much more stable, but not totally stable (still crashes, but takes significantly longer before crashing).

 

I checked for incorrect p-invoke calls, but all the calls used (hiding the start bar, setting the window to fullscreen) appear to release any resources they use, and I haven't found any obvious resource leaks.

 

The application uses the Rebex .NET Compact FTP/SSL library. I tried updating to the latest version, and saw no difference in stability.

 

Are there any known issues to be taken into consideration for MC32N/CE7 devices for old project migrations?