Home » SQL ServerRSS

Transition to Windows 7 "Application has stopped Working"

TIA:

My application has been installed successfully on a variety of Windows machines until the release of Windows 7 and 64 bit systems

I am using SQL Server compact 3.5 SP2 and have recently read about installing both 32 and 64 bit versions of their respective MSI files on a 64 bits in what is being called “chaining”.

I also am under the impressions that .NET is natively installed with Windows 7, so that seems not to be an issue.

Other than that all of the SQL 3.5 dll are being installed along with my application using InstallShield 2010 Premier edition.

Problem is once installed, when I launch my app I receive, “Application has stopped Working” and an attempt to “find a solution” which leads nowhere.

Wondering if you had any thoughts on which I might be missing as I make my transition in development from XP/Vista into the Windows 7 world.

Thanks

Cliff Sherrill

 

12 Answers Found

 

Answer 1

Hey Cliff,

   The details given by you are not sufficient for us to help.  Can you please try to take a dump of the process and see why application  has stopped  responding?  You can create the dump by going to task manager, right click on process entry and choose 'Save Dump File'.  You can use either windbg or Visual Studio to open the dump and analyze. 

    Also, it is not clear for us on how you hav come to conclusion that it is an issue  with SQL Server Comapct than any other. 

Thanks,

Laxmi Narsimha Rao Oruganti MSFT

 

 

Answer 2

Hi and thanks for the reply

Yes, It's true that I don't know the SQL Server Compact is the issue, but it has been my best guess on the issue.

1) My development machine is a Vista box using Visual Studio 2008. I am using Installshield 2010 Premier to deliver things via CDROM.

2) I have a windows  7 machine to use, but very little software on it.

3) ....and I am trying to create a new deliverable that will install and run on 64 bit  Windows systems.

4) I installed  both .NET Framework 4 and windbg on the 7 machine and did as you suggested above for the explorer.DMP file.

5) It basically responded that the "Symbol file could not be found"

sorry, but I hope this new bit of info helps.

Thanks again. Hope we keep working  on this one.

Cliff

 

 

Answer 3

Try to install SQL Compact manually using the original MSIs and install your app via xcopy - in other words rule out Installshield.
 

Answer 4

Hi:

In trying to run the .exe machine on my 32 bit  testing machine by double clicking the .exe via Windows Explorer, I get the "app has stopped  working" dialog box.

After looking for a solution I am asked to debug, after saying Yes, VS2008 Just in time debugger comes up and points to the second line of code below with the error message shown below the code.

However, if I run (start debugging) the app via VS2008 the program runs just fine?

connectionString = string.Format("DataSource = |DataDirectory|\\{0}", filename);
 SqlCeEngine en = new SqlCeEngine(connectionString);

The application  is trying to load native components of version 5692 that are incompatible with ADO.NET provider of version 8080. Incompatible versions  can lead to application instability and hence loading of sql  Server Compact has been aborted. Install the correct version of SQL server  Compact. Refer to KB article 974247 for more details.

Also I received a message indicating that sqlceme35.dll was not found but the file is indeed seems availble in the proper directory?

Thanks,

I'll keep looking and appreciate your help

 

Cliff

 

Answer 5

Hi:

Does this sound logical?

I have managed to put to different versions  of SQL Server Compact 3.5 on my development (32 bit  vista) system. One is File version 5692 and the other is File version 8080. Although both are 32 versions, I am mixing and matching apples and oranges?

If so, is one File version better than the other?
Which one should I keep for my final app (32 bit)
Any other suggestions on creating a 64 bit version, assuming I get the 32 bit version up and running.

 

Thanks,

Cliff

 

Answer 6

Hi,

The 5692 version is sql  Server Compact SP1 and 8080 is the version of SQL server  Compacr 3.5 SP2, and it seems that on you machine the binaries got mixed from both versions, may be becasue you have installed  SP1 of 32bit version and SP2 version of 64 bit  version or vice-versa. Please install both 32bit and 64bit of the same version.

Thanks,

Tarun Ramsinghani

 

Answer 7

Hi:

1)Installed the working  5692 (SP1) version of SQL CE and my app onto my windows  7 machine where I had previously installed  SP2 (8080) of both the 32 bit  and 64 bit versions  of  SQL CE with their respective  MSI files. I then installed the working version of my app (works on my Vista 32 development machine), using XCOPY in an attempt to rule out my installshield  2010 Premier as the problem. The app version of SQL CE was SP1.

Result: Upon a double click of my app, I received “App stopped  working”
Thought: Incompatible versions of SP2 installed on Win 7 machine and SP1 on application  deployment using private/local deployment of SQL CE 3.5

2) I then created a version on my 32 Vista machine using SP2 (8080) of SQL CE 3.5. Used InstallShield and installed this SP2 version via burned CD onto my 32 Vista development machine.

Result: Installed just fine and upon launching my app all was well, program ran just fine.
Thought: InstallShield seems to be working and have the necessary construction at least on my development machine and I am able on the Vista 32 machine to be able to interchangeably use both SP1 and SP2 of CE.

3) I then, using XCOPY, copied all of my files  (app plus CE SP2) onto my Windows 7 machine that had previously had SP2 of the msi  files (SSCERuntime_x86-ENU.msi and SSCERuntime_64-ENU.MSI). No installshield.

Result: Upon a double click of my app, I received “App stopped working”
Thought: Don’t know? I am putting my app and SQL files in a Program Files (x86) folder assuming as this is a 32 app that this is the proper thing to do?

…but I just can’t seem to get my app to run on the 64 bit Win 7 machine.

Thanks, hope this info is of help to you.

Cliff

 

Answer 8

Hi,

It seems that you have 32bit SP1 and 64bit sp2  version on your windows  7 box. This combination will not work. you should install 32bit and 64 bit  both of the same version to get your app working. 

If you looking for private deployment of sqlce for both 32 bit and 64 bit version you can look the following posts which have clear instruction on how to do that.

http://blogs.msdn.com/stevelasker/archive/2008/10/22/privately-deploying-sql-server-compact-with-the-ado-net-entity-provider.aspx

http://azazeal.xelixis.net/post/embedding-sql-server-compact-35-in-your-application-for-both-x32-and-x64-systems.aspx

-Tarun Ramsinghani 

 

Answer 9

Hi and TIA:

No, I am certain that on the windows  7 machine I have the SP2 version only.

I have downloaded SSCERuntime-ENU.exe from Microsoft stating it was File Version 8080 or SP2.

Upon extracting, I got SSCERuntime_x64-ENU.msi and SSCERuntime_x86.msi and these are the two files  that I installed  on the Win 7 machine in what has been called  chaining of the two for the Win 7 environment. First I installed the x86 version and then the x64 version as the install.txt file indicated.

I will, look at the two link you have listed and do very much appreciate that info.

 

Thanks,

 

Cliff

 

Answer 10

The "embedding" article above led me to place a x86 and an AMD64 folder containing the respective  7 SQL files  my Visual Studio 2008 project (Solution Explorer) which I did. The x86 folder has the 32 bit  7 files and the AMD64 folder has the 64 bit 7 files, both are SP2 versions.

I had originally thought that what I needed to do was to install the Runtime msi  files for both 32 and 64 bit on my target Win 7 machine independently of my app and I have done that also.

...well, now I have both, that is I have installed  both of the SP2 msi files (32 and 64 bit) on my target Win 7 machine and I have added to my Visual Studio 2008 project two new folders x86 and AMD64 with their respect 7 files.

App continues to work just fine via VS2008 under Debug | Start Debugging

 

Next, burn a CD via Installshield including the two new folders and respective files.

Nope, still getting the app has stopped  working message when I try and install on the Win 7 target machine and I believe that I am using SP2 on both the 32 Vista development system and the target Win 7 machine.

 

The other above referenced article talks about "Adding the Entity Provider Entry". I have not tried that one yet, one thing at a time, but will read  and try it!

 

Thanks,

...any other ideas

 

Answer 11

Hi:

The Steve Lasker blog Post was the key and things are looking much better. I certainly do appreciate the help.

One last question. Is it absolutely necessary to install the 32 and 64 bit  SQL CE 3.5 SP2 msi  files if I am installing  a private deployment of SQL CE where the binaries (dlls) are part of the C# project and will be installed  to the target directory?

Thanks,

Cliff

 

Answer 12

Hi,

Sorry, was not able to look your previous posts. The answer is you need not install anything on target box if you have copied the dll's in your project target folder, but if SQL Server Compact is installed  on the machine then your application  will use the installed copy instead of one you copied with your project.

 
 
 

<< Previous      Next >>


Microsoft   |   Windows   |   Visual Studio   |   Follow us on Twitter