Search code examples
c#dlldumpbin

Why dumpbin does not show functions of some DLLs?


Here is a project rawinput_latest.zip

Target framework: .Net 4

Output type: Class Library

Building Solution creates dll file.

Output of dumpbin /exports RawInput.dll

Microsoft (R) COFF/PE Dumper Version 14.00.23026.0
Copyright (C) Microsoft Corporation.  All rights reserved.


Dump of file C:\Users\Qet\Documents\Visual Studio 2015\Projects\rawinput latest\RawInput\bin\x86\Debug\RawInput.dll

File Type: DLL

  Summary

        2000 .reloc
        2000 .rsrc
        6000 .text

Why dumpbin does not show functions of RawInput.dll? Am I able to use the dll in another project?


Solution

  • The flag /EXPORTS is used to show exported functions in the PE. Regular C# methods won't be exported in the PE (and usually there is no need to). You still can reference the .NET assembly (dll) and use it from other .net projects.

    If you want to use the functions from unamanaged code, then you may need to export export it. In that case, read here. If you don't need to export the functionality to other native apps, you probably won't need it.