繁体   English   中英

在IIS7上的经典ASP中创建Word对象时出错

[英]Error creating Word object in classic ASP on IIS7

在将Intranet从Windows 2000 / IIS 4框转换为Windows 2008 / IIS 7框的过程中。 现在就进行一次直接转换,着眼于将来在C#.NET中重新开发一些应用程序。

新服务器已安装Word 2010,旧服务器已安装Word 2003。

经典ASP应用程序遇到问题。 试图基于模板文档创建和修改Word文档。

收到以下错误:

Microsoft VBScript runtime error '800a01a8' 

Object required: 'Documents.Open(...)'

它试图运行的代码如下:

Dim wrdObj
Set wrdObj = Server.CreateObject("Word.application")
Dim wrdDoc
Set wrdDoc = Server.CreateObject("Word.Document")
Set wrdDoc = wrdObj.Documents.Open(docRoot & docName)
' Do word assignments
With wrdDoc
    .Variables("Today").Value = rs.Fields.Item("TODAY").Value & " "
    .Variables("Requester").Value = Request.QueryString("strUser") & " "
    .Variables("Ship_Comp").Value = rs.Fields.Item("TXT_VENDOR_NAME").Value & " "
    .Variables("Ship_Addr").Value = rs.Fields.Item("ADDR").Value & " "
    .Variables("Ship_City").Value = rs.Fields.Item("CITY").Value & " " & rs.Fields.Item("STATE_ZIP").Value
    .Variables("Ship_Country").Value = rs.Fields.Item("COUNTRY").Value & " "
    .Fields.Update
    .Save
End With
'wrdDoc.Section
wrdDoc.Close
Set wrdDoc = Nothing
wrdObj.Quit
Set wrdObj = Nothing

它在以下行中失败:

Set wrdDoc = wrdObj.Documents.Open(docRoot & docName)

我在那里进行了大量搜索,但是由于某些奇怪的原因,似乎没有多少人在经典ASP中使用Word 2010自动化... :)

我在Windows Server 2008的64位版本上遇到了类似问题,并尝试进行一些Excel自动化。 显然,64位版本存在一些Office自动化问题。 我不确定它们是否扩展到所有Office Automation,或者仅仅是Excel,但这是我用来解决问题的链接。

http://social.msdn.microsoft.com/Forums/en-US/innovateonoffice/thread/b81a3c4e-62db-488b-af06-44421818ef91?prof=required

我创建了第二篇文章中提到的文件夹,它的工作原理很吸引人。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM