【发布时间】:2019-07-01 07:37:24
【问题描述】:
我编写了以下代码:在文档中搜索一个单词,该单词在控制台应用程序中可以正常工作,但在我单击按钮时无法在 ASP.NET 应用程序中工作:
using Microsoft.Office.Interop.Word;
Application objWordApp = new Application();
objWordApp.Visible = false;
object missing = System.Reflection.Missing.Value;
Document objDoc;
objDoc = objWordApp.Documents.Open(fileURL, ref missing, ref missing, ref missing,
ref missing, ref missing, ref missing, ref missing,
ref missing, ref missing, ref missing, ref missing, ref missing, ref missing,
ref missing, ref missing);
object findText = "Tags";
objDoc.Content.Find.ClearFormatting();
try
{
if (objDoc.Content.Find.Execute(ref findText,
ref missing, ref missing, ref missing, ref missing, ref missing, ref missing,
ref missing, ref missing, ref missing, ref missing, ref missing, ref missing,
ref missing, ref missing))
{
Console.WriteLine("Text found: Name document - " + "'" + docTitle + "'");
}
objDoc.Close(ref missing, ref missing, ref missing);
objWordApp.Application.Quit(ref missing, ref missing, ref missing);
}
catch (Exception ex)
{
objDoc.Close(ref missing, ref missing, ref missing);
objWordApp.Application.Quit(ref missing, ref missing, ref missing);
throw ex;
}
}
catch (Exception ex)
{
test11.Text = ex.ToString();
}
System.UnauthorizedAccessException:检索 COM 类工厂 对于具有 CLSID {000209FF-0000-0000-C000-000000000046} 的组件失败 由于以下错误:80070005 访问被拒绝。 (例外 HRESULT: 0x80070005 (E_ACCESSDENIED))。
我在论坛上看了很多资料,都按照文章里写的做了,没有任何帮助,错误没有消除。
2.Retrieving the COM class factory for component with CLSID {000209FF-0000-0000-C000-000000000046}
【问题讨论】:
-
它在 IIS 上运行对吗?它是 asp.net aspx 应用程序或 MVC。您是否保存在您的文件位置?
-
@Saravanakumar Natarajan "asp.net aspx application" - 文件位置是 URL sp-test/sites/test/Shared%20Documents/Base.docx,但控制台应用程序正在运行。
-
使用的Microsoft.Office.Interop.Word dll是什么版本
-
版本 15.0.0.0
-
我正在尝试使用此代码 asp.net 应用程序。我没有收到此错误。
标签: c#