I've written a Windows Mobile Standard/Smartphone app (my first) that uses a SQL Server Compact Edition database as the backend. I had no problem testing in the emulator in Visual Studio as it installed SqlCe to the emulator for me. When I created my deployment project, though, the resulting CAB file installed on my phone fine, but wouldn't run because it couldn't find the SqlCe library.
Does SqlCe need to be installed as a separate CAB like .NET CF 3.5? If so, where can I get this (I didn't find anything like this on MS's site)? Or can I just include the System.Data.SqlServerCe.dll
file in my deployment?
Edit:
I added the above mentioned DLL to the deployment and it works, so that answers my initial question. But I have ideas for more applications, most of which will also use SqlCe. Rather than include a copy of the DLL with each install, I'd rather have a single source for the SqlCe library. I guess I could create my own install folder just for the DLL, but I'm guessing there's probably a more "official" way of doing this. So I'm back to my first intial question: is there a CAB for SqlCe? I don't want to install files if the user already has them, and certainly not install duplicates if I don't need to.