When using the (the MS specific) #import the compiler accepts it BUT the linker shows undefined symbols, for instance '__stdcall _com_issue_error(long)' etc.

Obsah: When using the (the MS specific) #import the compiler accepts it BUT the linker shows undefined symbols, for instance '__stdcall _com_issue_error(long)' etc.

  • Product Name:�BCB
  • Product Version: 2006
  • Product Component:�Linker
  • Platform/OS Version: Win32

The linker throws up the following errors when linking an application,�if the #import directive was used on an inproc server or a typelibrary.


[Linker Error] Error: Unresolved external '__stdcall _com_issue_error(long)' referenced from C:\BLAH.OBJ
[Linker Error] Error: Unresolved external '_com_dispatch_method(IDispatch *, long, unsigned short, unsigned short, void *, const wchar_t *, ...)' referenced from C:\BLAH.OBJ


These functions are not supported by BCB2006 they are MS specific RTL functions for imported COM objects.


To import a COM object in BCB2006 you need to do the following :
1) In the IDE Component|ImportComponent| choose ?Import Type Library?
2) Press Next>>
3) Press Add... and select the DLL.
The use #import functionality, should best be avoided.