我的active dll工程中有一句 set rs=conn.execute(sql)语句,在源代码编译执行是正常的,可是打包安装后就不能正确执行,每次都提示说运行错误91,未设置对象变量或with block变量,请问是怎么回事,dll文件我已经注册了。

解决方案 »

  1.   

    dim rs as new adodb.recordset
      

  2.   


    dim rs as new adodb.recordset
    set rs=conn.execute(sql)
      

  3.   

    我在程序中是这样写的,编译的时候没问题,打包安装后就是不行,我把sql语句放到查询分析器中去运行也无误,不知道是什么原因呢
      

  4.   

    我做了测试,完全没有问题;打包安装后有问题不是在你的机器上吧?如果是在别的机器上,要安装MDAC_TYP的
      

  5.   

    在我的机器上和安装到别人的机器上问题都是一样的,我今天用把set rs=conn.execute(sql)换成了rs.open sql ,conn,1,1出现的错误是连接无法用于此操作,在此上下文中他可能已被关闭或无效。
      

  6.   

    "连接无法用于此操作,在此上下文中他可能已被关闭或无效"
    -------------->
    数据库连接没连上库!
    在你打开conn的下面添加一句:
    debug.print conn.state'1--连通  0--未连通
      

  7.   

    问题解决了,我在set rs=conn.execute(sql)前面又加了一遍连接数据库的语句,但我还是不明白。为什么编译运行完全通过,但是打包安装就不行了呢,而且我的数据库在登陆窗体运行的时候就是连着的,不过还是要感谢理上网来的一直关注,谢谢,接分吧。