在调用dll的时候,每一次调用dll,dll自己定义的全局变量是不是都要进行一次重新的初始化呢?也就是调用完一次dll之后,他的全局变量不会常驻?

解决方案 »

  1.   

    能不能举个例子:
    比如说我在dll中定义了一个record:
                             type TZZ=record
                                  a:array [1..3]of byte;
                             end;
    那我应该如何在调用完dll之后释放它呢?
      

  2.   

    而且这个释放是在dll中释放还是在调用dll的程序中释放呢?
      

  3.   

    DLL中有个可以进行初始化以有释放的吗?
      

  4.   

    你的问题,涉及到了内存共享的问题。
    一个程序调用dll,在98和2000下面不一样。
    你需要N个程序调用一个Dll,但是他们的变量是共享的。就需要使用到内存映射。
    CreateFileMapping 可以做到