用vb自带的打包工具制作成安装程序之后,在98下安装可以,但是运行却提示:
Run-time error '1004'
Application-defined or object-defined error!
请问该如何解决?
小弟在程序中是用到Application定义和object定义
Set xlApp = CreateObject("Excel.Application")     '创建EXCEL应用类(vb中的一句,不知道是不是跟这条语句有关)
小弟在原程序中运行并没错啊!

解决方案 »

  1.   

    原因多种,自己查一下
    http://search.microsoft.com/search/search.aspx?View=msdn&st=a
      

  2.   

    这个问题我想是因为你安装这个程序的机器上没有EXCEL所造成的。
      

  3.   

    你用的是 excel 9.0 lib 还是 8.0lib
    如果你没打进去就要看安装的机器上有没有excel
    然后,就是版本兼容的问题。9.0(及office 2000)可以兼容 8.0(97)反之不行。
    也可能是原因之一。看看吧
      

  4.   

    安装的机器上有没有对应同版本的excel
      

  5.   

    你引用了EXCEL9。0没有,
    还有就是定义了没有。
    dim xlapp as excel.application
    .....
      

  6.   

    这是Office版本不同的原因,你必须在客户机上安装和开发环境一样版本的Office才可以正常使用。
      

  7.   

    打包时vb会打一个excel的类库进去的。只要客户机上装有excel,版本不同没有问题的啊。
      

  8.   

    code和打包的时候尽量引用低版本的OFFICE
    应该是版本问题~
    代码没问题的 再仔细检查一下
      

  9.   

    在打包后的SETUP.LST里找到[email protected],$(WinSysPath),$(DLLSELFRegister),$(Shared)  
    把DLLSELFRegister改为TLBRegister就ok 了。
      

  10.   

    我也是常调用excel,打包都能通过。在客户端运行时也没问题,不过我写出来的程序都不支持win98,在2000以上都可以运行。比如调用excel,没问题的,只要客户端正确装好office2000。如果客户端的office被破坏,也有可能出现这种情况吧!
      

  11.   

    也有可能是两个机器上安装的OFFICE版本不同,你开发的机器上版本高,使用的机器上版本低。
      

  12.   

    我晕,在98下也安装了office 2000的!
    在VB中引用了EXCEL Object 9.0了.
    还是不行
      

  13.   

    我曾经编过一个程序也是用到了写EXCEL的程序,我是应用模板的方法,先做好模板,在程序中复制模板,再向其中写入数据,然后保存的!!不过好象麻烦了点,但是实用,不会出现打包的问题,不过要在客户机上装上OFFICE!!
      

  14.   

    把你定义OFFICE和实现的语句贴出来,我也出现过这种问题,最后检查是语句的问题.
      

  15.   

    Dim Ws   As Workspace
    Dim Db   As Database
    Dim rs   As Recordset
    Set Ws = DBEngine.Workspaces(0)
    Set Db = Ws.OpenDatabase(App.Path + "\data\db1.mdb)
    Set rs = Db.OpenRecordset("select * from temp军内")
    Set Data1.Recordset = rsOLE1.DataField = "文本"
    OLE1.object.Application.Visible = True
    For Each win In OLE1.object.Application.Windows
       win.Visible = True
    Next本机上可以通过,安装后出现实时错误31004
    无对象!
      

  16.   

    本人认为
    你的 
    dim Exapp as excel.application
    在编译的时候,应该
    dim Exapp 'as excel.application
    注释掉后面,用晚期绑定
    呵呵