在退出DLL时,是不是把TALBE已关闭了,最好是使用一个函数来打开表,然后再调用一个函数来关闭表,而不是在DLL中自动打开和关闭表。

解决方案 »

  1.   

    我是用函数的,我能确认再次调用时,table已经打开,只能不能在dbgrid中显示出来而已,我不明其中原因
      

  2.   

    Delphi使用dll时,最好不要在dll中连接数据库以及打开表,因为应用程序不能直接共享dll中的数据(当然可以通过地址传递)。应该使用bpl,应用程序能直接共享dll中的数据。
      

  3.   

    to nononono:
      能不能再详细一些呢,我有些不懂,我所做的dll是要它实现一个功能,以便其它程序调用,我在MB中调用的,另外bpl?何物?我完成了几个这样的,有些可以实现,有些却不可,其原因总是找不出,在写的过程中,我觉得好象没有什么区别
      

  4.   

    小弟的问题已经解决,谢谢大家,其原因是
    在dll的调用函数中,调用完之后没将datamodal.free,而产生了错误