Obj文件可以通过类似{$L test.obj}这样的方式引入,并且使用里面的接口,1. Obj文件是如何生成的?就是用C make的OBJ吗?
2. 做delphi能使用的.Obj文件要哪些规范

解决方案 »

  1.   

    1. Obj文件是如何生成的?就是用C make的OBJ吗?
    C++ 編繹的, C的可不可以, 我倒沒試過2. 做delphi能使用的.Obj文件要哪些规范
    obj 有兩種格式, vc 編繹出來的, 還要轉換下, BCB 的直接就可用
      

  2.   

    Delphi use Obj files!
       How to convert Common Object File Format (COFF) or 32-bit Object Module Format (OMF). Microsoft's Visual C++ compiler creates COFF .obj files.1.由於Borland lib format 與Microsoft lib不盡相容,object file 內容的debug
    information 有OML與COFF的差別,所以必須自己造一個Borland能夠辨視的lib
    format.方法如下:
    c:\bc5\bin\implib dmapi30.lib c:\cwin95\system\dmapi30.dll
    產生Borland lib format之dmapi30.lib
    2.編譯範例檔
    c:\bc5\bin\bcc32 -Ic:\dbmaker\3.0\include -c ex1.c
    產生ex1.obj
    3.連結執行檔
    c:\bc5\bin\bcc32 -eex1 ex1.obj dmapi30.lib
    產生ex1.exe可正確執行
      

  3.   

    还有汇编编译过来的obj你也要转换一下格式才可以调用。
      

  4.   

    C++ make的OBJ
    其实《Delphi源代码分析》有这方面内容
      

  5.   

    这个取决于,用Borland的C++编译器,MS的不行~~~,用16位的TC当然就更不可以了,原因自己能想明白吧其实用起来通常是有难度的,根据该obj对一些标准库函数的使用情况,你在Delphi里必须全实现了,才能正常编译通过,否则编译时会提示找不到某某函数最好的方式还是通过动态链接库来实现