Desktop Deployment to machine with no SqlCe installed - app requires SqlCe4 RRS feed

  • Question

  • I have an application that works fine if SqlCe 4 is installed on the target machine.

    I want to deploy this desktop application so that the user does not have to install SqlCe4

    I have deployed  the SqlCe private folder the amd64 and x86 dlls
    and made sure that the application references the System.Data.SqlServerCe.dll in the folder containing the application exe...

    No joy - running the application across the network from my development machine works
    but not from the machine to which it was deployed on which I have uninstalled SqlCe4


    Exception Type : System.Data.SqlServerCe.SqlCeException
                       Errors : System.Data.SqlServerCe.SqlCeErrorCollection  

    Message : Unable to load the native components of SQL Server Compact corresponding to the ADO.NET provider of version 8435. Install the correct version of SQL Server Compact. Refer to KB article 974247 for more details.
                       Source :
                    ErrorCode : -2147467259  

    Monday, April 4, 2011 8:08 AM

All replies

  • Are you copying the required files locally or running from the network drive??

    (If so, try to copy locally)

    Make sure you have the required folder structure - see

    Visit my SQL Server Compact blog - Please mark as answer, if this was it.
    Monday, April 4, 2011 8:42 AM
  • Thanks for your response - essentially I think you got it in one - Great it works when I move the files to the target machine and then run the exe on the target machine

    But, I am deploying the application using a new installshield express project - I cannot get installshield to create the two sub folders in the installation folder - when I add the sub folders containing the amb64 and x86 folders the installshield deployment project emits an msi rather than an exe and the install does not work....

    Monday, April 4, 2011 12:02 PM
  • Why not use a VS setup project, as you can see in my blog post, it works.
    Visit my SQL Server Compact blog - Please mark as answer, if this was it.
    Monday, April 4, 2011 12:28 PM
  • Vs setup is apparently not going to be supported in future versions of vs - so my reluctance build this dependency into my application.

    My application already does things with the registry and requests folder locations on the target machine into which some of the SqlCe databases are deployed. The application uses multiple SqlCe databases as repositories for information the user can move around on the target machine and move between machines. Installsheild does everything I require ( and have working) with the exception of being able to create the two folders for the SqlCe private dlls.

    I am having a look at Vs setup project - but the support for custom actions e.g. requesting installation folders within the users file system appear to be primitive with little or no support for dependencies e.g. .Net Framework 4. I am looking at quite a bit of work to get just a little bit further.

    I suspect that the sub folder issue is related to the express edition of Installshield only supporting a single feature and sub folders are used for feature support. But I have had no response from the InstallShield people.

    Many thanks for your help so far .. I have a working installation on the target machine but still do not have a robust deployment mechanism.




    Monday, April 4, 2011 4:04 PM