Intel® C++ Compiler
Community support and assistance for creating C++ code that runs on platforms based on Intel® processors.
7833 Discussions

Creating DLL with .DEF file still exports aliased functions

Robert_M__Münch
Beginner
318 Views

Hi, I have a DLL project that compiles fine. The only problem is, that I use a .DEF file to alias exported functions and that those aliased functions are still there.

Using: Intel(R) Compiler 16.0 Update 3 (package 207)

.DEF file:

LIBRARY MYDLL
EXPORTS
aa=GetHDSerialNumber
ab=GetHDModelNumber
ac=GetHDRevision
...

This here is correct, debug build:

Export Table:
  Name:                          mydll.dll
  Time Date Stamp:        0x57BB362C (22.08.16 19:28:12)
  Version:                       0.00
  Ordinal Base:                  1
  Number of Functions:           41
  Number of Names:               41

  Ordinal   Entry Point   Name
        1   0x000CD82E    a
        2   0x000036EC    aa
        3   0x00003779    ab
        4   0x00003806    ac
        5   0x000029D0    ad
        6   0x000CB3FF    b
        7   0x0005207F    bl

The same file with release build:

Export Table:
  Name:                          mydll.dll
  Time Date Stamp:        0x57C1AE4A (27.08.16 17:14:18)
  Version:                       0.00
  Ordinal Base:                  1
  Number of Functions:           85
  Number of Names:               85

  Ordinal   Entry Point   Name
        1   0x00005900    _GetAdapterId@4
        2   0x00005870    _GetAdapterInfos@0
        3   0x00005A50    _GetAdapterMACAddress@4
        4   0x000059A0    _GetAdapterName@4

        .... many entries deleted ....

        8   0x0006F390    a
        9   0x000054C0    aa
       10   0x000057F0    ab
       11   0x00005830    ac
       12   0x00005300    ad
       ....

Somehow the aliased names still get exported. Any idea how to get rid of the non-aliased functions?

0 Kudos
0 Replies
Reply