打不开WORD文件?

zt371 2002-09-02 04:00:07
现在正在写一个ActiveX.Dll 的组件,发现用EXE程序调试通过的组件在ASP里面总是出错,源程序如下:
ActiveX.Dll :
////////////////////////////////////////
Public Sub CreateDoc2()
Dim MyWord As New Word.Application

MyWord.Application.Documents.Open "C:\Inetpub\wwwroot\Word\template.doc", True, True '在这里报告错误,如果去掉这一句就可以了

MyWord.Quit
Set MyWord = Nothing
End Sub
///////////////////////////////////////
Asp文件:
////////////////////////////////////////
<%
Set MyWordDocGen = Server.CreateObject("WordDocGen.WordDocGenProcs")
MyWordDocGen.CreateDoc2
Set MyWordDocGen = Nothing
%>
////////////////////////////////////////
急等用,高分求解 谢谢了
...全文
24 点赞 收藏 8
写回复
8 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
xiachedan 2002-09-03
up
回复
gxingmin 2002-09-03
对了,上面的比较要注意大小写,最好加个ucase函数
回复
gxingmin 2002-09-03
可能该文件在进程里已经打开了,你可以判断一下

用下面的方法判断:
Dim objWordDocument As Word.Document
For Each objWordWindow In MyWord.Windows
if objworddocument.FullName ="C:\Inetpub\wwwroot\Word\template.doc" then
msgbox "已经打开了"
objwordDocument.visible=true
end if
next
回复
zt371 2002-09-02
谢谢SleepKyo,但我照你的也试了,还是不行.
问题不应该是在这上面,即使是在Asp中,对于本地硬盘上的文件也是要取得物理路径才能访问的.
回复
SleepKyo 2002-09-02
应该是这样"Http://localhost/Word/template.doc"

上面粘贴的时候没有注意
回复
SleepKyo 2002-09-02
。。。。在ASP上应该是基于网络的吧~~你使用"C:\"这个有很大的问题,你必须要使用打开网络文件的方式。如"Http://localhost/Word\template.doc"这样才可以,网络里面是不可能直接访问盘符的
回复
zt371 2002-09-02
我的C盘是Fat32分区,应该不是权限的问题
回复
llpei 2002-09-02
应该是权限的问题吧!
回复
发帖
VB基础类
创建于2007-09-28

7479

社区成员

VB 基础类
申请成为版主
帖子事件
创建了帖子
2002-09-02 04:00
社区公告
暂无公告