Question

My client is retiring a server and wishes to move our application's data from SQL Server 2005 to SQL Server 2008r2. We use Merge Replication via IIS to synch the data to Windows Mobile 6.5 devices. The devices currently are running SQL Server CE3, and we'd rather avoid the cost of coding the application to use Sql Server CE 3.5, deploying the new version to hundreds of devices, etc.

Unfortunately, although we were able to get the server side replication conversion set up correctly using 90 schema for all pieces, the clients are not able to get to the server. They seem to be stopped when they hit IIS, reporting that they are not able to reach the publication.

IIS was not changed as part of the conversion, so there should be no configuration problem there. In fact the diagnostics for the IIS replication proxy (i.e SQLCESA30.dll?diag) report that all is well.

It's clear that the snapshot directory is configured correctly as well. It appears that the problem occurs specifically when IIS attempts to communicate via SQLCESA30.dll with SQL Server 2008 R2.

This leads me to believe that there is some basic incompatibility with SQL Server CE 3.0 and SQL Server 2008 R2. Can anybody confirm this is true or offer a workaround?

Was it helpful?

Solution

You will have to install the 3.5 agent, and that also means pointing all devices to a new URL:

https://yourserver/yourdir/sqlcesa35.dll

See this rather confusing blog post for more info: http://blogs.msdn.com/b/sqlservercompact/archive/2007/12/19/connectivity-cross-version-compatibility-sql-server-compact-3-5.aspx

Your scenario is: "2.1.2 SQL Server Compact versions 3.0 or 3.1 and SQL Server 2008 (D4)"

"... a single SQL Server Compact 3.5 Server Agent URL can be used by all SQL Server Compact version 3.x Clients."

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top