Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/301.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Office互操作时应用程序停止处理_C#_Vb.net_Ms Word_Ms Office - Fatal编程技术网

C# Office互操作时应用程序停止处理

C# Office互操作时应用程序停止处理,c#,vb.net,ms-word,ms-office,C#,Vb.net,Ms Word,Ms Office,我遇到了一个问题,当我的应用程序到达某个Office互操作命令时,它停止了任何操作,最近是Word的关闭 worddoc.SaveAs("ExampleFile.doc", FileFormat:=Word.WdSaveFormat.wdFormatHTML, AddToRecentFiles:=False) worddoc.Close() wordap.Quit() wordap = Nothing 在某些情况下,它根本不可复制,在到达worddoc.close()后,应用程序只是停止继续。

我遇到了一个问题,当我的应用程序到达某个Office互操作命令时,它停止了任何操作,最近是Word的关闭

worddoc.SaveAs("ExampleFile.doc", FileFormat:=Word.WdSaveFormat.wdFormatHTML, AddToRecentFiles:=False)
worddoc.Close()
wordap.Quit()
wordap = Nothing
在某些情况下,它根本不可复制,在到达
worddoc.close()
后,应用程序只是停止继续。没有错误信息,没有窗口告诉我“停止工作”,什么都没有。当我停下来检查应用程序卡住的地方时,它总是指向
worddoc.close
短语,无论我恢复并重新启动应用程序多少次(我总是在下一个操作之前等待5到15秒),如果程序光标没有移动。 当我有一个发布配置并且没有在任何时候用断点拦截时,这个问题从未出现过,特别是在将应用程序分发给最终用户时,它从未出现过

无论如何,我想知道是什么导致了这个问题,以及如何解决它,因为今天我收到一封邮件,告诉我它在最终版本中也会发生,至少对某些人来说是这样。

尝试使用Document类的方法,并指定传递的完整路径和文档名作为第一个参数(而不仅仅是名称)

我还建议在代码中释放所有底层COM对象。用于在使用完Outlook对象后释放该对象。然后在Visual Basic中将变量设置为Nothing(在C#中为null),以释放对对象的引用

顺便问一下,你在哪里运行代码?它是windows服务吗


您是否有正在运行的Word加载项?如果是这样,请尝试禁用所有选项。

在重新编译项目并向他发送新的exe文件后,它再次正常工作,但无论如何,应用程序应该有原因卡在此处可能不是您希望听到的建议,但如果您可以在不使用OfficeInterop的情况下解决问题,则会使您的项目更易于维护。我知道,但在这种情况下,这是不可能的(用户需要一些与Word相关的功能。没有太多帮助,但可能会有一些关于获取跟踪问题所需的额外信息的提示。因此,当您将这些信息包装在try-catch中时,不会出现任何异常情况?这是指向我使用的代码的链接,我从未遇到过任何问题,但它确实需要Word 2010哦,快跑。