initialization Coinitialize(nil);finalization CoUninitialize;这两句话在DLL写在什么地方?

解决方案 »

  1.   

    form 的unit 结尾啊,跟平常一样
      

  2.   

    在DLL里和在Application里一样吗,比如如下DLL
    library MyDLL;uses
      SysUtils,
      Classes;{$R *.res}function MyFunction(theInPut:integer):integer;stdcall;
    begin
      MyFunction:=theInPut*2;
    end;exports
    MyFunction;begin
    end.我应该写在什么地方?
      

  3.   

    没有使用OLE就不必用了http://lysoft.7u7.net
      

  4.   

    用OLE了。我想知道往什么地方写。
      

  5.   

    library MyDLL;uses
      SysUtils,
      Classes;{$R *.res}function MyFunction(theInPut:integer):integer;stdcall;
    begin
      MyFunction:=theInPut*2;
    end;exports
    MyFunction;begin
    end.
    initialization
    ...
      

  6.   

    Coinitialize(nil);  和CoUninitialize是使用COM时候必不少的函数.
    如果你的DLL,是做成COM,则建议不写它,则调用它的程序模块负责调用Coinitialize
    如果你的DLL,需要调用COM,则常用..
    var 
      aintf:IXxxx;
    ....try
      Coinitialize(nil);
      aintf:=CoXxxx.Create;//连接
      aintf.xxxxxx; //调用
      aintf:=nil;  //释放finally
       CoUninitialize
    end;
    下面这样是容易常犯的错误写法:initialization 
      Coinitialize(nil);
    finalization 
      CoUninitialize;
      

  7.   

    谢谢楼上的。我也是一时出于好奇,就是想知道在DLL(Library)里的什么地方写这两句话,没有想到怎么写都编译不过,所以想知道到底在DLL(Library)能不能写。呵呵。
      

  8.   

    hsmserver(撒哈拉之雨的悲伤) 象你这么写,编译器说忽略.以后的东西。