My desktop app uses the private deployment of SQL CE to satisfy 32/64 bit issues.
I ran into a problem today with a customer who kept getting SQL CE "mismatch" errors when starting up my app.
We ended up finding that it had an older version of the SQL CE dll's installed in the GAC.
The customer believes the only other program installed since my desktop app was MS Office. My desktop app worked before, though the customer wasn't sure if MS Office was definitely the only program installed since. I am not sure if MS Office
installs SQL CE in the GAC, but that would be pretty frustrating.
Once we inserted the same version of my desktop app's SQLServerCE.dll and SQLServerCE.Entity.dll into the GAC, everything worked fine. I am not sure if this messed up any of his programs using the older version, but my desktop app worked fine thereafter.
What is the best approach to this issue?
Should I put a bat file that automatically registers my dll's in the GAC on install? I wouldn't think so because I don't want to mess up other programs using other versions.
Is there a way to force my program to use the "local version" of the dll's as opposed to the GAC?
Thanks for any help you can provide.
View Complete Post