I have Office 2016 preview installed on a Windows 7 (Ultimate edition) developer machine along with VS 2010. I have the following simple C# WinForms application that attempts to create a Word document through automation:
using Word = Microsoft.Office.Interop.Word;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
Word.Application word = new Word.Application(); //
...
}
}
The application generates the following error:
Additional information: Retrieving the COM class factory for component
with CLSID {000209FF-0000-0000-C000-000000000046} failed due to the
following error: 80080005 Server execution failed (Exception from
HRESULT: 0x80080005 (CO_E_SERVER_EXEC_FAILURE)).
Most search results for the error in question above involve cases where people are trying to run (earlier) versions of Office programs on actual servers.
Am I missing something?
PS: Office 2016 is itself a strange beast in that it has no entry in Add/Remove Programs, and its deployment tool only has options for selecting applications to exclude from downloading, and no option for repairing an existing installation.
Talk1:
If you previously had any other Office installed in that same Windows, there's a high probability that it wasn't completely uninstalled or became corrupt. I'd suggest you to uninstall any previous version if you have any as a first step. If problem persists, I'd suggest you to open the Registry Editor, go to HKLM\Typelib and search for "Interop", for each folder there should be only one folder inside, as each folder represent a version; for example: Word 8.5 > Office 2010, 8.6 > 2013
Talk2:
Thanks. I assume you mean HKEY_CLASSES_ROOT, not HKLM?
Talk3:
Ooops, yes, that's what I meant
Talk4:
Prior to the above error, I was getting an "Unable to cast COM object" error. As you mentioned, I fixed that by removing a superfluous "8.6" entry under a key for Word starting with "00020905-..." (these all end with 46!). That fixed that problem (I also referred to this answer: stackoverflow.com/a/12962795/360840 ), but immediately after, I started getting the above (server) error. I am guessing that Office 2016 thinks it is running on a server.
Talk5:
I have Windows 10, VS2015 and Office 2016 on my PC, which never had any other Office installed. Let me install Office tools and see what happens
Solutions1
I tried to mimic your system as much as possible, by creating a WinForms project and targeting .NET 4.0. I'm able to create a Word.Application object without any exception.
I'm pretty sure that you are getting the error due to a corrupt Windows Registry, likely corrupted by Office itself.
There are 3 more things you can do before giving up:
Go here and follow the steps to clean up the Registry using scanreg /fix
Uninstall every Office product, open the Registry and delete EVERY key related to Office, then install 2016 again (make sure to backup all your data first)
Reinstall Windows.
I worked in an application support position where the application was very integrated with Excel and Word through add-ins, and I had to research and explain to the development team (another vendor) why this happened and how it can be solved in some cases.
Until I found step 1 above and the steps I told you in my first comment to your question, every single case was solved using step 3.
Talk1:
Thank you so much for your efforts, much appreciated, as well for the guideline.
Talk2:
Unfortunately, scanreg is not on my Windows 7 system, and I can't find a reliable site for download! :(
Talk3:
Try this. And you are welcome, these issues suck