excel 80080005 服务器运行失败,Word 2016自动化生成"错误:80080005服务器执行失败"

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值