请问怎么在ASP中调用WORD和EXCEL?

wang0821 2000-09-11 11:04:00
请问怎么在ASP中调用WORD和EXCEL?并且能将数据做保存,最好
有源码,小弟只有那么多分了~~`
...全文
231 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
fractal 2000-09-12
  • 打赏
  • 举报
回复
这是因为ASP访问ActiveX组件时需要有足够的运行权限,有以下三种方法解决:

1. 在IIS中禁止对使用Excel程序的Web目录匿名访问,使用“基本验证”或“集成Windows验证”
2. 把系统安装在非NTFS卷上(系统安全性差)
3. 设置Excel组件所用到的所有模块(例如:EXCEL.EXE MSO9.DLL KERNEL32.DLL等)对“所有用户”有权运行 (理论上可行,但我想没人会这样做)

综合上述,基本上只有第一种方法是可行和安全的。

另外,在ASP中使用大的组件一般要遵循以下原则:

1. 该网站的访问量不是很高(例如局域网),运行大的组件对资源的使用也是巨大的。
2. ASP中必须保证不会弹出对话框(实际隐含不可见的),否则对ASP简直是致命的。例如下面程序中的.Close False是必须的,而上面程序中不能用objXL.Visible = TRUE。
3. 不要直接在ASP中调试,可以先在VB中调试该模块,再搬到ASP中,用VB调试至少要达到以下要求:
1) 程序不出错,例如在使用Worksheets对象的方法时出错。
2) 没有任何对话框弹出
3) 用到的资源要全部释放

程序例,以下程序我在Windows 2000 + Office 2000 上调试通过
(注意下面程序中的每一行都是必须的,不能少)

Set objXL = Server.CreateObject("Excel.Application")
' objXL.Visible = TRUE '在VB中调试时用
Set objXLBook = objXL.WorkBooks.Add

With objXLBook
.Worksheets(1).Range("A1").Value = "test"
Response.Write .Worksheets(1).Range("A1").Value
.Close False
End With

objXL.Quit

Set objXLBook = Nothing
Set objXL = Nothing


wang0821 2000-09-12
  • 打赏
  • 举报
回复
我当然装了office的,但是还是那一行有问题,说是该对象的访问被拒绝,
是不是需要第三方组件?
fractal 2000-09-12
  • 打赏
  • 举报
回复
另外,最好不要使用WScript.CreateObject,而使用Server.CreateObject
用完记着Set obj... = nothing
fractal 2000-09-12
  • 打赏
  • 举报
回复
你没装Office?
wang0821 2000-09-12
  • 打赏
  • 举报
回复
谢谢xiali:
Set objXL = WScript.CreateObject("Excel.Application")
这一行要报错,是不是需要注册Excel这个组件,哪里有这个组件
下载?
xiali 2000-09-11
  • 打赏
  • 举报
回复
不知以下示例对你是否有参考?
' Excel 示例

Dim objXL
Dim objXLNewBook
Set objXL = WScript.CreateObject("Excel.Application")
objXL.Visible = TRUE
Set objXLNewBook = objXL.WorkBooks.Add
objXL.Columns(1).ColumnWidth = 20
objXL.Columns(2).ColumnWidth = 20
objXL.Columns(3).ColumnWidth = 20
objXL.Cells(1, 1).Value = "Name"
objXL.Cells(1, 2).Value = "Email"
objXL.Cells(1, 3).Value = "Http"
objXL.Range("A1:C1").Select
objXL.Selection.Font.Bold = True
objXL.Selection.Interior.ColorIndex = 14
objXL.Selection.Interior.Pattern = 1 'xlSolid
objXL.Selection.Font.ColorIndex = 2

Dim intIndex
intIndex = 2
Sub Write(strName, strValue, strDesc)
objXL.Cells(intIndex, 1).Value = strName
objXL.Cells(intIndex, 2).Value = strValue
objXL.Cells(intIndex, 3).Value = strDesc
intIndex = intIndex + 1
objXL.Cells(intIndex, 1).Select
End Sub
' 写入信息
Call Write("xiali", "xiali6800@sina.com", "http://xiali00.top263.net")

dim fName
fName = objXL.GetSaveAsFilename
If fName <> False then objXLNewBook.SaveAs
'***************
' Word 示例

Dim objWD
Dim objWDDoc
Set objWD = WScript.CreateObject("Word.Application")
objWD.Visible = TRUE
Set objWDDoc = objWD.Documents.Add
objWDDoc.Save
作为ASP.NET项目的开发者,在应对用户的WordExcel文档时,您是否迫切希望Visual Studio工具箱里能有现成的WordExcel标准ASP.NET控件可用就太好了?现在梦想已经成真,想在网页上显示编辑WordExcel文档并且调用微软Office的强大功能,就直接从工具箱拖动一个PageOffice控件到Web页面上就可以了,就和使用常用的TextBox控件一样简单方便。 PageOffice是什么? PageOffice for ASP.NET是一款非常优秀的专业的集成微软OFFICE功能的ASP.NET控件平台,能够帮助Web开发人员轻松实现在网页嵌入运行微软Office的特殊功能。PageOffice把微软复杂的Office编程接口(COM API) 有效地整合于 ASP.NET 环境,通过简化的.NET类库接口为开发者提供了在Web项目里获得Office众多强大功能的机会,并且能够同时利用来自 .NET Framework 的开发效率和软件功能。 集成PageOffice不但能够实现在线编辑、保存真正的Office文档,而且还可以轻松实现WordExcel文档的动态数据填充、格式控制和用户输入提交的高级复杂功能。只要集成PageOffice,您将能够轻松应对在Web项目开发遇见的绝大部分和Office文档有关的功能和难题。您只需把精力集在项目业务逻辑上,Office技术问题就交给PageOffice实现解决吧。 PageOffice除了提供Word/Excel动态数据填充,格式控制,Word/Excel用户输入提交,Word/Excel/PowerPoint/WPS等Office文档的在线打开、只读浏览、编辑、保存等功能外,还给在线协同办公提供了强大的支持功能:可编辑区域控制,强制痕迹保留,并发编辑控制,手写批注,手写签名,圈阅签字,电子印章、动态模板套红等。 专业的MSDN风格的开发帮助,上百的示例代码,确保您的开发效率事半功倍。
作为ASP.NET项目的开发者,在应对用户的WordExcel文档时,您是否迫切希望Visual Studio工具箱里能有现成的WordExcel标准ASP.NET控件可用就太好了?现在梦想已经成真,想在网页上显示编辑WordExcel文档并且调用微软Office的强大功能,就直接从工具箱拖动一个PageOffice控件到Web页面上就可以了,就和使用常用的TextBox控件一样简单方便。 PageOffice是什么? PageOffice for ASP.NET是一款非常优秀的专业的集成微软OFFICE功能的ASP.NET控件平台,能够帮助Web开发人员轻松实现在网页嵌入运行微软Office的特殊功能。PageOffice把微软复杂的Office编程接口(COM API) 有效地整合于 ASP.NET 环境,通过简化的.NET类库接口为开发者提供了在Web项目里获得Office众多强大功能的机会,并且能够同时利用来自 .NET Framework 的开发效率和软件功能。 集成PageOffice不但能够实现在线编辑、保存真正的Office文档,而且还可以轻松实现WordExcel文档的动态数据填充、格式控制和用户输入提交的高级复杂功能。只要集成PageOffice,您将能够轻松应对在Web项目开发遇见的绝大部分和Office文档有关的功能和难题。您只需把精力集在项目业务逻辑上,Office技术问题就交给PageOffice实现解决吧。 PageOffice除了提供Word/Excel动态数据填充,格式控制,Word/Excel用户输入提交,Word/Excel/PowerPoint/WPS等Office文档的在线打开、只读浏览、编辑、保存等功能外,还给在线协同办公提供了强大的支持功能:可编辑区域控制,强制痕迹保留,并发编辑控制,手写批注,手写签名,圈阅签字,电子印章、动态模板套红等。 专业的MSDN风格的开发帮助,上百的示例代码,确保您的开发效率事半功倍。 运行环境 服务器端:Windows2003、Windows2008、Windows2012及Windows XP、Windows7、Windows8等(包括64位版本);.Netframework2.0及以上版本。 客户端:Windows XP、Windows Vista、Windows7、Windows8及以上版本(包括64位版本);Microsoft Office2003、2007、2010、2013;IE 6.0、7.0、8.0、9.0、10.0。 名称:PageOffice for ASP.NET专业版 2.0 下载:http://www.zhuozhengsoft.com/down/PageOffice_ASP.NET.rar 大小:13.8MB 版本:专业版 2.0

28,390

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧