在服务器上有一个带有宏的Word模板,用VB编写了一个Com,去执行它的宏,然后用ASP调用Com,结果打开文档时出错了,为什么呢?谢谢!
下面Com的代码:
 public sub OptWord()
     Dim oWord As Object
     Dim oDoc As Object
    
     Set oWord = CreateObject("Word.Application")    '这句已经执行,对象已经创建了,在内存中了
     Set oDoc = oWord.Documents.Open("E:\Test.doc")  '这句出错了
     oWord.Visible = True
     oWord.run "aa"
下面是ASP代码:
    dim Obj
    set obj = createobj("OptWord.OpenWord")
    obj.OptWord
    set obj=nothing

解决方案 »

  1.   

    Dim oWord as Object
    Dim oDoc As Object
    Set oWord = CreateObject("Word.Application")把上面的换成试试Dim oWord as new Word.Application
    Dim oDoc As Word.Document
      

  2.   

    用EXE进行工程组单步调试看看
      

  3.   

    EXE调试没有问题的,我现在是怀疑Com里面能不能这样做,理论上是可以的。奇怪的是,实际上这个文件已经打开了,因为看到了Word文件的复件(就是我们用Word打开一个文档时在当前路径有一个拷贝)但是就是出错了。
      

  4.   

    由于这一句出错了,Set oDoc = oWord.Documents.Open("E:\Test.doc") ,oWord.run "aa"也无法执行。