Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > C++ > Using a MS Visual C++ DLL in Borland C++ Builder

Reply
Thread Tools

Using a MS Visual C++ DLL in Borland C++ Builder

 
 
Terry
Guest
Posts: n/a
 
      05-31-2006
Is there any hope of using Borland Developer Studio 2006 to link in a
DLL compiled by MS Visual C++ version 6? I have a Win32 DLL from a
company named Vocera. The DLL defines C++ classes that I want to
instantiate and use. It is not COM-compliant. It came with .dll,
..lib, and .h files.

I tried using Borland C++Builder 2006, but when I add the .lib file to
my project, I get the error: "[Linker Error] Error: 'C:\VMI.LIB'
contains invalid OMF record, type 0x21 (possibly COFF)".

So then I tried using the command line utilities that came with BDS.
coff2omf (v1.0.0.74 dated 11/14/05) did generate a new .lib file but I
still get errors like "[Linker Error] Error: Unresolved external
'VMI::GetVersion()' ". coff2omf displayed the following "Internal
names" but no corresponding "Imported names":

??0VMI@@QAE@XZ
??4VMI@@QAEAAV0@ABV0@@Z
?GetVersion@VMI@@QAEPADXZ

So then I tried Implib (v3.0.22) to generate a new .lib file but still
got errors like "[Linker Error] Error: Unresolved external".

So then I tried Impdef (v3.0.22) to generate a .def file to use with
implib to create a .lib file but then got the implib error:

Name: 'vmi' Ext: '.dll' Base: 0x00000000
Name: 'VMI.DLL' Ext: '.dll' Base: 0x00000000
Error vmi.def(4): Invalid character in .DEF file

The .def file contains lines like the following, and I think implib
doesn't like the '?' characters:
_??0VMI@@QAE@XZ = ??0VMI@@QAE@XZ
; ??0VMI@@QAE@XZ

Finally, I tried ilink32 with the -Gi option to generate a .lib file
but got "Error: Error processing module C:\VMI.DLL".

I think Delphi requires a COM object to access this C++ class.

Do I need to use a Microsoft compiler/linker?

Thanks for your help!
Terry

 
Reply With Quote
 
 
 
 
mlimber
Guest
Posts: n/a
 
      05-31-2006
Terry wrote:
> Is there any hope of using Borland Developer Studio 2006 to link in a
> DLL compiled by MS Visual C++ version 6? I have a Win32 DLL from a
> company named Vocera. The DLL defines C++ classes that I want to
> instantiate and use. It is not COM-compliant. It came with .dll,
> .lib, and .h files.
>
> I tried using Borland C++Builder 2006, but when I add the .lib file to
> my project, I get the error: "[Linker Error] Error: 'C:\VMI.LIB'
> contains invalid OMF record, type 0x21 (possibly COFF)".
>
> So then I tried using the command line utilities that came with BDS.
> coff2omf (v1.0.0.74 dated 11/14/05) did generate a new .lib file but I
> still get errors like "[Linker Error] Error: Unresolved external
> 'VMI::GetVersion()' ". coff2omf displayed the following "Internal
> names" but no corresponding "Imported names":
>
> ??0VMI@@QAE@XZ
> ??4VMI@@QAEAAV0@ABV0@@Z
> ?GetVersion@VMI@@QAEPADXZ
>
> So then I tried Implib (v3.0.22) to generate a new .lib file but still
> got errors like "[Linker Error] Error: Unresolved external".
>
> So then I tried Impdef (v3.0.22) to generate a .def file to use with
> implib to create a .lib file but then got the implib error:
>
> Name: 'vmi' Ext: '.dll' Base: 0x00000000
> Name: 'VMI.DLL' Ext: '.dll' Base: 0x00000000
> Error vmi.def(4): Invalid character in .DEF file
>
> The .def file contains lines like the following, and I think implib
> doesn't like the '?' characters:
> _??0VMI@@QAE@XZ = ??0VMI@@QAE@XZ
> ; ??0VMI@@QAE@XZ
>
> Finally, I tried ilink32 with the -Gi option to generate a .lib file
> but got "Error: Error processing module C:\VMI.DLL".
>
> I think Delphi requires a COM object to access this C++ class.
>
> Do I need to use a Microsoft compiler/linker?
>
> Thanks for your help!
> Terry


This question is not concerned with the C++ language proper but two
particular implementations thereof. See this FAQ for what is on-topic
here and for a list of possible places to post:

http://www.parashift.com/c++-faq-lit...t.html#faq-5.9

Cheers! --M

 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
QUERY: Borland C++ 4.5 vs Borland Turbo C++ 1.01 dhruba.bandopadhyay@hotmail.com C++ 1 10-02-2006 10:57 AM
Using Borland C++ Builder under Windows AND Unix? Ramon F Herrera C++ 4 02-05-2005 02:00 PM
Borland Builder C++ v.6 or Microsoft Visual C++ ? Mark - KF8RV C++ 5 01-18-2005 11:18 AM
To Borland Builder or to Visual Studio Ziggi C++ 17 06-23-2004 06:09 PM
msvcrt.dll, msvcirt.dll, msvcrt20.dll and msvcrt40.dll, explanation please! Snoopy NZ Computing 16 08-25-2003 12:34 PM



Advertisments