I've written a program which shifts data around between Access, Excel and some other programs. I have office 2016 and have used the associated comm references in my code. I've used clickonce to deploy. Works fine on my computer. And when deployed to others with different versions of office it also works fine.
However after being used on a computer with a different version of office, similar programs which previously worked on that computer no longer work. I believe this may be because when my program is installed, it registers the 2016 version of office dll's on the local computer, which, at least in the case of access, are not backwards compatible. The solution is to open the old programs as administrator, which I understand allows those programs to reset the registered dll's to whatever version of office they are built on, but means my program no longer works.
First I looked at reference isolation but I now understand Microsoft will not allow you to isolate any office dll's. Any ideas on how to prevent my program from interfering with other similar programs on users computers.
below is the error message when older programs run:
"can't be started. was unable to initialize the Windows Registry. Rerun Microsoft Access or Microsoft Office Setup to reinstall."