HKLM\SOFTWARE\Microsoft\Microsoft SQL Server Compact Edition\v3.5\ENU To find out why, I had to dig into the registry, where I found all kinds of version information about the SQL Server Compact Edition components I’d installed, the DLL version, and the service pack levels: There, I found my issue – that file version was a different version on each machine (.0 on one and. X64: C:\Program Files (x86)\Microsoft SQL Server Compact Edition\v3.5\Devices\ X86: C:\Program Files\Microsoft SQL Server Compact Edition\v3.5\Devices\ It turns out that when you add a reference to this DLL in a Compact Framework project, Visual Studio is using the following version (depending on whether you’re on an x86 or 圆4 machine): However, searching for details on the different versions of this DLL in the wild wasn’t fruitful – did I have SQL Compact 3.5 RTM installed (3.5.0.0)? If I’d installed v3.5 SP2, why was it shown as 3.5.1.0 (shouldn’t it be 3.5.2.0?) on one machine, but as 3.5.0.0 the other? To top that off, both versions (v3.5.0.0 and v3.5.1.0) were in my GAC as MSIL – what?
I had a DLL version mismatch – a general problem when you’ve got multiple computers you’re developing something on, since you have to ensure the same versions and packages are installed on each. If this reference is required by your code, you may get compilation errors. Check to make sure the assembly exists on disk. Could not locate the assembly “, Version=3.5.0.0, Culture=neutral, PublicKeyToken=3be235df1c8d2ad3, processorArchitecture=MSIL”. NET reference list on both machines) and checked it back in, then I’d get the same situation on my first computer with the following error message:Ĭould not resolve this reference. If I dropped the reference, re-added it on my second computer (BTW – only one version was listed in my. Could not locate the assembly “, Version=3.5.1.0, Culture=neutral, PublicKeyToken=3be235df1c8d2ad3, processorArchitecture=MSIL”. The Problem:Īfter checking the project into source control on one computer and fetching it on the other, I’d see a broken reference to : Missing reference to Īnd I received the following message (and about 100 errors – one for every reference to the namespace in my code) when I attempted to compile:Ĭould not resolve this reference. In researching it, I couldn’t find good information about the different versions of the DLL, so thought some future developers might enjoy what I found out, all in one place.
#Microsoft sql server compact 3.5 sp2 windows#
While developing a Windows Mobile device application on two different computers, I thought I’d installed SQL Server Compact Edition 3.5 SP2 on both of them, but ran into some version difference issues. Here’s a shot of the screen where I had to make this change, in case there’s any confusion:Īuthor Ryan McCauley Posted on MaApCategories SQL Compact, SQL Server Tags replication, sql compact, Updates Leave a comment on “Initializing Reconciler has failed” when setting up SQL Compact replication Matching up SQL CE DLL version numbers Add the user you’re connecting your subscriber with to this list.Select “Properties” and then open the “Publication Access List” tab.In SQL Management Studio, right-click the publication.At some point, I’d changed the user I was using to set up the subscription, and that user didn’t have rights to view the publication list on my SQL Server. Sure enough, executing that command in SSMS, logged in as my replication user, gave me the same error message. The remote server “SQLSERVERNAME” does not exist, or has not been designated as a valid Publisher, or you may not have permission to see available Publishers. Searching for the error online comes back with a dozen recommendations, but when I traced the replication sync attempt, I saw the following statement executed:Įxec sp_helpdistpublisher N’SQLSERVERNAME’įollowed immediately by the error message: I had confirmed that SQL Compact web replication was set up correctly, and checking the URL came back as expected. Initializing the SQL Server Reconciler has failed. NET Compact Framework client on a mobile device, I was receiving an error message when I attempted to start the synchronize: