我们的产品是一个exe带四个dll的一个工程组。
现在想在打开exe时建立与sql server的长连接(conn),然后dll中需要执行sql的时候直接使用exe中的conn。
请问在dll中怎么才能调用到exe中的conn。
谢谢。

解决方案 »

  1.   

    传递连接字符串连接字符串在使用前保存一份副本.即不要传递connection.connectionstring类似如下:
    '保存到全局字符串
    g_CnnString = "****"
    'exe的连接字符串
    e_CnnString = "****"调用dll时,传递g_CnnString过去
      

  2.   

    我要使用长连接,exe打开后不关闭,一直连着。
    dll使用时就不再打开数据库连接了,而是直接使用此链接。
      

  3.   

    连接对象可以做为参数传递,dll中有接口就行...
    不过你这样的设计....
      

  4.   

    直接传递对象即可.你的DLL都是ActiveX DLL吧?
      

  5.   

    唉,90年代的老程序了。现在的问题是,主程序.exe中没有直接调用需要使用connection的dll中的函数,而是通过其他activeX Dll调用的。
    这个连接能不能先保存在内存里,然后dll通过句柄的方式抓到啊?
      

  6.   

    可以试着直接将CONNECT对象作为全局对象,并改一下相关DLL的接口,传入这个对象即可.