I am using SQL Server CE 3.1 in my Delphi desktop application. Everything has been going fine until recently when one of the testers installed Visual Studio 2008 onto the same computer that had my software on it. Now, when she runs my software she gets a message indicating that her database is from an older version of SQL Server Compact Edtion and that she should update it. Both versions of the CE dlls are registered (sqlceca30.dll and sqlceca35.dll as well as sqlceoledb30.dll and sqlceoledb35.dll) but it seems to get the 3.5 version of things now. Unregistering the 3.5 dlls fixes her problem, but that's not a practical solution as once this is deployed we can't be unregistering people's dlls. I could upgrade to 3.5, but since there's no version of mangement studio to manipulate schema/data for 3.5 (yet) and I don't really need the new features I don't want to. Also, it wouldn't address my underlying problem (next time there's an update I've got the same issue) and I could then end up being the one to break someone's 3.1 app. Has anyone seen this? Am I missing something fundamental? Since this is the piece that ties dbExpress and CE together, I thought I'd start asking here. Thanks!
Update: After looking into this further, I have found that it is only the sqlceoledb35.dll that seems to make the difference (if I unregister only that one,everthing works). This strikes me as odd, since I am specifying sqlceoledb30.dll as my VendorLib. Do I have something setup incorrectly that it is ignoring VendorLib?
MS SQL CE 3.1 and 3.5 same machine
Found an answer, looking for an alternative
Okay, I found a way to get this to work but it required a change and recompile to dbxsda40.dll and it's only a fix for people who are in my situation (have 3.1 an 3.5 registered on computer and want to access 3.1). What I am wondering is if there is a way to tell sda to use 3.1 (cv30) as default? Like my maxdatabase question from before (http://devart.com/forums/viewtopic.php?t=12600) is there a 'Custom String=CompactVersion=cv30' that can be set?
I can tell you very specifically what's happeing in the code if you would like, just not sure the forum is the place to post that.
I can tell you very specifically what's happeing in the code if you would like, just not sure the forum is the place to post that.
-
- Devart Team
- Posts: 925
- Joined: Thu 17 Nov 2005 10:53